LODOP中的纯文本和超文本打印项
LODOP中的的打印项,有超文本也有纯文本,超文本指的是用html语言,html里的标签为值的打印项,该种打印项会经过浏览器解析,LODOP本身不带解析超文本的引擎,调用的windows底层引擎,与ie浏览器一致,由于ie版本的不同,会导致解析出来的内容也可能有不同。
如果是套打或输出小票,输出内容比较简单,一般建议使用纯文本方式,这种不受浏览器引擎的影响。
ADD_PRINT_TEXT输出的为纯文本打印项,ADD_PRINT_HTM、ADD_PRINT_TABLE等输出的为超文本打印项。
纯文本:
ADD_PRINT_TEXT+ADD_PRINT_SHAPE等,通过LODOP语句输出文本,图形,线条,二维码条码等,这种方式不受浏览器引擎解析的影响。套打,小票打印,标签打印,批量打印,用这种是很好的。
超文本:
ADD_PRINT_HTM超文本的普通模式,输出的是解析后的超文本,ADD_PRINT_HTML输出的是超文本的图形模式,能更好的输出页面样式,但是不如普通模式清晰,ADD_PRINT_TABLE自动分页不切行,等等,有各种语句用来输出超文本,超文本解析需要浏览器引擎,因此可能造成不同客户端效果有差异。
测试代码:
<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>
<script language="javascript" type="text/javascript">
var LODOP; //声明为全局变量
function prn1_preview() {
LODOP=getLodop();
var strBodyStyle="<style>body{color:blue;}</style>";//超文本的样式来自于css样式
LODOP.PRINT_INIT("");
LODOP.ADD_PRINT_TEXT(4,62,150,40,"文字(纯文本)0无样式");
LODOP.SET_PRINT_STYLE("Underline",1);//对后面两个text加下划线
LODOP.ADD_PRINT_HTM(47,60,150,28,strBodyStyle+"<body>文字(超文本)</body>");
LODOP.ADD_PRINT_TEXT(99,60,150,40,"文字(纯文本)1");
LODOP.SET_PRINT_STYLEA(0,"FontName","楷体");//对纯文本1设置为楷体
LODOP.SET_PRINT_STYLEA(0,"FontSize",11);//对纯文本1设置为字体大小11
LODOP.ADD_PRINT_TEXT(155,62,150,40,"文字(纯文本)2");
//LODOP.PRINT_DESIGN();
LODOP.PREVIEW();
};
function prn2_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.ADD_PRINT_TEXT(5,62,150,40,"文字纯文本换行");
LODOP.ADD_PRINT_TEXT(50,62,150,40,"文字纯文本\n换行");//纯文本换行
LODOP.ADD_PRINT_HTM(100,60,150,48,"<body>文字超文本换行</body>");
LODOP.ADD_PRINT_HTM(150,60,150,48,"<body>文字超文本<br>换行</body>");//超文本换行
//LODOP.PRINT_DESIGN();
LODOP.PREVIEW();
};
</script>
</body>
图示:
如图,SET_PRINT_STYLE和SET_PRINT_STYLEA,只针对纯文本有效果,SET_PRINT_STYLE添加再打印项之前,对之后的纯文本都有影响,SET_PRINT_STYLEA是设置单个纯文本的。
超文本只能用css样式控制。
同理,纯文本有纯文本的换行方式,超文本有超文本的,br标签这种html语言,只能针对超文本,对纯文本无效。

