Lodop打印设计矩形重合预览线条变粗

LODOP中的打印设计是辅助进行开发的,实际打印效果应以预览为准,很多效果都是在设计界面显示不出来,或设计和预览界面有差异。例如add_print_text文本的字间距、行间距,旋转,还有允许标点溢出和英文拆分样式:Lodop纯文本英文-等符号自动换行问题

还有一些超文本样式可能也会出现打印设计界面与预览界面有差异的情况。例如,某些调用的I引擎不同造成默认样式不同:Lodop中特殊符号¥打印设计和预览不同

Lodop除了可以用超文本的table表格,还可以用线条和矩形框制作表格,可以在打印设计里直接插入然后调整,也可以直接在代码里计算间隔等,把线条的上边距等制作变量,循环赋值,直接在代码里写这种由线条打印项组成的表格。
在直接用打印设计进行设计时候,例如矩形框,可能会出现打印设计看着挺好,预览表格(矩形)线重合的部分加粗了,打印设计界面明明是重合的,这时候应以预览为准,打印设计只是辅助设计的,不能代表最终效果,而且重合的矩形的重合可以在代码里累加看出来是否重合,打印设计看似重合,但如果生成代码可以看出并不是完全重合,所以造成预览矩形与矩形交界处出现加粗边框。(不是真的重合造成的)

打印设计与预览不同,以预览效果为准,以数值累加或预览为准。
如图所示,虽然打印设计显示都是细线似乎重合的很好,但是实际预览发现变粗了生成代码后,发现数值少了,图中是一个400*247的大矩形,里面套了四个小矩形,最后剩余的部分是大矩形与最后的空白。
大矩形的上边距要和第一个矩形的上边距融合,需要设置相同的数值,也就是都是top顶边距为15,实际是都重合了,这样设置是正常的。
第二个小矩形的下边要与第二个小矩形的上边重合,这个地方如果在打印设计界面调整到看上去重合的位置,实际生成代码和预览会发现是74,不等于第一个小矩形top上边距和第一个小矩形的height高度之和,所以预览就是显示的粗线条,因为没有重合,是两个边的合计值。
所以调整的时候向下一点,会发现打印设计显示粗了,而预览却正常了,生成代码,正好是等于第一个小矩形top上边距和第一个小矩形的height高度之和。
因此,用Lodop的矩形设计,以数值和预览为准。

代码:

<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_dg()">打印设计矩形重合 预览不正常</a><br>
<a href="javascript:prn2_dg()">打印设计矩形重合 预览正常</a>
<script language="javascript" type="text/javascript">
        var LODOP; //声明为全局变量
    function prn1_dg() {//打印设计多个矩形重合正常,预览不正常
        LODOP=getLodop();
        LODOP.PRINT_INIT("");
        LODOP.ADD_PRINT_RECT(15,62,400,247,0,1);
        LODOP.ADD_PRINT_RECT(15,62,400,60,0,1);
        LODOP.ADD_PRINT_RECT(74,62,400,60,0,1);
        LODOP.ADD_PRINT_RECT(133,62,200,60,0,1);
        LODOP.ADD_PRINT_RECT(133,262,200,60,0,1);
        //LODOP.PREVIEW();
        LODOP.PRINT_DESIGN();
    };
    function prn2_dg() {//打印设计多个矩形重合不正常,预览正常
        LODOP=getLodop();
        LODOP.PRINT_INIT("");
        LODOP.ADD_PRINT_RECT(15,62,400,247,0,1);//最外层大矩形,top顶边距15,宽度width为400
        LODOP.ADD_PRINT_RECT(15,62,400,60,0,1);
        LODOP.ADD_PRINT_RECT(75,62,400,60,0,1);//15+60=75 上一个矩形的top+上一个矩形的height
        LODOP.ADD_PRINT_RECT(135,62,200,60,0,1);//15+60+60=135
        //上一个矩形的top+上一个矩形的height=75+60     //上上个矩形的top+上上个矩形的height+上个矩形的height=15+60+60
        LODOP.ADD_PRINT_RECT(135,262,200,60,0,1);//62+200=262 最大矩形width-左侧矩形的left-左侧矩形的width
        //LODOP.PREVIEW();
        LODOP.PRINT_DESIGN();
    };
</script>
</body>

图片:

原文地址:https://www.cnblogs.com/huaxie/p/10024973.html

时间: 2024-10-06 03:37:36

