LODOP提高输出图片质量的方法:
1.用ADD_PRINT_IMAGE语句打印图片,而且img元素的width和height属性要去掉或者设置足够大,这样就可以让下载引擎传给Lodop图片质量足够好;
2.如果要控制图片输出大小,要用SET_PRINT_STYLEA(0,"Stretch",1)语句控制最终输出大小
也就是不要在img标签里设置width和height,或设置足够大。控制大小直接用ADD_PRINT_IMAGE的宽高,然后加上可变形或不可变形缩放语句,进行控制大小。

预览是图形模式,用xps或pdf虚拟打印机实际输出查看效果。
预览是图形模式,缩略图,可能是实际打印之间存在差异,例如 图片预览查看有问题,但是实际打印出来是没问题的,可以用虚拟打印机查看下实际打印的结果

LODOP用ADD_PRINT_IMAGE语句缩放打印图片,预览质量看起来不正常。
Lodop缩放预览图片看起来有问题。
Lodop实际打印出来效果是好的。

LODOP.SET_PRINT_STYLEA(0,"Stretch",1);//(可变形)扩展缩放模式
LODOP.SET_PRINT_STYLEA(0,"Stretch",2);//(不可变形)扩展缩放模式

测试代码:

第一个测试方法里,是输出原图,由于原图较大,所以会显示部分,其他部分不显示,裁剪出来的。

< meta http-equiv ="Content-Type" content ="text/html; charset=utf-8" /> < title > WEB打印控件LODOP </ title > < script language ="javascript" src ="LodopFuncs.js" ></ script > </ head > < a href ="javascript:prn1_preview()" > 打印预览 </ a >< br > < a href ="javascript:prn2_preview()" > 打印预览 可变形缩放 </ a >< br > < a href ="javascript:prn3_preview()" > 打印预览 不可变形缩放 </ a > < script language ="javascript" type ="text/javascript" > var LODOP; // 声明为全局变量 function prn1_preview() { LODOP = getLodop(); LODOP.PRINT_INIT( "" ); LODOP.ADD_PRINT_IMAGE( 0 , 0 , " 100% " , " 100% " , " <img src='1.jpg'> " ); LODOP.PRINT_DESIGN(); // LODOP.PREVIEW(); function prn2_preview() { LODOP = getLodop(); LODOP.PRINT_INIT( "" ); LODOP.ADD_PRINT_IMAGE( 0 , 0 , 500 , 500 , " <img src='1.jpg'> " ); LODOP.SET_PRINT_STYLEA( 0 , " Stretch " , 1 ); // (可变形)扩展缩放模式 LODOP.PRINT_DESIGN(); // LODOP.PREVIEW(); function prn3_preview() { LODOP = getLodop(); LODOP.PRINT_INIT( "" ); LODOP.ADD_PRINT_IMAGE( 0 , 0 , 500 , 500 , " <img src='1.jpg'> " ); LODOP.SET_PRINT_STYLEA( 0 , " Stretch " , 2 ); // (不可变形)扩展缩放模式 LODOP.PRINT_DESIGN(); // LODOP.PREVIEW(); </ script > </ body >

上面这个图没有放第一个方法里,不加任何缩放的图,最后放一下,图片较大的时候,不加缩放,会截取图片部分,超出纸张的不会显示。