单位:LODOP中定位打印项用的px是绝对单位,和超文本css样式中的px相对单位是不同的。
如果是超文本中的css样式控制的字体大小等,如果用的px,由于是相对单位,会受分辨率的影响。
什么是超文本中css样式中的px,就是html代码中的style样式,也就是html语言写的那种,那种是经过浏览器解析的,会受分辨率的影响。
虽然之前的博文都有说超文本,纯文本,但是没有介绍过两种打印项,因此为避免混淆,这里说明一下。
超文本和纯文本的区别,就是纯文本是LODOP直接输出的,而超文本则是html语言写的。
LODOP中的纯文本和超文本打印项的更多相关文章
- javamail邮件Multipart支持同时发text和html混合消息,alternative纯文本与超文本共存
javamail邮件Multipart支持同时发text和html混合消息alternative纯文本与超文本共存 multipart/mixed:附件. multipart/related:内嵌资源 ...
- textContent、innerText的用法,在文档中插入纯文本
有时候需要查询纯文本形式的元素内容,或者在文档中插入纯文本.标准的方法是用Node的textContent属性来实现: var para = document.getElementsByTagName ...
- jQuery截取字符串、日期字符串转Date、获取html中的纯文本
jQuery截取字符串.日期字符串转Date.获取html中的纯文本. var com = com || {}; (function ($, com) { /* * 截取字符串 * @param st ...
- 从html富文本中提取纯文本
其实从html富文本中提取纯文本很简单,富文本基本上是使用html标签给文本加上丰富多彩的样式. 所以只需要将富文本字符串中的“<.....>”标签剔除,即可得到纯文本.我们可以使用正则表 ...
- PHP提取富文本字符串中的纯文本,并进行进行截取
this is my first markdown article,i hope you like it /** * 提取富文本字符串的纯文本,并进行截取; * @param $string 需要进行 ...
- LODOP纸张高度不定的纯文本累计高度
小票由于纸张没有确定的高度,根据内容多少,小票打印机出多少纸,在设置纸张的时候,需要把纸张设置成不定高的纸张.简短问答:小票打印 ,参考样例18 http://www.c-lodop.com/demo ...
- LODOP中用ADD_PRINT_IMAGE缩放非图片超文本
LODOP中HTML,URL,带有img标签的IMAGE,TBALE等打印项都属于超文本.关于LODOP中的纯文本和超文本,可查看本博客相关博文:LODOP中的纯文本和超文本打印项 ADD_PRINT ...
- LODOP中纸张高度不定超文本和纯文本对比
关于纸张高度不定的小票打印,建议使用纯文本进行设计,避免纸张高度引起变形,或超文本解析差异造成一些影响:LODOP纸张高度不定的纯文本累计高度 上面的链接的博文里,纯文本可通过间距和高度值累计,得出最 ...
- LODOP中设置设置图片平铺水印,超文本透明
之前的博文:LODOP中平铺图片 文本项Repeat. 该博文中是平铺的图片,上面是文本.如果是图片add_print_image和add_print_text纯文本,这两个打印项设计的,可以直接通过 ...
随机推荐
- 聊聊我的 Java 自学之路
最近经常在知乎收到类似『没基础,java 如何自学』.『怎么才能掌握编程』等等问题,再加上发现高中同学也在自学.有感而发,讲讲我的自学之路. 1.1. 大学 高考没正常发挥,考入一所二流的学校,当时分 ...
- c++中求数组长度
#include <iostream> using namespace std; template <class T> int getArrSize(T& arr){ ...
- Timeline Style
from: https://freefrontend.com/css-timelines/ https://bootstrapthemes.co/items/resources/timeline/ h ...
- Github:failed to add file / to index
我把Test项目上传到github上,为了截一部分图,来写博客.所以我就上传成功之后,把仓库Respository Test删除了,但是当我再次上传的时候,发现上传不上,会提示failed to ad ...
- 对国内IoT的展望
这个世界上让任何人最安心的,莫过于自己能够完全控制,反之什么都无法控制的,万念俱灰之下,最后只有自我了结.芸芸众生都是在这个之间徘徊,尽可能的去掌控,尽可能的去拥有,觉得能够安心,其实只是自由的内心被 ...
- 微信小程序(二)登录授权实现
相对于上一节,这一节主要是动态获取数据,主要是对登陆信息的接收,以及页面获取授权按钮的相对相应(未授权时,显示,授权后不显示) 关键在于状态值的判断,以及对页面的不同响应(m-->v) wxml ...
- [Python][Scrapy 框架] Python3 Scrapy的安装
1.方法(只介绍 pip 方式安装) PS.不清楚 pip(easy_install) 可以百度或留言. cmd命令: (直接可以 pip,而不用跳转到 pip.exe目录下,是因为把所在目录加入 P ...
- MySQL 使用Navicat连接MySQL8出现1251错误
安装了MySQL8.x.x后使用Navicat连接总是出现1251错误,故在此记录一下解决方法. 错误提示 1251-Client does not support authentication pr ...
- TreeView 节点拖拽
public Form1() { InitializeComponent(); treeView1.AllowDrop = true; treeView1.ItemDrag += new ItemDr ...
- python 实例六
https://www.cnblogs.com/evablogs/p/6783498.html 题目:斐波那契数列. 程序分析:这个数列从第3项开始,每一项都等于前两项之和.故 n=1,2,f=1 n ...