Lodop打印设计矩形重合预览线条变粗的相关文章

JAVA打印类(带预览)

package tool; import java.awt.*; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.awt.print.*; import java.util.ArrayList; import java.util.Date; import java.util.List; import javax.swing.JFrame; import javax.swing.JPane

lodop打印设计

<template> <div class="dashboard-container"> <form id="form1"> <table border="1" width="300" id="tb01" bgcolor="#CCFFCC" style="border:solid 1px black;border-collapse:co

Lodop打印设计界面生成代码带”...(省略)”

Lodop的设计界面中,菜单里的生成代码,如果打印项内容过多,后面会显示"...(省略)",省略的是打印项的内容值,无论是纯文本还是超文本,都可以用选中打印项-右键-设置属性里找到该打印项的全部值,可以复制出来放到值的那个参数里.选中打印项-右键-设置属性-切换到值得那个标签选项.双击选中的打印项也可以,不过有时可能弹出框到打印设计界面后面去了,因此建议右键-设置属性. 打印设计(LODOP.PRINT_DESIGN())关闭后,可以返回完整的打印设计代码,没有"...(省略

网上打印纳税申报表等预览有网格打印不显示

现象: 网上报税等系统,浏览时有网格线,打选择打印就不显示网格线 解决方法: IE9及以前版本浏览器设置:IE浏览器中找文件-页面设置-勾选打印背景颜色和图像即可 IE9及以上浏览器设置:设置---打印---页面设置--勾选打印背景颜色和图像.

c#教程之打印和打印预览

4.1      打印和打印预览 打印和打印预览是一个编辑器必须具有的功能,本节介绍实现打印和打印预览的方法.一般要实现如下菜单项:打印.打印预览.页面设置. 4.8.1PrintDocument类 PrintDocument组件是用于完成打印的类,其常用属性.方法和事件如下:l  属性DocumentName:字符串类型,记录打印文档时显示的文档名(例如,在打印状态对话框或打印机队列中显示).l  方法Print:开始文档的打印.l  事件BeginPrint:在调用Print方法后,在打印文

Android中实时预览UI和编写UI的各种技巧

一.啰嗦 之前有读者反馈说,你搞这个所谓的最佳实践,每篇文章最后就给了一个库,感觉不是很高大上.其实,我在写这个系列之初就有想过这个问题.我的目的是:给出最实用的库来帮助我们开发,并且尽可能地说明这个库是如何编写的,希望让初创公司的程序员少写点给后人留坑的代码(想必大家对此深有体会).我之前给出的库都是很简单基础的,基本是一看就懂(但足够精妙),如果以后的文章涉及到了复杂的库,我会专门附加一篇库的讲解文.如果一个库的原理你知道,此外这个库很容易扩展和维护,而且它还用到了很多最佳实践的经验,你为什

UI实时预览最佳实践(转)

UI实时预览最佳实践 概要:Android中实时预览UI和编写UI的各种技巧.本文的例子都可以在结尾处的示例代码中看到并下载.如果喜欢请star,如果觉得有纰漏请提交issue,如果你有更好的点子可以提交pull request.本文的代码主要是基于作者的实际经验编写的,如果你有其他的技巧和方法也可以参与进来一起完善此文. 文章固定连接:https://github.com/tianzhijiexian/Android-Best-Practices/blob/master/2015.9/ui/u

iOS文档预览功能教程

本文转载至 http://blog.csdn.net/devday/article/details/6580444 文档iosuinavigationcontrollerextensionmicrosoftcomponents ios 4 sdk中支技文档的预览功能,何为预览?就是你打印文件时的预览功能.其用到quicklook.framework,它支持的文档格式有: iWork documents, Microsoft Office, Rich Text Format, PDF, image

使用FileReader实现前端图片预览

在FileReader出现之前,前端的图片预览是这样实现的:把本地图片上传到服务器,服务器把图片地址返回,并把它替换到图片元素的src属性. 这种方法的缺点是:必须要先把图片上传到服务器.那么问题来了,如果上传的图片很大,而网速又很慢,这就需要等待很久预览图片才会显示出来了,而且,如果用户预览图片后发现不太满意,想重新选择一张图片,这时候还要把已经上传到服务器上的图片给删除掉. 自从有了HTML5的FileReader对象以后,预览图片变得简单多了,不再需要后台的配合,并且JS操作本地文件已经成