Lodop打印插件的相关方法

一、首先获取LODOP打印对象

var LODOP=getLodop(); 

getLodop()方法,看文件http://www.c-lodop.com/demolist/LodopFuncs.js

打印控件下载或升级安装包,请看样例一http://www.c-lodop.com/demolist/PrintSample1.html

二、LODOP的属性和方法

基本

Lodop中最基本的打印过程至少有初始化语句、添内容语句和打印语句三部分组成

LODOP.PRINT_INIT("打印任务名"); //首先一个初始化语句
LODOP.ADD_PRINT_TEXT(0,0,100,20,"文本内容一");//然后多个ADD语句及SET语句
LODOP.PRINT(); //最后一个打印(或预览、维护、设计)语句
添加内容的方法

一次打印任务可以添加多个内容(初始化之后调用)

  • LODOP.ADD_PRINT_TEXT(Top,Left,Width,Height,strContent);增加纯文本打印项

  • LODOP.ADD_PRINT_HTM(Top,Left,Width,Height,strHtmlContent);增加超文本打印项

  • LODOP.ADD_PRINT_TABLE(Top,Left,Width,Height,strHtml);增加表格打印项

  • LODOP.ADD_PRINT_URL(Top,Left,Width,Height,strURL);增加超文本打印项

  • LODOP.ADD_PRINT_IMAGE(Top,Left,Width,Height,strHtmlContent);增加图片超文本打印项

  • LODOP.ADD_PRINT_RECT(Top, Left, Width, Height,intLineStyle, intLineWidth);增加矩形线(在打印初始化后,在文本类函数之前调用)

  • LODOP.ADD_PRINT_ELLIPSE(Top, Left,Width, Height, intLineStyle, intLineWidth);增加椭圆线(在打印初始化后,在文本类函数之前调用)

  • LODOP.ADD_PRINT_LINE(Top1,Left1, Top2, Left2,intLineStyle, intLineWidth);增加直线(在打印初始化后,在文本类函数之前调用)

  • LODOP.ADD_PRINT_BARCODE(Top, Left,Width, Height, CodeType, CodeValue);增加条形码(在打印初始化后,打印或预览之前调用)

  • LODOP.ADD_PRINT_CHART(Top, Left,Width, Height, ChartType, strHtml);增加图表(在打印初始化后,打印或预览之前调用)

  • LODOP.ADD_PRINT_SETUP_BKIMG(strImgHtml) 指定背景图

打印执行方法
  • LODOP.NEWPAGE() 强制分页(打印初始化后调用本函数)
  • LODOP.PREVIEW() 打印预览
  • LODOP.PRINT() 打印
  • LODOP.PRINT_SETUP() 打印维护
  • LODOP.PRINT_DESIGN () 打印设计
  • LODOP.GET_PRINTER_COUNT() 获得操作系统内打印设备的个数
  • LODOP.GET_PRINTER_NAME(intPrinterNO) 获得打印设备名称
  • LODOP.SET_PRINTER_INDEX(oIndexOrName) 指定打印设备
  • LODOP.SELECT_PRINTER 选择打印设备 XX
  • LODOP.SET_SHOW_MODE (strModeType,varModeValue) 设置显示模式
  • LODOP.SET_PRINT_MODE(strModeType,varModeValue)

常见的错误用法:
1.newpage分页后,每分页一次就init设置一下,这是错误的,分页是在一个任务里进行的,只能有一个init或inita。
2.一个任务(init或inita)里有多个纸张设置语句,这是错误的,一个任务只能有一个纸张设置。
3.一个任务里设置多张ADD_PRINT_SETUP_BKIMG背景图,一个任务只能有一个,如果想不同页输出不同背景图,可用普通图片方式输出背景图。
4.一个任务里打印预览,和导出图片,需要分成两个任务,一个任务打印预览,一个导出。(同理,发送打印机指令,和打印预览等也不能同一个任务)

在LODOP的方法中设计到的参数单位:

整数或字符型,整数时缺少长度单位为px。字符型时可包含单位名:in(英寸)、cm(厘米)、mm(毫米)、pt(磅)、px(1/96英寸)、%(百分比),如“10mm”表示10毫米

