VFP报表图片打印问题,很奇怪

msd88 2011-05-20 10:13:56


上图是我用VFP做的一个收据,右上角“已冲正”标记是图片,用OLE控件绑定通用字段,在预览中看到一切正常,图片也有显示,但是实际打印时“已冲正”图片却没有打印到纸上,这是什么问题???
...全文
308 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
msd88 2011-05-23
  • 打赏
  • 举报
回复
问题解决,增加一条SET REPORTBEHAVIOR 90后可以了。下面是在微软网站上找到的。

新增的SET REPORTBEHAVIOR命令可以用于打开或关闭Object-Assisted Output,新的输出绘制引擎和预览界面与旧类型的输出有相当大的差异,对齐、字母紧排和间距在GDI和GDI+之间是不同的,这会在很大程度上改变现存报表的查看结果。因此,REPORTBEHAVIOR默认设置值为80,即关闭Object-Assisted Output输出,报表处理按照VFP 9.0之前的方式进行。
如果你要全局性的打开Object-Assisted Output,可以在Options对话框中改变这个设置值(如图4所示),或者执行下面的命令:
SET REPORTBEHAVIOR 90


图4 使用Options对话框中的Run-time behavior(运行时行为)选项改变SET REPORTBEHAVIOR设置
十豆三 2011-05-23
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 msd88 的回复:]
谢谢十豆三,没想到你对我提出的问题能如此认真。
我整个程序就用了这么一个表,而且这个表就一个字段一条记录,存的这个图片也很小。

请勿怪我的固执,你的方法的确是没有问题,我也会按照你说的方法去做。但我还是很想弄明白为什么在预览中已经显示出来了,而打印到纸上却没有了。
[/Quote]

你用的 VFP 版本是 9.0 吗?
如果是9.0,在打印前加一句:
SET REPORTBEHAVIOR 90
试试

注:将报表显示图片控件拉的足够大(宽度和高度)
msd88 2011-05-22
  • 打赏
  • 举报
回复
谢谢十豆三,没想到你对我提出的问题能如此认真。
我整个程序就用了这么一个表,而且这个表就一个字段一条记录,存的这个图片也很小。

请勿怪我的固执,你的方法的确是没有问题,我也会按照你说的方法去做。但我还是很想弄明白为什么在预览中已经显示出来了,而打印到纸上却没有了。
十豆三 2011-05-21
  • 打赏
  • 举报
回复
或者干脆图片路径就用当前程序所在目录下的某个文件名,如:
当前程序路径\A.BMP

然后每次打印前不管这个图片文件在不在,你都将备注文件中的图片还原成文件,还原方法参考我的Blog。

不让你用通用字段的因为通用字段没有可靠的方法把通用字段中的图片还原
十豆三 2011-05-21
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 msd88 的回复:]
因为我程序中仅使用这一个小图片,使用GEN字段可以不用管程序目录中是否一定有这个图片文件,所以我选用的GEN字段
[/Quote]

就用这一个图片,你可以把这个图片做存到备注字段中,每次打印时就备注字段还原成文件,这就可以用我8楼给你的例子了。
awie_peng 2011-05-21
  • 打赏
  • 举报
回复
你只用到一个图片,而你却在表中专门增加一个字段来存储,这岂不是增加了表的大小?
msd88 2011-05-21
  • 打赏
  • 举报
回复
因为我程序中仅使用这一个小图片,使用GEN字段可以不用管程序目录中是否一定有这个图片文件,所以我选用的GEN字段
十豆三 2011-05-21
  • 打赏
  • 举报
回复
不要用 GEN字段了。
msd88 2011-05-21
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 apple_8180 的回复:]
请参考此帖:
http://topic.csdn.net/u/20090211/20/089be05a-5351-4047-8ddf-a9b4a39222c7.html
[/Quote]

就是我用的这个控件,这篇文章里写的方法我知道。我现在就是想用GEN字段存图片的方式把图打印出来,应该怎么做才能解决我上面提到的问题,我这个问题的出现又是什么原因造成的?
wwwwb 2011-05-20
  • 打赏
  • 举报
回复
报表中没有Picture控件吧
呵呵,有,仔细找找
msd88 2011-05-20
  • 打赏
  • 举报
回复
报表中没有Picture控件吧,就是个OLE的控件,我的图片是BMP格式,存在GEN字段中的。上面图片就是截取的预览界面,其中“已冲正”就是要打印的图片。报表预览可以显示,但是打到纸上却没有“已冲正”,其它的正常。
FlyDayDream 2011-05-20
  • 打赏
  • 举报
回复
没有用过gen ,我用同楼上的.只不过加的是一个地址
wwwwb 2011-05-20
  • 打赏
  • 举报
回复
图片最好存为BMP、JPG文件,用PICTURE显示
图片打印到什么 地方?
msd88 2011-05-20
  • 打赏
  • 举报
回复
我用的就是这个控件
msd88 2011-05-20
  • 打赏
  • 举报
回复


wwwwb你说的Picture控件是不是指的上图中的那个画红圈的?

2,726

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