LODOP中的打印项,例如ADD_PRINT_HTM,参数分别为顶边距,左边距,宽,高,打印项内容。
第三四参数宽高,除了可以用值和百分比,还可以用RightMargin和BottomMargin变相控制宽高。

RightMargin右边距和BottomMargin下边距容易被误解为:设置右边距和下边距后,打印项内部的内容和纸张的距离就是右边距和下边距了。
实际上不是这样的,打印项在纸张中的位置,还是通过前两个参数顶边距和左边距固定位置,这两个右边距和下边距只是变相控制不固定宽高的内容的宽高。如果是内容超出了纸张,用这个设置右边距下边距是没有效果的,因为宽高样式本身在内容里指定了,超出纸张,可以调整样式,有些样式不是自己写的,或者也可以用整页缩放Full-Page或溢出缩放(整页缩放相关博文: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>
<div id="d1">
<table width="300" border=1 style="border-collapse:collapse;table-layout:fixed;" >
<tr>
<td width="51" height="16">1</td>
<td width="51" height="16">333</td>
</tr>
</table>
</div>
<div id="d2">
<table width="100%" height="100%" border=1 style="border-collapse:collapse;" >
<tr>
<td width="40%">1</td>
<td width="60">333</td>
</tr>
</table>
</div>
<a href="javascript:prn1_preview()">设置了具体宽高值的表格</a><br>
<a href="javascript:prn2_preview()">设置的百分比宽高值</a><br>
<script language="javascript" type="text/javascript">
var LODOP; //声明为全局变量
function prn1_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.SET_PRINT_PAGESIZE(1,1300,600,"");
LODOP.ADD_PRINT_HTM("2cm","1cm","RightMargin:1cm","BottomMargin:2cm",document.getElementById("d1").innerHTML);
LODOP.PRINT_DESIGN();
//LODOP.PREVIEW();
};
function prn2_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.SET_PRINT_PAGESIZE(1,1300,600,"");
LODOP.ADD_PRINT_HTM("2cm","1cm","RightMargin:1cm","BottomMargin:2cm",document.getElementById("d2").innerHTML);
LODOP.PRINT_DESIGN();
//LODOP.PREVIEW();
};
</script>
</body>

如测试代码和图示,两个表格,一个表格里用的是实际的数值宽高,一个用的是百分比,效果如图,用百分比的宽高。固定值的会按照html写的具体样式进行控制宽高,只有百分比的这种不固定的会按照右边距和下边距控制宽高。

图示:

LODOP中的RightMargin右边距和BottomMargin下边距的更多相关文章

  1. LODOP设置某打印项锁定下边距

    LODOP中的打印项定位都是按照top值(顶边距),left(左边距)来决定的 ,不能直接设置某打印项的下边距.此外,打印项的位置还受PRINT_INTA的前两个整体偏移值,打印机可打区域的影响.该文 ...

  2. LODOP中的各种宽高和位置简短问答

    LODOP中的位置边距,可查看本博客另一篇相关博文:LODOOP中的各种边距 打印项.整体偏移.可打区域.内部边距关于LODOP中的各种宽高,可查看本博文简短问答下方的正文:.该文其实有两个以前的相关 ...

  3. LODOP中tfoot和tbody中间线连不起来

    这种情况发生在使用ADD_PRINT_TABLE时,ADD_PRINT_TABLE是Lodop中专门用来输出table表格的语句,它有很多特点,比如该语句不切行(详细可参考查看本博客相关博文:LODO ...

  4. LODOP中的纯文本和超文本打印项

    LODOP中的的打印项,有超文本也有纯文本,超文本指的是用html语言,html里的标签为值的打印项,该种打印项会经过浏览器解析,LODOP本身不带解析超文本的引擎,调用的windows底层引擎,与i ...

  5. LODOP中ADD_PRINT_TABLE、HTM、HTML表格自动分页测试

    LODOP中超文本超过打印项高度会自动分页,那么对于超大行,该行处在分页高度位置会怎样呢?本文用来测试一下三个语句对html中table中超大行在分页高度位置的处理. 测试结果:ADD_PRINT_T ...

  6. LODOP中page-break-before:always给div分页

    Lodop中超过超文本打印项高度会自动分页:Lodop打印控件 超文本自动分页Lodop中还有NewPage和NewPageA,用于手动分页:Lodop强制分页LODOP.NewPage()和LODO ...

  7. Lodop中特殊符号¥打印设计和预览不同

    Lodop中¥符号样式改变问题 Lodop中对超文本样式的解析,虽然说是按照调用的本机ie引擎,但是调用的ie版本可能不同,导致在ie下是一种样式,预览又是另一种样式.可能是有些样式没有具体设置,走的 ...

  8. O(n) 取得数组中每个元素右边最后一个比它大的元素

    题目 2019.9.7,icpc徐州网络赛的E题 XKC's basketball team ,计蒜客上还可以做. 链接:https://nanti.jisuanke.com/t/41387 Inpu ...

  9. LODOP中table自动分页补线加border

    LODOP中可以用ADD_PRINT_TABLE.ADD_PRINT_HTM.ADD_PRINT_HTML.ADD_PRINT_TBURL等可以输出超文本的表格,超文有超过打印项高度或纸张高度自动分页 ...

随机推荐

  1. 使用Apollo做配置中心

    https://blog.51cto.com/12980017/2158490?source=dra 由于Apollo支持的图形化界面相对于我们更加的友好,所以此次我们使用Apollo来做配置中心 本 ...

  2. E. Little Pony and Expected Maximum(组合期望)

    题目描述: Little Pony and Expected Maximum time limit per test 1 second memory limit per test 256 megaby ...

  3. 数组,字符串,json互相转换

    数组转字符串 var arr = [1,2,3,4,'巴德','merge']; var str = arr.join(','); console.log(str); // 1,2,3,4,巴德,me ...

  4. jQuery 遍历 - 过滤

    三个最基本的过滤方法是:first(), last() 和 eq(),它们允许您基于其在一组元素中的位置来选择一个特定的元素. 其他过滤方法,比如 filter() 和 not() 允许您选取匹配或不 ...

  5. 网站安全DDOS攻击及监测

    一. 监测 在类Unix系统中可以使用top查看系统资源.进程.内存占用等信息.查看网络状态可以使用netstat.nmap等工具.若要查看实时的网络流量,监控TCP/IP连接等,则可以使用iftop ...

  6. c++中关联容器map的使用

    C++关联容器<map>简单总结(转) 补充: 使用count,返回的是被查找元素的个数.如果有,返回1:否则,返回0.注意,map中不存在相同元素,所以返回值只能是1或0. 使用find ...

  7. python的zip()函数

    zip() 函数用于将可迭代对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象. 如果各个可迭代对象的元素个数不一致,则返回的对象长度与最短的可迭代对象相同. 利用 * 号 ...

  8. 洛谷 [USACO05DEC] 布局 题解

    今天学了差分约束系统, 这是一道板子题. 核心:a[v]>a[u]+d 相当于从u到v连一条长度为d的有向边.由于要判断有环,所以要从0点先跑一遍spfa因为1点不一定能到所有的点. #incl ...

  9. webuploader解决大文件断点续传

    文件夹数据库处理逻辑 public class DbFolder { JSONObject root; public DbFolder() { this.root = new JSONObject() ...

  10. Dump文件数据存储格式(一)

    我们已经了解了什么是Dump文件,它保存了什么数据,有什么作用,但它是如何存储的,数据格式是怎样的呢.下面简单说一下. 一.总体结构 二.文件头 首先文件的最开始的32个字节是Dump文件的文件头,这 ...