Web打印 第三方控件 Lodop

http://mtsoftware.v053.gokao.net/download.html

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebPrint_Lodop.aspx.cs"
    Inherits="Tree.Web.WebPrint_Lodop" %>




    无标题页

    

    
        
    

    



    
《表单一》
A B C
A01 中-001 C1x
A02 日-スの C2x
A03 韩-안녕 C3x
-----------------------------------------------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------------------



 

 

 

WEB打印控件Lodop技术手册

 

 

 

 

 

 

 

适用Lodop4.0.0.0

 

 

 

 

 

 

 

 

 

 

 


 

 

 

目      录

 

一、概述... 3

二、系统文件... 3

install_lodop.exe. 3

CheckActivX.js 4

npActiveX0712SFx31.xpi 5

三、控件参数... 5

CompanyName. 5

License. 5

LicenseA.. 5

LicenseB. 6

四、功能函数... 6

基本函数... 6

VERSION.. 6

PRINT_INIT. 6

SET_PRINT_PAGESIZE. 7

ADD_PRINT_HTM.. 8

ADD_PRINT_TABLE. 8

ADD_PRINT_URL. 9

ADD_PRINT_TEXT. 9

ADD_PRINT_RECT. 10

ADD_PRINT_ELLIPSE. 10

ADD_PRINT_LINE. 11

SET_PRINT_STYLE. 11

PREVIEW.. 13

PRINT. 13

PRINT_SETUP. 13

PRINT_DESIGN.. 14

GET_PRINTER_COUNT. 14

GET_PRINTER_NAME. 14

SET_PRINTER_INDEX.. 15

SELECT_PRINTER. 15

SET_PREVIEW_MODE. 15

ADD_PRINT_SETUP_BKIMG.. 16

GET_PRINT_INIFFNAME. 16

WRITE_FILE_TEXT. 16

GET_FILE_TEXT. 17

GET_FILE_TIME. 17

IS_FILE_EXIST. 17

扩展函数... 18

SET_PRINT_PAPER. 18

ADD_PRINT_HTML. 19

ADD_PRINT_TBURL. 19

ADD_PRINT_TEXTA.. 19

SET_PRINT_ STYLEA.. 19

SET_PRINT_TEXT_STYLEA.. 20

ADD_PRINT_SHAPE. 21

SET_PRINTER_INDEXA.. 21

PREVIEWA.. 22

PREVIEWB. 22

PRINTA.. 22

PRINTB. 23

五、打印维护和打印设计... 23

六、使用样例... 23

七、计量单位... 24

 

一、概述

Lodop是一款专业的WEB打印控件,其设计目标是简单易用、功能足够强大,开创WEB打印开发的新局面。

Lodop设计者对WEB下的打印开发任务进行了分类汇总,高度抽象,设计出仅用几个功能函数,就可实现复杂的打印任务,尽量减少使用者的知识累赘。控件发布包有3个系统文件组成,全部功能用4个控件参数和2组功能函数来实现。

    尽管我们有个理想化的目标,那就是您不用详细了解这些参数或函数,仅仅看懂几个样例文件就能很轻松地开始使用本控件,为此Lodop提供了一个足够完善的设计界面,用它可以实现大多数打印开发任务,但事实上了解这些参数和函数总还是有好处的,特别是当你的开发任务很复杂时,这就是本文目的,但愿本文档足够详细且简单明了。

    如果此前曾看过lodop的入门样例程序,本文会更容易理解!

二、系统文件

Lodop发布包内主要有如下三个文件:

install_lodop.exe

该文件是控件安装和升级的主文件,提供给用户或开发者下载安装,如果不特意拦截一般都能100%安装,对“网页插件安装难”有一定改善。如果将其复制或改名为uninstall_lodop.exe (名前加un)就可用其卸载控件。

Lodop安装后,在操作系统目录WINDOWS\system32下会安装一个OCX文件:CAOSOFT_WEB_PRINT_LODOP.OCX,有特殊需要的使用者可以将该文件自主签名,用传统的OCX安装方式发布。

CheckActivX.js

该文件是用来引导安装控件的一个JS文件,是个样例,但建议直接采用。其中CheckLodop的任务是检查控件是否安装、是否最新版本、并引导安装或升级。文件内容如下:

