LODOP控制打印项水平居中,可以用如下语句,该语句控制的是打印项本身在纸张中水平居中。
LODOP.SET_PRINT_STYLEA(0,"Horient",2);
这个根据大的打印项本身的宽度,如果打印项本身内部不是居中的,那么加了这句,内容也不会居中。

之前有博文介绍过打印项在纸张中受到的各种边距:
LODOOP中的各种边距 打印项、整体偏移、可打区域、内部边距

例如,打印项的左边距,是指打印项与纸张之间的距离,打印项内部如果也有左边距,例如样式等造成的,那么打印项内容和纸张之间的距离,就不是单纯的额打印项左边距,而是打印项左边距加上内容内部的左边距。
同理,打印项水平居中这个样式,也会受打印项宽度的影响。

其他:此文不再对整体偏移和可打区域做解释,LODOP不同打印机出现偏移问题,注意在实际代码里不要设置整体偏移,可针对不同客户端进行打印维护整体偏移,调整结果只对客户端本地本机影响。Lodop打印维护PRINT_SETUP本地缓存ini文件

代码:
1.第一页的打印项是 根据实际超文本打印项宽度设置的打印项宽度,所以设置打印项在纸张中水平居中后,打印项大致是在纸张中水平居中的。
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>
<div id="div1"><!--一个三行三列的table表格-->
<table width="300" border=1 style="border:solid 1px black;border-collapse:collapse" bgcolor="#5dd2e3">
<tr>
<td width="100">lodop</td>
<td width="100">c-lodop</td>
<td width="100">c-lodop</td>
</tr>
<tr>
<td width="100" >text</td>
<td width="100">html</td>
<td width="100">html</td>
</tr>
<tr>
<td width="100">lodop</td>
<td width="100">c-lodop</td>
<td width="100">html</td>
</tr>
</table>
</div>
</div>
<a href="javascript:prn1_dg()">打印设计查看打印项</a><br>
<a href="javascript:prn2_preview()">打印预览2</a><br>
<script language="javascript" type="text/javascript">
var LODOP; //声明为全局变量
function prn1_dg() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.SET_PRINT_PAGESIZE(1,1200,500,"");
LODOP.ADD_PRINT_HTM(25,30,411,90,document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Horient",2);
LODOP.PRINT_DESIGN();
};
function prn2_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.SET_PRINT_PAGESIZE(1,1200,500,"");
LODOP.ADD_PRINT_HTM(25,30,300,90,document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Horient",2);
LODOP.NEWPAGE();
LODOP.ADD_PRINT_HTM(25,30,411,90,document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Horient",2);
LODOP.PREVIEW();
};
</script>
</body>

图示:
1.超文本打印项宽度是实际的内容的宽度。
2.超文本打印项宽度不是实际的内容宽度,打印项内部存在空白区域。
设置打印项相对于纸张水平居中后,第二个宽度较大的,内容不会相对于纸张居中。

ADD_PRINT_TEXT纯文本中,内容在文本框中默认是居左的,如果只设置打印项居中,那么文本框存在内部居中,内容也不会相对于纸张居中,所以需要加上文本框内容相对于文本框居中,这样纯文本就能在纸张中居中。
纯文本在纸张中居中:
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);//文本框里 内容对于文本框居中
LODOP.SET_PRINT_STYLEA(0,"Horient",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_dg()">打印设计</a><br>
<script language="javascript" type="text/javascript">
var LODOP; //声明为全局变量
function prn1_dg() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.SET_PRINT_PAGESIZE(1,1200,500,"");
LODOP.ADD_PRINT_TEXT(29,121,100,20,"文本");
LODOP.SET_PRINT_STYLEA(0,"Alignment",2);
LODOP.SET_PRINT_STYLEA(0,"Horient",2);
LODOP.PRINT_DESIGN();
};
</script>
</body>

图示:

由于LODOP生成的条码二维码,设置多宽并不一定是多宽,受合计值的影响,因此条码如果数值不同,在纸张中居中比较难控制,无法做到条码在纸张中居中,最好留够最大条码的宽度,放在一定区域内。

二维码可以通过打印设计找到在纸张中的居中点,然后设置具体的版本号,统一所有二维码的大小。
相关博文:Lodop打印条码二维码设置多宽不一定是多宽Lodop打印二维码内容长度不同如何大小相同

简短问答:
居中打印
1. 打印项居中 参考样例23 http://www.c-lodop.com/demolist/PrintSample23.html
LODOP.SET_PRINT_STYLEA(0,"Horient",2);//打印项在纸张中水平居中
LODOP.SET_PRINT_STYLEA(0,"Vorient",2);//打印项在纸张中垂直居中
2. add_pirnt_text纯文本打印项里面的内容居中
纯文本设置Alignment设置水平居中LODOP.SET_PRINT_STYLEA(0,"Alignment",2);//文本框里 内容对于文本框居中,
不支持垂直居中, 具体参考技术手册;
3.AlignJustify设置纯文本两端对齐和条码文字对齐
LODOP.SET_PRINT_STYLEA(0,"AlignJustify",1);//纯文本两端对齐
LODOP.SET_PRINT_STYLEA(0,"AlignJustify",2);//设置条码下方的文字相对于条码本身居中
4.Html 通过css 控制 参考样例2 ,10;http://www.c-lodop.com/demolist/PrintSample10.html