在LODOP的方法中设计到的参数
  • top: 打印项在纸张内的上边距。当上边距超过纸张高度时,打印项被输出在下一页(或更下页)。

  • Left:打印项在纸张内的左边距。

  • Width: 打印区域的宽度

  • Height:打印区域的高度

  • intOrient, 打印方向及纸张类型,数字型

    • 1—纵(正)向打印,固定纸张;
    • 2—横向打印,固定纸张;
    • 3—纵(正)向打印,宽度固定,高度按打印内容的高度自适应;
    • 0(或其它)----打印方向由操作者自行选择或按打印机缺省设置;
  • PageWidth, 设定自定义纸张宽度

  • PageHeight, 设定自定义纸张高度

    • 第1优先是打印维护里纸张属性(“本机自行定义纸张”)设置的纸张大小。
    • 第2优先是SET_PRINT_PAGESIZE指定的纸张大小;
    • 第3优先是上次打印时在预览界面设置里选择的纸张类型;
    • 第4是按所选打印机的默认纸张;
  • strPageName 所选纸张类型名

  • strContent: 纯文本内容,字符型,未限制长度

  • strHtmlContent:本参数是字符型,有三种情况:一是用IMG标签组成的超文本代码内容(标签内容);二是本地文件名内容全路径,格式如“C:/test.jpg”;第三是WEB地址。

  • strImgHtml 本参数是字符型,有两种情况:一是超文本代码内容;二是本地文件名内容

  • strURL: 页面URL地址

  • strHtml : 超文本代码内容

  • intLineStyle 线条类型,数字型,0–实线 1–破折线 2–点线 3–点划线 4–双点划线

  • intLineWidth 线条宽,整数型,单位是(打印)像素。

  • CodeType:
    条码类型,字符型。目前支持的类型(条码规制)主要是一维条码,有如下几种:
    128A,128B,128C,EAN8,EAN13,EAN128A,EAN128B,EAN128C,Code39,
    39Extended,2_5interleaved,2_5industrial,2_5matrix,UPC_A,UPC_E0,UPC_E1,UPCsupp2,UPCsupp5,Code93,93Extended,MSI,PostNet,Codaba,QRCode。
    其中QRCode二维码,其它为一维码。默认情况下QRCode的版本会根据宽度和高度自动调整,页面程序也可以直接设置具体版本(有1、3、7、14四个简约版本可选),版本固定时会按宽度和高度自动缩放条码大小。

  • CodeValue: 条码值。

  • ChartType:
    图表类型代码,整数型,目前支持的图表类型有如下几种:
    0–折线图;1–柱状图;2–条形图;3–面积图;4–散点图;5–饼图;
    6–直线图;7–甘特图;8–箭头图;9–气泡图;10—几何图;

首先

  • 获取打印 版本 – LODOP.CVERSION
  • LODOP.PRINT_INIT(“打印任务名”); //首先一个初始化语句,一次任务只能有一个打印任务名
  • LODOP.SET_PRINTER_INDEX(打印机序号);//选择打印机,可用序号或打印机名等方式指定打印机
  • LODOP.SET_PRINT_PAGESIZE(intOrient, PageWidth,PageHeight,strPageName);//设置纸张大小(初始化之后调用)
  • LODOP.ADD_PRINT_SETUP_BKIMG(“背景图地址”);//设置Lodop背景图(初始化之后调用)