function CheckLodop(){

   var oldVersion=LODOP.Version;

       newVerion="4.0.0.0";

   if (oldVersion==null){

     document.write("

打印控件未安装!点击这里执行安装,安装后请刷新页面。

");

     if (navigator.appName=="Netscape")

     document.write("

(Firefox浏览器用户需先点击这里安装运行环境

");

   } else if (oldVersion

     document.write("

打印控件需要升级!点击这里执行升级,升级后请重新进入。

");

}

其中的关键点是Version函数,Lodop提供了一个“读版本号”功能,这样控件的安装和升级任务就交给JS来实现,以下是控件在页面内的调用代码,其中包含CheckLodop的利用:

以上两段代码相互配合实现了Lodop的安装、调用和升级。之所以将CheckActivX.js作为一个资源文件来部署,既可以利用浏览器的缓存减少页面内容的重复下载,同时还实现了控件发布统一管理,整个应用系统中只要这一个地方发布Lodop。其它页面直接拷贝嵌入第2段代码就可以了。

npActiveX0712SFx31.xpi

该文件是Firefox浏览器需要的安装附加文件。目前Lodop支持IE系列浏览器、Firefox系列浏览器和IE内核类浏览器(遨游、腾讯TT、麒麟、世界之窗等)及其它支持ActiveX的各类浏览器。

三、控件参数

Lodop有如下4个控件参数,主要用于软件注册,以网页插件(ActiveX)参数形式使用:

CompanyName

名称:设置注册单位名称

格式:

功能:该名称配合License实现按使用者单位名称注册。这种注册不限制域名,注册者可把Lodop用于多个WEB工程,适合软件开发公司注册。

 

License

名称:设置注册号

格式:

功能:该注册号有两项功能:

一、当CompanyName不空时,该注册号配合其实现按使用者单位名称注册。这种注册不限制域名,注册者可把Lodop用于多个WEB工程,适合软件开发公司注册。

二、当CompanyName空时,这是域名注册号之一,一般是域名的名称注册号。这种注册只限该域名使用,价格便宜,适合最终使用单位注册。

 

LicenseA

名称:设置附加注册号A

格式:

功能:当CompanyName空时,这是域名注册号之二,一般是内网IP注册号,随主注册号免费赠送。

 

LicenseB

名称:设置附加注册号B

格式:

功能:当CompanyName空时,这是域名注册号之三,一般是外网IP注册号,随主注册号免费赠送。

 

四、功能函数

Lodop的功能函数不多,但参数比较复杂。全部函数分“基本函数”和“扩展函数”两类,两类函数有类似性,基本函数使用简单,达不到要求时请使用扩展函数,二者无本质区别。

基本函数

VERSION

名称:获得软件版本号

格式:VERSION

结果:返回字符型结果

版本号有四个数字组成,样式为:X.X.X.X

 

 

 

PRINT_INIT

名称:打印初始化

格式:PRINT_INIT(strTaskName)

功能:初始化运行环境,清理异常打印遗留的系统资源,设定打印任务名。

参数:

strTaskName:

打印任务名,字符型参数,由开发者自主设定,未限制长度,字符要求符合Windows文件起名规则,Lodop会根据该名记忆相关的打印设置、打印维护信息。

若strTaskName空,控件则不保存本地化信息,打印全部由页面程序控制。

结果:返回逻辑值

返回逻辑真表示初始化成功,逻辑假表示初始化失败,失败原因有:前一个打印事务没有完成;操作系统没有打印机(驱动)等。

建议或要求:

该函数与SET_PRINT_PAPER都有初始化功能,每个打印事务至少初始化一次,建议打印程序首先调用该函数。任务名要尽量区别于其它打印任务,譬如用“XX单位_XX管理信息系统_XX子系统_XX模块_XX打印作业”字样。

不希望最终用户更改打印布局时,则设strTaskName空。

 

 

 

 

 

SET_PRINT_PAGESIZE

名称:设定纸张大小

格式:SET_PRINT_PAGESIZE(intOrient, intPageWidth,intPageHeight,strPageName)

功能:设定打印纸张为固定纸张,并设定其大小值或纸张类型名及打印方向。

参数:

intOrient:

设定打印方向,数字型,0(或其它)-默认方向1-纵(正)向打印 2-横向打印。

intPageWidth:

设定自定义纸张宽度,整数型,单位为0.1毫米。

intPageHeight:

设定自定义纸张高度,整数型,单位为0.1毫米。高或宽小于等于0时strPageName才起作用。

strPageName:

设为标准纸张,纸张类型名,字符型,只能在如下名称中选择,不限大小写:

Letter, LetterSmall, Tabloid, Ledger, Legal,Statement, Executive, 

A3, A4, A4Small, A5, B4, B5, Folio, Quarto, qr10X14, qr11X17, Note, 

Env9, Env10, Env11, Env12,Env14, Sheet, DSheet, Esheet

注:intPageWidth、intPageHeight 和strPageName都无效时,本函数对纸张大小不起作用,控件则采用所选打印机的默认纸张,但intOrient仍可起作用。

如果打印程序未采用扩展方式(SET_PRINT_PAPER)初始化,本函数所定制的纸张大小,会起到SET_PRINT_PAPER中intWidth和intHeight的相同功能。

结果:

建议或要求:

打印初始化之后调用。

如果打印纸张不固定,希望由操作者自主选择纸张时,则不要调用本函数。

 

ADD_PRINT_HTM

名称:增加超文本打印项(普通模式)

格式:ADD_PRINT_HTM(intTop,intLeft,intWidth,intHeight,strHtmlContent)

功能:增加超文本打印项,设定该打印项在纸张内的位置和区域大小,实现超文本控制打印。

参数:

intTop:

所增打印项在纸张内的上边距,整数型,单位是像素。

IntLeft:

所增打印项在纸张内的左边距,整数型,单位是像素。

intWidth:

打印区域的宽度,整数型,单位是像素。

intHeight:

打印区域的高度,整数型,单位是像素,控件按这个值自动分页。

strHtmlContent:

超文本代码内容,字符型,未限制长度。可以是一个完整的页面,也可以是代码段。

结果:无

建议或要求:

要求在打印初始化后调用,建议在画线类函数之后调用。

 

ADD_PRINT_TABLE

名称:增加表格打印项(超文本模式)

格式:ADD_PRINT_TABLE(intTop,intLeft,intWidth,intHeight,strHtml)

功能:用超文本增加一个表格打印项,设定该表格在每个纸张内的位置和区域大小。打印时只输出首个页面元素table的显示内容,当table内包含thead或tfoot时,一旦表格被分页,则每个打印页都输出表头(thead)或表尾(tfoot)。

参数:

intTop:

表格数据头(页头thead)在纸张内的上边距,整数型,单位是像素。

intLeft:

表格数据头(页头thead)在纸张内的左边距,整数型,单位是像素。

intWidth:

打印区域的宽度,整数型,单位是像素。

intHeight:

表格数据体(tbody)区域的高度,整数型,单位是像素。控件按这个值自动分页。

strHtml:

超文本代码内容,字符型,未限制长度。可以是一个完整的页面,也可以是代码段。

结果:无

建议或要求:

要求在打印初始化后调用,建议在画线类函数之后调用。

 

ADD_PRINT_URL

名称:增加超文本打印项(URL模式)

格式:ADD_PRINT_URL(intTop,intLeft,intWidth,intHeight,strURL)

功能:按URL地址增加超文本打印项,设定该打印项在纸张内的位置和区域大小。

参数:

intTop:

所增打印项在纸张内的上边距,整数型,单位是像素。

IntLeft:

所增打印项在纸张内的左边距,整数型,单位是像素。

intWidth:

打印区域的宽度,整数型,单位是像素。

intHeight:

打印区域的高度,整数型,单位是像素,控件按这个值自动分页。

strURL:

页面URL地址,字符型,未限制长度。

结果:无

建议或要求:

要求在打印初始化后调用,建议在画线类函数之后调用。

 

 

ADD_PRINT_TEXT

名称:增加纯文本打印项

格式:ADD_PRINT_TEXT(intTop,intLeft,intWidth,intHeight,strContent)

功能:增加纯文本打印项,设定该打印项在纸张内的位置和区域大小,文本内容在该区域内自动折行。

参数:

intTop:

打印项在纸张内的上边距,整数型,单位是像素。

当上边距超过纸张高度时,打印项被输出在下一页(或更下页)。

IntLeft:

打印项在纸张内的左边距,整数型,单位是像素。

intWidth:

打印区域的宽度,整数型,单位是像素。

intHeight:

打印区域的高度,整数型,单位是像素。

strContent:

纯文本内容,字符型,未限制长度。

结果:无

建议或要求:

要求在打印初始化后调用,建议在画线类函数之后调用。

 

 

ADD_PRINT_RECT

名称:增加矩形线

格式:ADD_PRINT_RECT(intTop, intLeft, intWidth, intHeight,intLineStyle, intLineWidth)

功能:增加矩形线打印项,设定该矩形在纸张内的位置和大小,设定线条的类型和线条宽度。

参数:

intTop:

该矩形在纸张内的上边距,整数型,单位是像素。

当上边距超过纸张高度时,打印项被输出在下一页(或更下页)。

IntLeft:

该矩形在纸张内的左边距,整数型,单位是像素。

intWidth:

该矩形的宽度,整数型,单位是像素。

intHeight:

该矩形的高度,整数型,单位是像素,宽和高相等时是正方形。

intLineStyle:

线条类型,数字型,0(或其它)代表实线 1-破折线 2-点线 3-点划线 4-双点划线

缺省线条是实线。

intLineWidth:

线条宽,整数型,单位是像素,缺省值是1px,非实线的线条宽也是1px。

结果:无

建议或要求:

要求在打印初始化后调用,建议在文本类函数之前调用。

 

 

ADD_PRINT_ELLIPSE

名称:增加椭圆线

格式:

ADD_PRINT_ELLIPSE(intTop, intLeft, intWidth, intHeight, intLineStyle, intLineWidth)

功能:增加椭圆线打印项,设定该椭圆在纸张内的位置和大小,设定线条的类型和线条宽度。

参数:

intTop:

该椭圆的外缘矩形在纸张内的上边距,整数型,单位是像素。

当上边距超过纸张高度时,打印项被输出在下一页(或更下页)。

IntLeft:

该椭圆的外缘矩形在纸张内的左边距,整数型,单位是像素。

intWidth:

该椭圆的外缘矩形的宽度,整数型,单位是像素。

intHeight:

该椭圆的外缘矩形的高度,整数型,单位是像素,宽和高相等时是圆。

intLineStyle:

线条类型,数字型,0(或其它)代表实线 1-破折线 2-点线 3-点划线 4-双点划线

缺省线条是实线。

intLineWidth:

线条宽,整数型,单位是像素,缺省值是1px,非实线的线条宽也是1px。

结果:无

建议或要求:

要求在打印初始化后调用,建议在文本类函数之前调用。

 

 

 

ADD_PRINT_LINE

名称:增加直线

格式:

ADD_PRINT_LINE(intTop1, intLeft1, intTop2, intLeft2,intLineStyle, intLineWidth)

功能:增加直线,设定直线的两个端点,设定直线的线条类型和线宽。

参数:

intTop1:

端点1的上边距,整数型,单位是像素。

当上边距超过纸张高度时,打印项被输出在下一页(或更下页)。

intLeft1:

端点1的左边距,整数型,单位是像素。

IntTop2:

端点2的上边距,整数型,单位是像素。

当上边距超过纸张高度时,打印项被输出在下一页(或更下页)。

IntLeft2:

端点2的左边距,整数型,单位是像素。

intLineStyle:

线条类型,数字型,0(或其它)代表实线 1-破折线 2-点线 3-点划线 4-双点划线

缺省线条是实线。

intLineWidth:

线条宽,整数型,单位是像素,缺省值是1px,非实线的线条宽也是1px。

结果:无

建议或要求:

要求在打印初始化后调用,建议在文本类函数之前调用。

 

SET_PRINT_STYLE

名称:设置打印项风格

格式:

SET_PRINT_STYLE(strStyleName,varStyleValue)

功能:设置打印项的输出风格,成功执行该函数,此后再增加的打印项按此风格输出。

参数:

strStyleName:打印风格名,风格名称及其含义如下:

“FontName”: 设定文本打印项的字体名称。

“FontSize”: 设定文本打印项的字体大小。

“FontColor”: 设定文本打印项的字体颜色。

“Bold”: 设定文本打印项是否粗体。

“Italic”: 设定文本打印项是否斜体。

“Underline”: 设定文本打印项是否下滑线。

“Alignment”: 设定文本打印项的内容左右靠齐方式。

“Angle”: 设定文本打印项的旋转角度。

“ItemType”:设定打印项的基本属性。

“HOrient”:设定打印项在纸张内的水平位置锁定方式。

“VOrient”:设定打印项在纸张内的垂直位置锁定方式。

“PenWidth”:线条宽度。

“PenStyle”:线条风格。

varStyleValue:打印风格值,相关值如下:

FontName的值: 字符型,与操作系统字体名一致,缺省是“宋体”。

 

FontSize的值:数字型,单位是pt,缺省值是9。

 

FontColor的值:整数型,颜色的十进制RGB值。

 

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的值:整数型,单位是像素,缺省值是1px,非实线的线条宽也是1px。

 

PenStyle的值:数字型,0(或其它)代表实线 1-破折线 2-点线 3-点划线 4-双点划线

缺省线条是实线。

结果:

建议或要求:

打印初始化后、增加打印项之前调用本函数。

 

 

 

PREVIEW

名称:打印预览

格式:PREVIEW()

功能:打印预览输出页。

参数:

结果:弹出打印预览界面,详见打印预览说明。

建议或要求:

建立打印页之后运行。

 

 

PRINT

名称:直接打印

格式:PRINT()

功能:不经打印预览的直接打印。

参数:无

结果:打印机开始实际打印,返回逻辑结果,正确打印时返回真,打印出错时返回假。

建议或要求:

建立打印页之后运行。

 

 

 

PRINT_SETUP

名称:打印维护

格式:PRINT_SETUP()

功能:对整页的打印布局和打印风格进行界面维护,它与打印设计的区别是不具有打印项增删功能,目标使用者是最终用户。

参数:

结果:弹出打印维护界面,详见打印维护说明。

建议或要求:

建立打印页之后运行。

 

 

 

 

 

PRINT_DESIGN

名称:打印设计

格式:PRINT_DESIGN ()

功能:对整页的打印布局和打印风格进行界面设计,它与打印维护的区别是具有打印项增删功能,目标使用者是开发者。

参数:

结果:弹出打印设计界面,详见打印设计说明。

建议或要求:

建立打印页之后运行。

 

 

GET_PRINTER_COUNT

名称:获得打印设备个数

格式:GET_PRINTER_COUNT()

功能:获得操作系统内打印设备的个数。

参数:

结果:返回数字

返回数字结果表示操作系统内的打印设备个数,0表示失败或无打印设备。

建议或要求:

任何时间调用均可。

 

 

GET_PRINTER_NAME

名称:获得打印设备名称

格式:GET_PRINTER_NAME(intPrinterNO)

功能:按打印设备序号获得其名称。

参数:

intPrinterNO:

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

结果:返回字符

返回字符结果表示操作系统内的打印设备的名称,空表示失败或无该设备。

建议或要求:

任何时间调用均可。

 

 

 

SET_PRINTER_INDEX

名称:指定打印设备

格式:SET_PRINTER_INDEX(intIndex)

功能:指定用某打印设备输出。

参数:

intIndex:

所指定打印设备的序号,数字型,序号从0开始,最大序号是GET_PRINTER_COUNT()减1。

结果:返回逻辑值

返回逻辑真表示指定成功,逻辑假表示指定失败,失败原因有:该打印设备不存在。

建议或要求:

直接打印前或打印预览前调用。

 

SELECT_PRINTER

名称:选择打印设备

格式:SELECT_PRINTER

功能:弹出界面选定某打印设备为固定输出设备。

参数:

结果:返回数字

返回数字结果表示选定的设备序号,返回-1表示放弃选择,没有任何动作。

建议或要求:

直接打印前或打印预览前调用。本函数与SET_PRINTER_INDEX的功能效果一样。

 

SET_PREVIEW_MODE

名称:设置预览模式

格式:SET_PREVIEW_MODE (intMode)

功能:设置预览界面弹出时的缺省显示模式。

参数:intMode预览模式,数字型,0-适高模式1-正常大小模式2-适宽模式。
结果:

建议或要求:

直接打印前或打印预览前调用。

 

 

 

ADD_PRINT_SETUP_BKIMG

名称:指定背景图

格式:ADD_PRINT_SETUP_BKIMG(strImgHtml)

功能:用程序方式指定打印维护或打印设计的背景图。

参数:

strImgHtml:

获得背景图的超文本代码,字符型,一般用IMG标签方式传送图片的URL和大小,URL要求用全路径。

结果:

建议或要求:

任何时间调用均可。

 

 

GET_PRINT_INIFFNAME

名称:获得配置文件名

格式:GET_PRINT_INIFFNAME (strPrintTask)

功能:获得某打印任务的本地配置文件全路径名。

参数:

strPrintTask:

打印任务名,字符型,即初始化时所设的任务名。

结果:返回字符

返回字符结果表示本地配置文件全路径名(并非文件内容),空表示失败。

建议或要求:

在初始化之后调用。

 

WRITE_FILE_TEXT

名称:写本地文件内容

格式:WRITE_FILE_TEXT(intWriteMode,strFileName, strText)

功能:向本地文件写入文本内容。

参数:

intWriteMode:

写入模式,数字型,0(或其它)-文件覆盖模式 1-文件尾追加模式 2-文件首插入模式。

strFileName:

本地文件名,字符型,文件名包含全路径。

strText:

写入的文本内容,字符型。

结果:调用函数后控件启动安全提示,等待操作许可。

返回字符值表示写入情况:

“ok”-写入成功

“file not exist”-文件不存在

“do nothing”-未写入,一般原因有:操作者禁止读写、文件只读属性等

建议或要求:

任何时间调用。

 

 

GET_FILE_TEXT

名称:读本地文件内容

格式:GET_FILE_TEXT(strFileName)

功能:读本地文件文本内容。

参数:

strFileName:

本地文件名,字符型,含全路径。

结果:调用函数后控件启动安全提示,等待操作许可。

返回字符值,文本内容。

返回空原因:文件不存在;内容真实空;操作者禁止读写;

建议或要求:

任何时间调用。

GET_FILE_TIME

名称:读本地文件时间

格式:GET_FILE_TIME (strFileName)

功能:读本地文件最后修改时间。

参数:

strFileName:

本地文件名,字符型,含全路径。

结果:返回字符值,最后修改时间,时间样式:yyyy-mm-dd hh:mm:ss。

返回空原因:文件不存在;

建议或要求:

任何时间调用。

IS_FILE_EXIST

名称:判断本地文件是否存在

格式:IS_FILE_EXIST (strFileName)

功能:判断本地文件是否存在。

参数:

strFileName:

本地文件名,字符型,含全路径。

结果:返回逻辑值,逻辑真表示文件存在,逻辑假表示文件不存在。

建议或要求:

任何时间调用。

 

 

扩展函数

SET_PRINT_PAPER

名称:(扩展型)打印初始化

格式:SET_PRINT_PAPER(intTop,intLeft,intWidth,intHeight,strPrintName)

功能:打印初始化、设定纸张整体偏移量、设定可视编辑区域大小

参数:

intTop:

整页上边距,整数型,单位是像素,不设置时(用PRINT_INIT初始化)缺省值为0。

IntLeft:

整页左边距,整数型,单位是像素,不设置时(用PRINT_INIT初始化)缺省值为0。

IntWidth:

可视编辑区域的宽度,整数型,单位是像素,不设置时(用PRINT_INIT初始化)缺省为800px

intHeight:

可视编辑区域的高度,整数型,单位是像素,不设置时(用PRINT_INIT初始化)缺省为600px

strPrintName:

打印任务名,同PRINT_INIT 的strTaskName。

结果:返回逻辑值

    返回逻辑真表示初始化成功,逻辑假表示初始化失败,失败原因有:前一个打印事务没有完成;操作系统没有打印机(驱动)等

建议或要求

该函数与PRINT_INIT都有初始化功能,建议和要求同PRINT_INIT。

如果打印页有上边距或左边距要求,或可视编辑区域大小用实际纸张大小不合适时,调用本函数。

 

 

ADD_PRINT_HTML

名称:增加超文本打印项(图形模式)

格式:ADD_PRINT_HTML(intTop,intLeft,intWidth,intHeight, strHtmlContent)

功能:增加超文本打印项,设定该打印项在纸张内的位置和区域大小,实现超文本控制打印。

参数:同ADD_PRINT_HTML

结果:无

建议或要求:

图形模式打印速度快,但不适合要求文本打印质量高的情况,特别是面对针式打印机。

 

ADD_PRINT_TBURL

名称:(扩展型)增加表格打印项(URL模式)

格式:ADD_PRINT_TBURL(intTop,intLeft,intWidth,intHeight,strURL)

功能:按URL地址增加一个超文本表格打印项,只输出第一个table元素显示内容。

功能同ADD_PRINT_TABLE

参数:同ADD_PRINT_URL

 

结果:无

建议或要求:

要求在打印初始化后调用,建议在画线类函数之后调用。

 

ADD_PRINT_TEXTA

名称:(扩展型)增加纯文本打印项

格式:ADD_PRINT_TEXTA(strItemName,intTop,intLeft,intWidth,intHeight,strContent)

功能:同函数ADD_PRINT_TEXT。

参数:

strItemName:

所增纯文本打印项的项目名,字符型,未限制长度。

其它参数同函数ADD_PRINT_TEXT。

结果:同函数ADD_PRINT_TEXT。

建议或要求:

建议和要求同函数ADD_PRINT_TEXT。当打印项序号比较难以控制时,用本函数。

 

 

 

SET_PRINT_STYLEA

名称:(扩展型) 设置打印项风格A

格式:

SET_PRINT_ STYLEA(varItemNameID, strStyleName,varStyleValue)

功能:类似函数SET_PRINT_ STYLE的功能,二者的区别是本函数只对某打印项有效。

参数:

varItemNameID:要设置的目标项序号或项目名,数字型或字符型。

l  数字型时,表示是序号,以其增加的先后自然顺序为准,从1开始,所有打印对象都参与排序,包括超文本、纯文本、矩形线、椭圆线、直线等。

l  字符型时,表示是打印项的项目名,见ADD_PRINT_TEXTA的strItemName

 

其它参数同函数SET_PRINT_STYLE。

结果:同函数SET_PRINT_ STYLE。

建议或要求:

同函数SET_PRINT_ STYLE。

 

 

SET_PRINT_TEXT_STYLEA

名称:(扩展型)设置文本风格A

格式:

SET_PRINT_TEXT_STYLEA(varItemNO,strFontName,intSize,intBold,intItalic,intUnderline, intAlign,intColor)

功能:设置某纯文本项的打印风格。

参数:

varItemNO:要设置的目标项序号或项目名,数字型或字符型。

l  数字型时,表示是序号,以其增加的先后自然顺序为准,从1开始,所有打印对象都参与排序,包括超文本、纯文本、矩形线、椭圆线、直线等。

l  字符型时,表示是打印项的项目名,见ADD_PRINT_TEXTA的strItemName

StrFontName:

设定该文本打印项的字体名,字符型,与操作系统字体名一致,缺省(不调用本函数时)字体是“宋体”。

IntSize:

设定该文本打印项的字体大小,数字型,单位是pt,缺省值是9。

IntBold:

设定该文本打印项是否粗体,数字型,1代表粗体,0(或非1)代表非粗体,缺省值是0。

IntItalic:

设定该文本打印项是否斜体,数字型,1代表斜体,0(或非1)代表非斜体,缺省值是0。

IntUnderline:

设定该文本打印项是否下划线,数字型,1代表有下划线,0(或非1)代表无下划线,缺省值是0。

IntAlign:

文本内容在打印区域内靠齐方式,数字型,1(或其它)-左靠齐 2-居中 3-右靠齐,缺省值是1。

intColor:

打印项的颜色,整数型,颜色的十进制RGB值。

结果:

建议或要求:

要求在目标对象增加(ADD_PRINT_TEXT)后调用本函数。

 

 

 

ADD_PRINT_SHAPE

名称:(扩展型)增加图形

格式:

ADD_PRINT_SHAPE(intShapeType, intTop, intLeft,intWidth,intHeight,intLineStyle, intLineWidth, intColor)

功能:增加矩形框、椭圆、直线等图形打印项,设定该图形在纸张内的位置和大小,设定线条的类型和线条宽度。

参数:

intShapeType:

该图形的类型,数字型参数。0(或其它)-仰角直线 1-俯角直线 2-矩形框线 3-椭圆线 4-实心矩形 5-实心椭圆

intTop:

该图形在纸张内的上边距,整数型,单位是像素。

当上边距超过纸张高度时,打印项被输出在下一页(或更下页)。

IntLeft:

该图形在纸张内的左边距,整数型,单位是像素。

intWidth:

该图形(直线的外缘矩形或椭圆的外缘矩形)的宽度,整数型,单位是像素。

intHeight:

该图形(直线的外缘矩形或椭圆的外缘矩形)的高度,整数型,单位是像素。

intLineStyle:

线条类型,数字型,0(或其它)代表实线 1-破折线 2-点线 3-点划线 4-双点划线

缺省线条是实线。

intLineWidth:

线条宽,整数型,单位是像素,缺省值是1px,非实线的线条宽也是1px。

结果:无

建议或要求:

要求在打印初始化后调用,建议在文本类函数之前调用。

 

 

SET_PRINTER_INDEXA

名称:(扩展型)指定打印设备

格式:SET_PRINTER_INDEXA (strPrinterName)

功能:同函数SET_PRINTER_INDEX。按名称指定打印设备。

参数:

strPrinterName:

打印设备名称,字符型。注:函数GET_PRINTER_NAME可获得打印设备名。

结果:同函数SET_PRINTER_INDEX。

建议或要求:

同函数SET_PRINTER_INDEX。

 

PREVIEWA

名称:(扩展型)打印预览A

格式:PREVIEWA ()

功能:同函数PREVIEW。预览前提示选择打印机。

参数:同函数PREVIEW。

结果:同函数PREVIEW。

建议或要求:

同函数PREVIEW。

 

 

PREVIEWB

名称:(扩展型)打印预览B

格式:PREVIEWB ()

功能:同函数PREVIEW。强制用缺省布局风格来打印预览。

参数:同函数PREVIEW。

结果:同函数PREVIEW。

建议或要求:

同函数PREVIEW。不希望最终使用者改变打印布局和风格时调用本函数。

 

PRINTA

名称:(扩展型)直接打印A

格式:PRINTA ()

功能:同函数PRINT。打印前提示选择打印机。

参数:同函数PRINT。

结果:同函数PRINT。返回逻辑结果,当真实打印时返回真,放弃打印或打印出错时返回假。

建议或要求:

同函数PRINTA。

 

PRINTB

名称:(扩展型)直接打印B

格式:PRINTB ()

功能:同函数PRINT。强制用缺省布局风格来打印。

参数:同函数PRINT。

结果:同函数PRINT。

建议或要求:

同函数PRINT。不希望最终使用者改变打印布局和风格时调用本函数。

五、打印维护和打印设计

打印设计的目标用户是软件开发者,详细功能解释略。

打印维护的目标用户是页面操作者,详细功能解释略。

六、使用样例

演示样例清单如下:样例内容参见发行包

1.

如何在页面内嵌入控件见样例一

2.

如何裁剪打印当前页面内容见样例二

3.

如何用代码生成打印页见样例三

4.

如何打印设计和定位套打见样例四

5.

如何控制纸张大小见样例五

6.

如何打印多页长文档见样例六

7.

如何定向输出见样例七

8.

如何打印图片见样例八

9.

如何用程序加载打印维护背景图见样例九

10

如何控制打印样式(STYLE)见样例十

11

如何打印条码图案见样例十一

12

如何读写本地文件见样例十二

13

如何打印旋转内容见样例十三

七、计量单位

本文所述像素单位换算如下:

1英寸=2.54厘米=25.4毫米=96像素(固定)

 

<完>

你可能感兴趣的:(JS,打印)