| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1467 人关注过本帖, 1 人收藏
标题:作为对“vfp9报表保存为高分辨率图片”的测试,麻烦看看出现的问题
只看楼主 加入收藏
radiofan
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:11
帖 子:466
专家分:696
注 册:2006-7-30
结帖率:76.47%
收藏(1)
已结贴  问题点数:20 回复次数:2 
作为对“vfp9报表保存为高分辨率图片”的测试,麻烦看看出现的问题
鉴于我对GDI+的理解非常有限,也只是初次接触,请大神多多指点!

Set Path To Home() + "FFC"
Set Classlib To Home() + "ffc\_GDIplus"

Do pros\Endprint.prg

oReportListener=Createobject("reportlistener")
oReportListener.ListenerType=3
jpgfilename="myreport.png"
Report Form reports\report_cght.frx Object oReportListener


_Graphics= Newobject("gpGraphics", "_gdiplus.vcx")

_Bitmap = Newobject("gpBitmap", "_gdiplus.vcx")                && 建立繪圖板對象,圖形將在此畫板上繪製

With _Bitmap
    .Create(1280,1280)                           && 設定畫板大小,寬度和高度
    .SetResolution(1200,1200)                                    && 設定分辨率(x,y 的 DPI 値)
Endwith

_Color = Newobject("gpColor", "_GDIplus.vcx")                && 建立顔色對象
_Pen = Newobject("gpPen", "_GDIplus.vcx")                    && 建立畫筆對象
_Font = Newobject("gpFont", "_GDIplus.vcx")                    && 建立字體對象
_StringFormat = Newobject("gpStringFormat", "_GDIplus.vcx")
_TextBrush = Newobject("gpSolidBrush", "_GDIplus.vcx")
_Point = Newobject("gpPoint", "_GDIplus.vcx")          && 建立圖形對象

With _Graphics
    .CreateFromImage(_Bitmap)
*.CreateFromGraphics(hdc)                                && 指定圖形對象的設備,此處指向已建立的_Bitmap對象
    _Color.Set(255,255,255)                                    && 設定顔色,三個參數分別是紅、緑、藍値,即RGB各自獨立
    .Clear(_Color)                                            && 用設定的顔色填充整個圖形,可用於背景顔色
    _Color.Set(0,0,0)                                        && 改變顔色
    _Pen.Create(_Color, 10)                                    && 將指定的顔色賦予畫筆,請查看類庫中gpPen對象Create方法的參數,此處10是筆寬
    .DrawLine(_Pen, 20, 20, 108, 20)                        && 用設定的畫筆畫圖,類庫中有很豐富強大的畫圖函數
    .DrawLine(_Pen, 20, 50, 108, 50)
    _Color.Set(0,255,0)
    _Font.Create("方正综艺_GBK", 10, 0, 3)                            && 設置文本字體
    _TextBrush.Create(_Color)                                && 設定文本顔色
    _Point.Create(1, 80)                                    && 設定文本左上角位置
    .DrawStringW(Strconv("測試图像", 5), _Font, _Point, _StringFormat, _TextBrush)
Endwith

hdc = _Graphics.GetHdc()

oReportListener.OutputPage(3,hdc,1)

_Bitmap.SaveToFile("Test.bmp", "image/bmp","quality=100")                    && 將繪圖板保存爲文件,此處指定文件格式爲.BMP
*_Graphics.ReleaseHdc(hdc)
Release All
Return

运行出现错误提示,见图
图片附件: 游客没有浏览图片的权限,请 登录注册



搜索更多相关主题的帖子: 分辨率 出现 Set Create BMP 
2019-08-02 10:48
gs2536785678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:45
帖 子:601
专家分:1770
注 册:2017-7-16
收藏
得分:14 
朋友你想法独特了,现在我等都是做好了报表以后,直接打印成PDF文档分发给需要的朋友
不是保存为图片了。
2019-08-02 13:55
radiofan
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:11
帖 子:466
专家分:696
注 册:2006-7-30
收藏
得分:0 
以下是引用gs2536785678在2019-8-2 13:55:34的发言:

朋友你想法独特了,现在我等都是做好了报表以后,直接打印成PDF文档分发给需要的朋友
不是保存为图片了。


我原来也是一直调用word或者excel,然后打印图片发送,非常好用,但是,最近用户环境变得不受我控制,这样应用起来就比较麻烦,所以,尝试用vfp报表……

谢谢回复!
2019-08-02 15:01
快速回复:作为对“vfp9报表保存为高分辨率图片”的测试,麻烦看看出现的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017717 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved