注册 登录
编程论坛 VFP论坛

vfp如何通过报表输出JPG图像文件 导出的图片丢失部分数据(右边和下边),哪位大侠可以帮助一下

山中石 发布于 2021-08-24 11:07, 3091 次点击
DYNAMICLINEHEIGHT = .T.
lcReport="c:\tmp\TEST.frx" &&SYS(5)+CURDIR()+"xxx.frx"
XLSNAME ="c:\tmp\x12311.JPG"
oListener = CREATEOBJECT('ReportListener')
olistener.ListenerType = 3
oListener.OutputType = 1

**oListener.PageWidth=1024
**oListener = CREATEOBJECT('ReportListener')
**olistener.ListenerType = 3
olistener.DynamicLineHeight =.T. && .F.

#DEFINE A4_Height 29.7
#DEFINE A4_Width 21
*olistener.Height=29.7   
*&&Icase(Empty(nHeight), A4_Height, nHeight)
*olistener.Width=21 &&Icase(Empty(nWidth), A4_Width, nWidth)

*oListener.height=800

*REPORT FORM (lcReport)
 *Do Form VPFORM Name MyReportForm &&调用表单
*  Report FORM (lcReport) Preview Windows   rpform &&调用form1的name属性
*RETURN
REPORT FORM (lcReport) OBJECT oListener &&NOWAIT
WITH olistener
 ?.OutputPageCount
&&  .PageWidth=1000
*  .sharedPageHeight=1000 && INT(.nPageHeight * VAL(.cboPer.Value) /100)        
*  .sharedPageWidth =1000 && INT(.nPageWidth * VAL(.cboPer.Value) /100)        
  *oListener.OutputPage(.nCurrentPage, .shpPreview, 2)
**? .GetPageHeight() / 10   &&获得页面的像素高度(每英寸96DPI)        
** ? .GetPageWidth() / 10    &&获得页面的像素宽度        .shpPreview.Height = INT(.nPageHeight)        &&设置形状的高度        .shpPreview.Width = INT(.nPageWidth)         &&设置形状的宽度
ENDWITH
olistener.outputpage(1,xlsname,102)
olistener.quietmode = .T.
12 回复
#2
吹水佬2021-08-24 12:19
#3
山中石2021-08-24 17:02
回复 2楼 吹水佬
谢谢您,我也按他的方式 ,但图片就是出部分的
只有本站会员才能查看附件,请 登录
#4
吹水佬2021-08-24 17:10
是不是报表页面没设置好,超出可打印页面限制。
#5
山中石2021-08-26 15:03
回复 4楼 吹水佬
不是  我用A3 打印也只能显示部分
#6
山中石2021-08-26 15:05
回复 4楼 吹水佬
模拟显示是可以全部的 ,直接打印也没问题
就是转换导出图形文件的时候就出问题
#7
吹水佬2021-08-27 20:26
给点数据和报表文件测试
#8
山中石2021-08-30 20:59
回复 7楼 吹水佬
我用附件的数据进行测试,如果可能你测试一下,谢谢您!!
只有本站会员才能查看附件,请 登录
#9
吹水佬2021-08-30 21:52
回复 8楼 山中石
标头和注脚拉开小小看
图片是是完整的
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录

#10
laowan0012021-09-03 09:21
图形控件的属性调整试下:
如果源和帧大小不同:(下面三个选项,建议第三个)
剪切内容
度量内容,保留形状
度量内容,填充帧


[此贴子已经被作者于2021-9-3 09:23编辑过]

#11
山中石2021-09-04 20:08
回复 10楼 laowan001
可以给例子说明一下吗?谢谢
#12
山中石2021-09-04 21:46
回复 9楼 吹水佬
你真厉害,你运行就额可以完成吗?
我就只导出部分
#13
吹水佬2021-09-04 21:59
以下是引用山中石在2021-9-4 21:46:20的发言:

你真厉害,你运行就额可以完成吗?
我就只导出部分

是不是打印设备驱动问题
1