窗体A(mainForm)为父窗体,设有"打印预览"按钮,点击该键会弹出打印预览窗口,窗体A有十六张JPG格式图片,放在TDBImage中,窗体B(reportForm)为打印预览窗体,放有一个TQuickRep控件,十六个TQRImage控件,分别用于接收A窗体十六个TDBImage控件里的图片,点"打印预览"按钮事件代码如下:
reportForm.QRImage1.Picture:=DBImage1.Picture;
reportForm.QRImage2.Picture:=DBImage2.Picture;
.
.
.
reportForm.QRImage16.Picture:=DBImage16.Picture;
reportForm.QuickRep1.Preview;出现问题是:预览很正常,图片都能显示,但在预览框里按打印时,总是有几个图片打不出来,而且每次打印不出的图片所在位置都有所不同,请各位高手指点迷津.感激不尽!

解决方案 »

  1.   

    换过了几个打印机都是这样。是不是qreport 不支持啊?
      

  2.   

    在Rave中增加打印JPEG图片的功能时候,我严格按以下步骤来做:
            根据网上的知识和RaveDevGuide.pdf,应该是先从Nevrona的网站( 
    http://www.nevrona.com/rave/addons.shtml  ) 上下载对应版本的JPEG Image 
    Component ver 1.0。 安装JPEG Image Component ver 1.0的方法如下:1: 把下载的文件nd_jpeg511.zip解压到RAVE5中。确保ND_JPEG成为Rave5的子目录。2: 拷贝文件NDCSJPEG.PAS到目录Rave5的D7子目录中。3: 启动Rave报表设计器,通过菜单路径Edit|Preferences打开preferences对话框,选择
    Packages页,把C:\RAVE5\ND_JPEG.BPL包加到installed package中,然后按OK。4:在Rave报表设计器的部件面板Standard页,就会有对应的JPG部件。把JPG部件插入到报表
    中,就能够在报表中显示JPEG图片了!        通过以上步骤,仅仅是在RAVE的报表设计器中增加了显示和打印JPEG图片的功能,
    在我们的应用程序中还需要完成以下步骤!1: 在应用中的uses短语部分增加对NDCsJPEG的引用;2: 在TRvProject部件的OnCreate事件中对NDCsJPEG部件进行注册。procedure TReportForm.RvProjectCreate(Sender: TObject);
    begin
           NDCsJPEG.RaveRegister;
    end;但在第三步把C:\RAVE5\ND_JPEG.BPL包加到installed package中,然后按OK的时候就出错了,提示“无法定位程序输入点@Rvdefine@initialization$qqrv于动态链接库RvCore50.bpl上”
    各位路过的大侠请帮忙解决!小弟感激不尽 ̄