最近开发时用到ImageEnView 打印 tif 文件.使用Hp2900时没有任何问题,使用打印复印一体机(如:fs-京瓷6030mfp、还有东芝(型号记不清了))时。经常出现整个图片打出来都是黑的!程序代码如下:
      while not aqdylb.Eof do
      begin
        if aqdylb.FieldByName('是否打印').AsBoolean then
        begin
          printer.BeginDoc;
          img1.IO.LoadFromFile(ExtractFilePath(ParamStr(0)) + '\FTPbacx\' +
            aqdylb.fieldbyname('图片名称').AsString);
          img1.IO.PrintImage(Printer.Canvas, 0, 0, 0, 0, ievpCENTER, iehpCENTER,
            imageenio.iesFITTOPAGE, 0, 0, 1);
          printer.EndDoc;
        end;
        aqdylb.Next;
      end;
其中 aqdylb 为 tif 文件位置 数据集。请高手帮忙解决!!!
究竟是 打印机 还是 程序问题?求解!!!

解决方案 »

  1.   

    先判断下问题吧,如果你在其他打印机上工作正常而只有这个出问题,可以考虑更换驱动,或者给打印机更换主机(由网络打印改为本机打印看看)如果是在各种打印机都会出现问题,那铁定是代码问题了,LZ只能检查代码了最后一点仅供参考,有些加密或者未付款控件是不允许打印的,打印时不是白屏就是黑屏
      

  2.   

    同意楼上的观点,但有时也存在兼容性的问题,换个方式打印试试。
      

  3.   

    是打印驱动的问题,有的打印机认为背景为空是白,有的认为是黑
      

  4.   

    检查代码是否有处理背景为白色或者黑色