LODOP用ADD_PRINT_IMAGE语句缩放打印图片

2023-10-08 09:10

本文主要是介绍LODOP用ADD_PRINT_IMAGE语句缩放打印图片,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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);//(不可变形)扩展缩放模式

测试代码:

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

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>WEB打印控件LODOP</title>
<script language="javascript" src="LodopFuncs.js"></script>
</head>
<body>
<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>

图示:

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

转载于:https://www.cnblogs.com/huaxie/p/10255546.html

这篇关于LODOP用ADD_PRINT_IMAGE语句缩放打印图片的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/164226

相关文章

MySQL INSERT语句实现当记录不存在时插入的几种方法

《MySQLINSERT语句实现当记录不存在时插入的几种方法》MySQL的INSERT语句是用于向数据库表中插入新记录的关键命令,下面:本文主要介绍MySQLINSERT语句实现当记录不存在时... 目录使用 INSERT IGNORE使用 ON DUPLICATE KEY UPDATE使用 REPLACE

Nginx指令add_header和proxy_set_header的区别及说明

《Nginx指令add_header和proxy_set_header的区别及说明》:本文主要介绍Nginx指令add_header和proxy_set_header的区别及说明,具有很好的参考价... 目录Nginx指令add_header和proxy_set_header区别如何理解反向代理?proxy

基于Python开发批量提取Excel图片的小工具

《基于Python开发批量提取Excel图片的小工具》这篇文章主要为大家详细介绍了如何使用Python中的openpyxl库开发一个小工具,可以实现批量提取Excel图片,有需要的小伙伴可以参考一下... 目前有一个需求,就是批量读取当前目录下所有文件夹里的Excel文件,去获取出Excel文件中的图片,并

Java实现数据库图片上传与存储功能

《Java实现数据库图片上传与存储功能》在现代的Web开发中,上传图片并将其存储在数据库中是常见的需求之一,本文将介绍如何通过Java实现图片上传,存储到数据库的完整过程,希望对大家有所帮助... 目录1. 项目结构2. 数据库表设计3. 实现图片上传功能3.1 文件上传控制器3.2 图片上传服务4. 实现

CSS @media print 使用详解

《CSS@mediaprint使用详解》:本文主要介绍了CSS中的打印媒体查询@mediaprint包括基本语法、常见使用场景和代码示例,如隐藏非必要元素、调整字体和颜色、处理链接的URL显示、分页控制、调整边距和背景等,还提供了测试方法和关键注意事项,并分享了进阶技巧,详细内容请阅读本文,希望能对你有所帮助...

python之流程控制语句match-case详解

《python之流程控制语句match-case详解》:本文主要介绍python之流程控制语句match-case使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录match-case 语法详解与实战一、基础值匹配(类似 switch-case)二、数据结构解构匹

Java实现数据库图片上传功能详解

《Java实现数据库图片上传功能详解》这篇文章主要为大家详细介绍了如何使用Java实现数据库图片上传功能,包含从数据库拿图片传递前端渲染,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、前言2、数据库搭建&nbsChina编程p; 3、后端实现将图片存储进数据库4、后端实现从数据库取出图片给前端5、前端拿到

Python使用PIL库将PNG图片转换为ICO图标的示例代码

《Python使用PIL库将PNG图片转换为ICO图标的示例代码》在软件开发和网站设计中,ICO图标是一种常用的图像格式,特别适用于应用程序图标、网页收藏夹图标等场景,本文将介绍如何使用Python的... 目录引言准备工作代码解析实践操作结果展示结语引言在软件开发和网站设计中,ICO图标是一种常用的图像

SpringBoot集成图片验证码框架easy-captcha的详细过程

《SpringBoot集成图片验证码框架easy-captcha的详细过程》本文介绍了如何将Easy-Captcha框架集成到SpringBoot项目中,实现图片验证码功能,Easy-Captcha是... 目录SpringBoot集成图片验证码框架easy-captcha一、引言二、依赖三、代码1. Ea

在Dockerfile中copy和add的区别及说明

《在Dockerfile中copy和add的区别及说明》COPY和ADD都是Dockerfile中用于文件复制的命令,但COPY仅用于本地文件或目录的复制,不支持自动解压缩;而ADD除了复制本地文件或... 目录在dockerfile中,copy 和 add有什么区别?COPY 命令ADD 命令总结在Doc