设置打印样式相关(一次打印任务只能设置一次,打印初始化后、增加打印项之前调用本函数。)
  • LODOP.SET_PRINT_STYLE(strStyleName,varStyleValue)
  • LODOP.SET_PRINT_STYLE(strStyleName,varStyleValue)
    strStyleName:打印风格名,风格名称及其含义如下:
    “FontName”:设定纯文本打印项的字体名称。
    “FontSize”:设定纯文本打印项的字体大小。
    “FontColor”:设定纯文本打印项的字体颜色。
    “Bold”:设定纯文本打印项是否粗体。
    “Italic”:设定纯文本打印项是否斜体。
    “Underline”:设定纯文本打印项是否下滑线。
    “Alignment”:设定纯文本打印项的内容左右靠齐方式。
    “Angle”:设定纯文本打印项的旋转角度。
    “ItemType”:设定打印项的基本属性。
    “HOrient”:设定打印项在纸张内的水平位置锁定方式。
    “VOrient”:设定打印项在纸张内的垂直位置锁定方式。
    “PenWidth”:线条宽度。
    “PenStyle”:线条风格。
    “Stretch”:图片截取缩放模式。
    “PreviewOnly”:内容仅仅用来预览。
    “ReadOnly”:纯文本内容在打印维护时,是否禁止修改。
  • varStyleValue:打印风格值,相关值如下:
    FontName的值:字符型,与操作系统字体名一致,缺省是“宋体”。
    FontSize的值:数值型,单位是pt,缺省值是9,可以含小数,如13.5。
    FontColor的值:整数或字符型,整数时是颜色的十进制RGB值;字符时是超文本颜色值,可以是“#”加三色16进制值组合,也可以是英文颜色名;
    Bold的值:数字型,1代表粗体,0代表非粗体,缺省值是0。
    Italic的值:数字型,1代表斜体,0代表非斜体,缺省值是0。
    Underline的值:数字型,1代表有下划线,0代表无下划线,缺省值是0。
    Alignment的值:数字型,1–左靠齐 2–居中 3–右靠齐,缺省值是1。
    Angle的值:数字型,逆时针旋转角度数,单位是度,0度表示不旋转。
    ItemType的值:数字型,0–普通项 1–页眉页脚 2–页号项 3–页数项 4–多页项
    缺省(不调用本函数时)值0。普通项只打印一次;页眉页脚项则每页都在固定位置重复打印;页号项和页数项是特殊的页眉页脚项,其内容包含当前页号和全部页数;多页项每页都打印,直到把内容打印完毕,打印时在每页上的位置和区域大小固定一样(多页项只对纯文本有效)
    在页号或页数对象的文本中,有两个特殊控制字符:
    “#”特指“页号”,“&”特指“页数”。
    HOrient的值:数字型,0–左边距锁定 1–右边距锁定 2–水平方向居中 3–左边距和右边距同时锁定(中间拉伸),缺省值是0。
    VOrient的值:数字型,0–上边距锁定 1–下边距锁定 2–垂直方向居中 3–上边距和下边距同时锁定(中间拉伸),缺省值是0。
    PenWidth的值:整数型,单位是(打印)像素,缺省值是1,非实线的线条宽也是0。
    PenStyle的值:数字型,0–实线 1–破折线 2–点线 3–点划线 4–双点划线
    缺省值是0。
    Stretch的值:数字型,0–截取图片 1–扩展(可变形)缩放 2–按原图长和宽比例(不变形)缩放。缺省值是0。
    PreviewOnly的值:字符或数字型,1或“true”代表仅预览,否则为正常内容。
    ReadOnly的值:字符或数字型,1或“true”代表“是”,其它表示“否”,缺省值为“是”,即缺省情况下,纯文本内容在打印维护时是禁止修改的。

  • intPrinterNO: 打印设备序号,数字型,序号从0开始,最大序号是GET_PRINTER_COUNT()减1。

  • oIndexOrName 打印机名称或序号

  • strModeType显示模式的名称,字符型,如下是类型名及其含义:
    “PREVIEW_IN_BROWSE”:打印预览界面是否内嵌到网页内部。
    “SETUP_IN_BROWSE”: 打印维护界面是否内嵌到网页内部。
    “DESIGN_IN_BROWSE”:打印设计界面是否内嵌到网页内部。
    “BKIMG_IN_PREVIEW”:打印预览时是否包含背景图。
    “BKIMG_IN_FIRSTPAGE”:打印预览时是否仅首页包含背景图。
    “SETUP_ENABLESS”:打印维护界面工具显示控制(权限控制字串)
    “SKIN_TYPE”:界面皮肤类型
    “SKIN_CUSTOM_COLOR”:界面自定义皮肤颜色
    “HIDE_PBUTTIN_PREVIEW”:隐藏预览窗口的打印按钮
    “HIDE_SBUTTIN_PREVIEW”:隐藏预览窗口的打印设置按钮
    “HIDE_QBUTTIN_PREVIEW”:隐藏预览窗口的关闭按钮
    “HIDE_PBUTTIN_SETUP”:隐藏打印维护窗口的打印按钮
    “HIDE_VBUTTIN_SETUP”:隐藏打印维护窗口的预览按钮
    “HIDE_ABUTTIN_SETUP”:隐藏打印维护窗口的应用按钮
    “HIDE_RBUTTIN_SETUP”:隐藏打印维护窗口的复原按钮
    “MESSAGE_GETING_URL”:URL对象下载时的提示信息
    “MESSAGE_PARSING_URL”:URL对象解析时的提示信息
    “MESSAGE_PARSING_HTM”:HTM对象解析时的提示信息
    “MESSAGE_NOSET_PROPERTY”:打印维护界面企图进入属性设置的警示信息
    “HIDE_PAPER_BOARD”:隐藏打印预览背景进纸版的图案
    “LANDSCAPE_DEFROTATED”:横向打印的预览默认旋转90度(正向显示)
    “BKIMG_LEFT”:设置背景图位置X值
    “BKIMG_TOP”:设置背景图位置Y值
    “BKIMG_WIDTH”:设置背景图宽度
    “BKIMG_HEIGHT”:设置背景图高度
    “HIDE_PAGE_PERCENT”:隐藏整页缩放(百分比)的下拉选择框
    “LANGUAGE”:设置界面文字的语言

  • varModeValue显示模式的值,整数或字符型,相关值如下:
    PREVIEW_IN_BROWSE的值:整数或字符型,1或“1”或“True”=是,否则不是。
    SETUP_IN_BROWSE的值:整数或字符型,1或“1”或“True”=是,否则不是。
    DESIGN_IN_BROWSE的值:整数或字符型,1或“1”或“True”=是,否则不是。
    BKIMG_IN_PREVIEW的值:整数或字符型,1或“1”或“True”=是,否则不是。
    BKIMG_IN_FIRSTPAGE的值:整数或字符型,1或“1”或“True”=是,否则不是。
    SETUP_ENABLESS的值:字符型,由“1”和“0”组成的字符串,最多14个字符,
    按如下顺序控制打印维护的界面功能,“1”-允许,“0”-禁止:
    位置移动和宽高调整1+颜色选择2+字体名选择3+字大小选择4+旋角调整5+粗斜体功能条6+线型功能条7+对齐功能条8+删除功能9+页眉设置10+页脚设置11+位置锁定功能12+属性设置13+显示关闭钮(界面内嵌时)14
    缺省的SETUP_ENABLES值:“11111111000001”
    例如:如想允许操作者“删除”对象,可以执行如下语句;
    LODOP.SET_SHOW_MODE(“SETUP_ENABLES”,“11111111100001”);
    SKIN_TYPE的值:数字型,固定皮肤如下:
    0–银灰色(缺省);1–经典绿; 2–熏衣草紫;3–淡钢青;4–茶色棕;5–茶色棕;
    6–麦色;7–紫罗兰;8–天蓝;9–镀银;10–沙滩棕;11–鲜肉色;12–粉末蓝;13–钒矿色;
    14–浅绿;15–浅蓝;16–卡其布; 17–秋麒麟;18–深海绿;19–深卡其布;20–番茄桔
    SKIN_CUSTOM_COLOR的值:整数或字符型,整数时是颜色的十进制RGB值;字符时是超文本颜色值,可以是“#”加三色16进制值组合,也可以是英文颜色名。
    HIDE_PBUTTIN_PREVIEW的值:整数或字符型,1或“1”或“True”=是,否则不是。
    HIDE_SBUTTIN_PREVIEW的值:整数或字符型,1或“1”或“True”=是,否则不是。
    HIDE_QBUTTIN_PREVIEW的值:整数或字符型,1或“1”或“True”=是,否则不是。
    HIDE_PBUTTIN_SETUP的值:整数或字符型,1或“1”或“True”=是,否则不是。
    HIDE_VBUTTIN_SETUP的值:整数或字符型,1或“1”或“True”=是,否则不是。
    HIDE_ABUTTIN_SETUP的值:整数或字符型,1或“1”或“True”=是,否则不是。
    HIDE_RBUTTIN_SETUP的值:整数或字符型,1或“1”或“True”=是,否则不是。
    MESSAGE_GETING_URL的值:字符型,默认值是“正打开页面下载数据(限时5分钟)…”。
    MESSAGE_PARSING_URL的值:字符型,默认值是“下载结束,正在准备打印数据…”。
    MESSAGE_PARSING_HTM的值:字符型,默认值是空(不提示信息),当超文本内容较多,有明显等待时间时,建议设置该值。
    MESSAGE_NOSET_PROPERTY的值:字符型,默认值是“只有在设计模式下才能设置属性…”。
    HIDE_PAPER_BOARD的值:整数或字符型,1或“1”或“True”=是,否则不是。
    LANDSCAPE_DEFROTATED的值:整数或字符型,1或“1”或“True”=是,否则不是。
    BKIMG_LEFT的值:整数或字符型。整数的单位是PX,字符时可以包含具体计量单位。
    BKIMG_TOP的值:同上;
    BKIMG_WIDTH的值:同上;
    BKIMG_HEIGHT的值:同上;
    HIDE_PAGE_PERCENT的值:整数或字符型,1或“1”或“True”=是,否则不是。
    LANGUAGE的值:数字,0-简体中文 1-英文 2-繁体 3-BIG5(繁体)

猜你喜欢

转载自blog.csdn.net/qq_34664239/article/details/104993573