LODOP打印项水平居中的更多相关文章

  1. LODOP中打印项水平居中简短问答

    相关博文:LODOP打印项水平居中(超文本纯文本居中)LODOP打印超文本有边距不居中的情况2(超文本居中的一种) LODOP表格水平居中3(宽度为百分比)(超文本居中的一种) LODOP打印图片水平 ...

  2. LODOP打印图片水平居中

    其他居中,查看本博客相关博文:LODOP中打印项水平居中简短问答.图片也属于超文本打印项,因此如果想把图片居中,也需要图片本身内容相对于图片打印项宽度居中,然后再设置打印项居中.如图,同一张图片,都设 ...

  3. Lodop打印项对象类型属性区分

    Lodop提供了一些打印项类型,默认是普通项,通过设置打印对象的类型,可以实现一些普通项不能实现的效果.例如:该博客另一篇博文 标题是Lodop打印控件 打印‘接下一页’‘以下空白’,就用了眉脚项. ...

  4. LODOP打印超文本有边距不居中的情况2

    之前的博文:LODOP打印项水平居中.之前的博文有介绍超文本和纯文本的居中方式,设置超文本打印项居中时,注意打印内容要在打印项本身宽度里居中.之前的博文超文本用的是个表格,而且表格本身没有margin ...

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

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

  6. Lodop调整打印项输出顺序 覆盖与层级

    Lodop中的打印项,如果有输出在同一位置,或部分位置重叠的地方,打印项之间是怎么覆盖的呢?在JS里,按照Lodop语句打印项先后的执行顺序,先执行的先输出,后执行的后输出,如果有后面的打印项和前面的 ...

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

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

  8. LODOP关联,打印项序号注意事项

    之前也有介绍过打印项序号:Lodop打印控件里SET_PRINT_STYLE和SET_PRINT_STYLEA如果是个给打印项添加样式,最常用的是SET_PRINT_STYLEA(0.....),第一 ...

  9. Lodop打印设计里的 打印项对齐

    打印设计界面里,有四个对齐的图标:(1)第一个图标是左右对齐方式,该图标下有四种左右对齐方式.(2)第二个图标是上下对齐方式,该图标下有四种上下对齐方式.(3)第三个图标是等宽对齐,该图标下有三种等宽 ...

随机推荐

  1. 二维数组中的查找 - Java版 -简单二分查找 -<<剑指Offer>> -水题

    如题 (总结) -认真读题, 还WA了一次, https://www.nowcoder.com/practice/abc3fe2ce8e146608e868a70efebf62e?tpId=13&am ...

  2. HttpClient代码设置代理

    由于对接faceBook接口,本地测试时候要设置代理才能调试. (http和https通用) public SSLContext createIgnoreVerifySSL() throws NoSu ...

  3. 自定义控件LengthValidator

    1.创建自定义验证控件:新建LengthValidator类并继承BaseValidator using System; using System.Collections.Generic; using ...

  4. 大数据开发之keras代码框架应用

    总体来讲keras这个深度学习框架真的很“简易”,它体现在可参考的文档写的比较详细,不像caffe,装完以后都得靠技术博客,keras有它自己的官方文档(不过是英文的),这给初学者提供了很大的学习空间 ...

  5. Python 代码混淆和加密技术

    动机 Python进行商业开发时, 需要有一定的安全意识, 为了不被轻易的逆向. 混淆和加密就有所必要了. 混淆 为了增加代码阅读的难度, 源代码的混淆非常必要, 一个在线的Python代码混淆网站. ...

  6. dbt 集成presto试用

    dbt 团队提供了presto 的adapter同时也是一个不错的的参考实现,可以学习 当前dbt presto 对于版本的要求是0.13.1 对于当前最新版本的还不支持,同时需要使用源码安装pip ...

  7. Configure JSON.NET to ignore DataContract/DataMember attributes

    https://stackoverflow.com/questions/11055225/configure-json-net-to-ignore-datacontract-datamember-at ...

  8. 【loj2339】【WC2018】通道

    题目 三棵带边权的树,求 \[ dis1(u,v) + dis2(u,v) + dis3(u,v) \] 的最大值 \(1 \le n \le 10^5\) 题解 对\(T_1\)做边分治,把分治边的 ...

  9. 微信小程序前端function封装

    funtion的封装 utils =>http.js var tips = { 1: "没有网络", 999: "无效的请求", 5000: " ...

  10. Cocos CreatorUI系统下

    若本号内容有做得不到位的地方(比如:涉及版权或其他问题),请及时联系我们进行整改即可,会在第一时间进行处理. 请点赞!因为你们的赞同/鼓励是我写作的最大动力! 欢迎关注达叔小生的简书! 这是一个有质量 ...