PRINT_INIT(strPrintTaskName);//初始化并指定打印任务名是strPrintTaskName
PREVIEW();//打印预览
PRINT();//直接打印
PRINTA(); //选择打印机
PRINT_SETUP();//打印维护 **内容可也自动调整
PRINT_DESIGN();//打印设计
ADD_PRINT_HTM(0,0,"100%","100%",document.documentElement.innerHTML);//打印整个页面
/*intOrient:打印方向及纸张类型
值为1--纵向打印,固定纸张;
值为2--横向打印,固定纸张;
值为3--纵向打印,固定宽度,高度按打印内容的高度自适应;
0(或其它)----打印方向由操作者自行选择或按打印机缺省设置。
intPageWidth:
纸张宽
intPageHeight:
固定纸张时该参数是纸张高;高度自适应时该参数是纸张底边的空白高,计量单位与纸张宽一样。
strPageName:
纸张名,必须intPageWidth等于0时本参数才有效,选择有A5,A4,A3等等。
*/
SET_PRINT_PAGESIZE(intOrient,intPageWidth,intPageHeight,strPageName);
ADD_PRINT_HTM(intTop,intLeft,intWidth,intHeight,strHtml);//增加超文本项
ADD_PRINT_TEXT(intTop,intLeft,intWidth,intHeight,strContent);//增加纯文本项
/*intShapeType:该图形的类型,数字型参数。0--仰角直线 1--俯角直线 2--矩形框线 3--椭圆线 4--实心矩形 5--实心椭圆
Top:
该图形在纸张内的上边距,整数或字符型,整数时缺省长度单位为px。
字符型时可包含单位名:in(英寸)、cm(厘米) 、mm(毫米) 、pt(磅)、px(1/96英寸) 、%(百分比),如“10mm”表示10毫米。
当上边距超过纸张高度时,打印项被输出在下一页(或更下页)。
Left:
该图形在纸张内的左边距,整数或字符型,整数时缺省长度单位为px。
字符型时可包含单位名:in(英寸)、cm(厘米) 、mm(毫米) 、pt(磅)、px(1/96英寸) 、%(百分比),如“10mm”表示10毫米。
Width:
该图形(直线的外缘矩形或椭圆的外缘矩形)的宽度,整数或字符型,整数时缺省长度单位为px。
字符型时可包含单位名:in(英寸)、cm(厘米) 、mm(毫米) 、pt(磅)、px(1/96英寸) 、%(百分比),如“10mm”表示10毫米。
Height:
该图形(直线的外缘矩形或椭圆的外缘矩形)的高度,整数或字符型,整数时缺省长度单位为px。
字符型时可包含单位名:in(英寸)、cm(厘米) 、mm(毫米) 、pt(磅)、px(1/96英寸) 、%(百分比),如“10mm”表示10毫米。
intLineStyle:
线条类型,数字型,0--实线 1--破折线 2--点线 3--点划线 4--双点划线,缺省线条是实线。
intLineWidth:
线条宽,整数型,单位是(打印)像素,缺省值是1,非实线的线条宽也是0。
varColor:
图形的颜色,整数或字符型,整数时是颜色的十进制RGB值;字符时是超文本颜色值,可以是“#”加三色16进制值组合,也可以是英文颜色名;
*/
ADD_PRINT_SHAPE(intShapeType, Top, Left,Width,Height,intLineStyle,intLineWidth, varColor);
/*
边框离纸张顶端10px(px是绝对值长度,等于1/96英寸,下同)距左边55px、宽360px、高220px、
框为实线(0-实线 1-破折线 2-点线 3-点划线 4-双点划线)、线宽为1px
第一个参数:距顶端10px
第二个参数:距左边55px
第三个参数:宽360px
第四个参数:高220px
第五个参数:框线类型:0-实线 1-破折线 2-点线 3-点划线 4-双点划线
第六个参数:线宽为1px
*/
ADD_PRINT_RECT(10,55,360,220,0,1);
/*
该语句可使输出以纸张边缘为基点
*/
SET_PRINT_MODE("POS_BASEON_PAPER",true);
/*
打印机的数量
*/
GET_PRINTER_COUNT();
/*
得到打印机的名称i代表第几
*/
LODOP.GET_PRINTER_NAME(i);
/*
打印机设置为操作系统的默认打印机,成功返回OK,否则返回错误信息。
*/
SET_PRINT_MODE("WINDOW_DEFPRINTER",打印机名称或序号);
/*
指定纸张
*/
GET_PAGESIZES_LIST(getSelectedPrintIndex(),"\n");
SET_PRINT_MODE("WINDOW_DEFPAGESIZE:打印机名称或序号",纸张名称);
/*
文本内容行左右对齐(允许标点溢出,且英文单词拆开)
*/
SET_PRINT_STYLEA(0,"TextNeatRow",true);
/*
*控制打印机自带双面打印(所谓自动双面)功能和纸张来源
*/
SET_PRINT_MODE("PRINT_DUPLEX",2);//0-不控制 1-不双面 2-双面(长边装订) 3-小册子双面(短边装订_长边水平)
SET_PRINT_MODE("PRINT_DEFAULTSOURCE",1);//1-纸盒 4-手动 7-自动 0-不控制
/*
如打印机无双面打印功能,也可手工实现,此时需如下语句(Lodop提供了暂停时间翻纸)
*/
SET_PRINT_MODE("DOUBLE_SIDED_PRINT",true);
GET_PRINTER_COUNT();//打印机数量
GET_PRINTER_NAME(index); //根据号数获取打印机名字
SET_PRINT_COPIES(intCopies);//设置打印的份数intCopies
SET_PRINT_MODE("RESELECT_XXX",true);//语句允许操作者在打印预览里重选
/*打印图片*/
ADD_PRINT_IMAGE(30,150,400,400,"");//打印网络图片
ADD_PRINT_IMAGE(200,150,260,150,"C:/test.jpg"); //打印本地图片
SET_PRINT_STYLEA(0,"Stretch",1);//(可变形)扩展缩放模式
SET_PRINT_STYLEA(0,"Stretch",2);//按原图比例(不变形)缩放模式
ADD_PRINT_SETUP_BKIMG(strHtmFile);//这里 strHtmFile可以是WEB图片,也可以是本地图片
GET_DIALOG_VALUE("LocalFileFullName","*.jpg;*.bmp;.jpeg");//得到图片的名字
SET_SHOW_MODE("BKIMG_PRINT",1);//打印(和预览)时包含背景图
/*********************************************************
如何打印条形码
**********************************************************/
/*
Width 条码的总宽度,计量单位px(1px=1/96英寸)
Height 条码的总高度(一维条码时包括文字高度)
BarCodeType 条码的类型(规制)名称
BarCodeValue 条码值
*/
ADD_PRINT_BARCODE(Top,Left,Width,Height,BarCodeType,BarCodeValue);
/********************************************************
通过控件读写本地文件
********************************************************/
GET_FILE_TEXT(strFileName);//获取文件内容
/*
intWriteMode:0或者其它-覆盖模式 1-追加模式 2-插入模式
*/
WRITE_FILE_TEXT(intWriteMode,strFileName,strText);
IS_FILE_EXIST(strFileName);//判断文件是否存在
GET_FILE_TIME(strFileName);//获得文件最后修改时间(格式:yyyy-mm-dd hh:mm:ss)
GET_PRINT_INIFFNAME(strPrintTaskName);//获得“打印维护”的配置文件名
/**************************************************************
页内部分内容旋转
****************************************************************/
/*
*第一个参数:打印对象的序号或名称(0代表最后一个)
第二个参数:风格名称,这里为"Angle"
第三个参数:逆时针转角度数,单位是度,0代表不旋转,可设置任意角度旋转
*/
SET_PRINT_STYLEA(varItemNameID,strStyleName,varStyleValue);//纯文本内容旋转的设置函数
/*
超文本旋转用writeing-mode:tb-rl这个样式(Style),只能旋转90度。
*/
function CreateOneFormPage(){
LODOP=getLodop();
LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_内容旋转");
LODOP.SET_PRINT_STYLE("FontName","黑体");
LODOP.SET_PRINT_STYLE("FontSize",15);
LODOP.ADD_PRINT_TEXT(71,162,120,35,"正常内容");
LODOP.ADD_PRINT_TEXT(232,355,325,34,"纯文本逆时针旋转90度\n");
LODOP.SET_PRINT_STYLEA(0,"Angle",90);
LODOP.ADD_PRINT_TEXT(181,161,346,34,"纯文本逆时针旋转45度\n");
LODOP.SET_PRINT_STYLEA(0,"Angle",45);
LODOP.ADD_PRINT_HTM(230,98,163,200,"
writing-mode: tb-rl;\">旋转90度 | \n正常 超文本 内容 | \n
};
/****************************************
打印有页头页尾的表格
*****************************************/
ADD_PRINT_TABLE(intTop,intLeft,intWidth,intheight,strHTML);//用超文本打印
ADD_PRINT_TBURL(intTop,intLeft,intWidth,intheight,strURL);//按URL地址打印
//在横向的A4纸张内“满页”预览打印
function PrintInFullPage(){
LODOP=getLodop();
LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_整页表格");
LODOP.SET_PRINT_PAGESIZE(2,0,0,"A4");
LODOP.ADD_PRINT_TABLE("2%","1%","96%","98%",document.getElementById("div1").innerHTML);
LODOP.SET_PREVIEW_WINDOW(0,0,0,800,600,"");
LODOP.PREVIEW();
};
/**********************************************
设置各种样式的打印预览窗口
***********************************************/
/*
intDispMode:预览比例,数字型,0-适度高 1-正常大小 2-适度宽
intToolMode:工具条和按钮,数字型 0-显示(上方)工具栏 1-显示(下方)按钮栏 2-两个都显示3-两个都不显示
blDirectPrint:打印按钮是否“直接打印” 1-是 0-否(弹出界面“选择打印”)
intWidth,intHeight 窗口的宽和高,整数型,单位px
strTitleButtonCaption:预览窗口和打印按钮的名称组合,字符型,用“点”分隔
*/
SET_PREVIEW_WINDOW(intDispMode,intToolMode,blDirectPrint,intWidth,intHeight,strTitleButtonCaptoin);
SET_SHOW_MODE("HIDE_PAPER_BOARD",1);//底图上有模拟走纸板的条纹线,可以隐藏该条线
SET_SHOW_MODE("LANDSCAPE_DEFROTATED",1);//横向时的正向显示
SET_PRINT_MODE("AUTO_CLOSE_PREWINDOW",1);//打印后自动关闭预览窗口
SET_SHOW_MODE("SHOW_SCALEBAR",true);//语句控制显示标尺(需高级注册才行)
//用SET_SHOW_MODE可隐藏预览窗口中的“打印”、“设置”、“关闭”按钮和“缩放比例”等
SET_SHOW_MODE("HIDE_PBUTTIN_PREVIEW",1);//隐藏打印按钮
SET_SHOW_MODE("HIDE_SBUTTIN_PREVIEW",1);//隐藏设置按钮
SET_SHOW_MODE("HIDE_PAGE_PERCENT",1);//隐藏缩放比例下拉选框
SET_SHOW_MODE("HIDE_QBUTTIN_PREVIEW",1);//隐藏关闭按钮
SET_SHOW_MODE("PREVIEW_NO_MINIMIZE",1);//禁止预览窗口最小化并始终显示在最前面
/*********************************************************************
强制分页打印预览多张卡片
**********************************************************************/
/*通常情况下,当对象位置超出纸张高度时,该对象会被自动打印到下一页甚至更下一页,
但如果纸张高度不确定时,可以用NewPage函数直接强制在新一页的固定位置输出。
*/
function CreateAllPages(){
for (i = 1; i < 8; i++) {
LODOP.NewPage();//产生新的一页
LODOP.ADD_PRINT_RECT(10,18,128,160,0,1);
LODOP.ADD_PRINT_TEXT(31,33,111,20,"商品编号:"+document.getElementById("BH"+i).value);
LODOP.ADD_PRINT_TEXT(69,33,111,20,"商品名称:"+document.getElementById("MC"+i).value);
LODOP.ADD_PRINT_TEXT(107,33,111,20,"商品数量:"+document.getElementById("SL"+i).value);
LODOP.ADD_PRINT_TEXT(146,33,111,20,"商品单价:"+document.getElementById("DJ"+i).value);
}
};
/*****************************************************
如何控制打印维护的功能权限
*****************************************************/
function MyDesign4() {
LODOP=getLodop();
LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_设计维护界面隐藏工具栏");
LODOP.ADD_PRINT_TEXT(90,300,236,35,"隐藏了工具栏和纸钉按钮");
LODOP.SET_SHOW_MODE("HIDE_TOOLS_DESIGN",1); //隐藏整个工具栏
LODOP.SET_SHOW_MODE("HIDE_GROUND_LOCK",1); //隐藏纸钉按钮
LODOP.PRINT_DESIGN();
};
function MySetup5() {
LODOP=getLodop();
LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_打印维护隐藏功能按钮");
LODOP.ADD_PRINT_TEXT(90,300,236,35,"隐藏了应用和预览等功能按钮");
LODOP.SET_SHOW_MODE("HIDE_ABUTTIN_SETUP",1);//隐藏应用按钮
LODOP.SET_SHOW_MODE("HIDE_RBUTTIN_SETUP",1);//隐藏复原按钮
LODOP.SET_SHOW_MODE("HIDE_VBUTTIN_SETUP",1);//隐藏预览按钮
LODOP.SET_SHOW_MODE("HIDE_PBUTTIN_SETUP",1);//隐藏打印按钮
LODOP.SET_SHOW_MODE("SETUP_ENABLESS",getCheckSS());
LODOP.SET_SHOW_MODE("HIDE_DISBUTTIN_SETUP",1);//隐藏那些无效按钮
LODOP.PRINT_SETUP();
};
var iThisNumber=LODOP.GET_VALUE("PREVIEW_PAGE_NUMBER",0);//获得当前页号
LODOP.SET_PRINT_MODE("PRINT_PAGE_PERCENT","Full-Page");//按整页缩放
LODOP.SET_SHOW_MODE("HIDE_PAPER_BOARD",true);//隐藏走纸板
LODOP.SET_PREVIEW_WINDOW(0,3,0,0,0,""); //隐藏工具条,设置适高显示
LODOP.SET_SHOW_MODE("PREVIEW_IN_BROWSE",true); //预览界面内嵌到页面内
var iPageCount=LODOP.GET_VALUE("PREVIEW_PAGE_COUNT",0);//获得页数
/**************************************************************
如何选择界面皮肤
*************************************************************/
LODOP.SET_PREVIEW_WINDOW(0,0,0,760,540,"");
LODOP.SET_SHOW_MODE("SKIN_TYPE",getSkinType());//getSkinType()返回的是一个数字
LODOP.SET_SHOW_MODE("SKIN_CUSTOM_COLOR",自定义颜色);//例如#000000 黑色
/*
*参数含义:
varItemNameID 打印对象的序号或名称,0表示最新对象
strStyleName 控制关键字,“PageIndex”表示输出,“PageUnIndex”表示禁止
varStyleValue控制字的值,first:第一页 last:最后页 odd:奇数页
even:偶数页或具体某页号(也可用表达式)
*/
SET_PRINT_STYLEA(varItemNameID,strStyleName,varStyleValue);
function CreatePages(){
LODOP=getLodop();
LODOP.PRINT_INIT("打印控件Lodop功能演示_多页预览");
LODOP.ADD_PRINT_TEXT(13,22,295,110,"有规则重复的内容");
LODOP.SET_PRINT_STYLEA(0,"FontColor","#808080");
LODOP.SET_PRINT_STYLEA(0,"ItemType",1);
LODOP.SET_PRINT_STYLEA(0,"Angle",45);
LODOP.SET_PRINT_STYLEA(0,"Repeat",true);
for (i = 1; i <= 6; i++) {
LODOP.NewPage();
LODOP.ADD_PRINT_TEXT(30,100,200,20,"第"+i+"页的正常内容");
}
LODOP.ADD_PRINT_RECT(10,18,400,300,0,1);
LODOP.SET_PRINT_STYLEA(0,"ItemType",1); //眉脚
LODOP.SET_PRINT_STYLEA(0,"PageUnIndex","Last");
LODOP.ADD_PRINT_TEXT(100,33,200,20,"仅在首页才输出的内容");
LODOP.SET_PRINT_STYLEA(0,"PageIndex","first");
LODOP.ADD_PRINT_TEXT(130,33,200,20,"仅在奇数页才输出的内容");
LODOP.SET_PRINT_STYLEA(0,"PageIndex","odd");
LODOP.ADD_PRINT_TEXT(160,33,200,20,"仅在偶数页才输出的内容");
LODOP.SET_PRINT_STYLEA(0,"PageIndex","even");
LODOP.ADD_PRINT_TEXT(190,33,200,20,"仅在尾页才输出的内容");
LODOP.SET_PRINT_STYLEA(0,"PageIndex","last");
LODOP.ADD_PRINT_TEXT(220,33,300,20,"在某些页(第3页和倒数第2页)才输出的内容");
LODOP.SET_PRINT_STYLEA(0,"PageIndex","3,Last-1");
LODOP.ADD_PRINT_TEXT(256,33,200,20,"仅用来预览而不打印的内容");
LODOP.SET_PRINT_STYLEA(0,"PreviewOnly",true);
LODOP.ADD_PRINT_HTM(1,450,300,100,"超文本页号自行设置计算方式:第##页/共##页");
LODOP.SET_PRINT_STYLEA(0,"ItemType",1);
LODOP.SET_PRINT_STYLEA(0,"PageUnIndex","1,2");//前两页不显示该页号
};
/***********************************************************
超多页打印演示
***********************************************************/
/*如果超文本对象中有表格(table元素)数据,可用如下函数导出电子表格(Excel)文件,
也可把打印内容整体导成图片文件(emf、wmf、jpg、jpeg、bmp、png等):
*/
/*参数说明:
strFileName:要保存的文件名,扩展名为“xls”导出电子表格,“emf”等导出图片。
varModeName:保存模式,有“FILE_PROMPT”“PAGE_TYPE”等可以设置。
varModeValue:模式值,其中“PAGE_TYPE”导出Excel用,值为数字,含义如下:
0-不分页;
1-保存到同一个Sheet中,但会加入分页符(PageBreak);
2-分页到不同Sheet中;*/
SAVE_TO_FILE(strFileName);
SET_SAVE_MODE(varModeName,varModeValue);
function SaveAsFile(){
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.ADD_PRINT_TABLE(100,20,500,80,document.documentElement.innerHTML);
LODOP.SET_SAVE_MODE("Orientation",2); //Excel文件的页面设置:横向打印 1-纵向,2-横向;
LODOP.SET_SAVE_MODE("PaperSize",9); //Excel文件的页面设置:纸张大小 9-对应A4
LODOP.SET_SAVE_MODE("Zoom",90); //Excel文件的页面设置:缩放比例
LODOP.SET_SAVE_MODE("CenterHorizontally",true);//Excel文件的页面设置:页面水平居中
LODOP.SET_SAVE_MODE("CenterVertically",true); //Excel文件的页面设置:页面垂直居中
// LODOP.SET_SAVE_MODE("QUICK_SAVE",true);//快速生成(无表格样式,数据量较大时或许用到)
LODOP.SAVE_TO_FILE("新文件名.xls");
};
function OutToFileOneSheet(){
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.ADD_PRINT_TABLE(100,20,500,60,document.getElementById("div1").innerHTML);
LODOP.SET_SAVE_MODE("FILE_PROMPT",false);
if (LODOP.CVERSION) {
LODOP.On_Return=function(TaskID,Value){if(Value) alert("导出成功!");};
LODOP.SAVE_TO_FILE(document.getElementById("T1").value);
} else if (LODOP.SAVE_TO_FILE(document.getElementById("T1").value)) alert("导出成功!");
};
function OutToFileMoreSheet(){
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.ADD_PRINT_TABLE(100,20,500,60,document.documentElement.innerHTML);
LODOP.SET_SAVE_MODE("PAGE_TYPE",2);
LODOP.SET_SAVE_MODE("CenterHeader","页眉"); //Excel文件的页面设置
LODOP.SET_SAVE_MODE("CenterFooter","第&P页"); //Excel文件的页面设置
LODOP.SET_SAVE_MODE("Caption","我的标题栏");//Excel文件的页面设置
LODOP.SET_SAVE_MODE("RETURN_FILE_NAME",1);
if (LODOP.CVERSION) {
LODOP.On_Return=function(TaskID,Value){document.getElementById("T2").value=Value;};
LODOP.SAVE_TO_FILE("多个Sheet的文件.xls");
document.getElementById("T2").value="请等待结果...";
} else document.getElementById("T2").value=LODOP.SAVE_TO_FILE("多个Sheet的文件.xls");
};
function SaveAsEmfFile(){
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.ADD_PRINT_HTM(0,0,"100%","100%",document.documentElement.innerHTML);
LODOP.SET_SAVE_MODE("SAVEAS_IMGFILE_EXENAME",".emf");
LODOP.SAVE_TO_FILE("新的矢量图片文件.emf");
};
/********************************************************************
lodop很多函数的参数可声明使用in(英寸)、cm(厘米)、mm(毫米)、pt(磅)、px(1/96英寸)等长度单位,
注意这里的px不是像素,是绝对长度单位,1px等于1/96英寸,与正常DPI显示设置的像素值相等。如果
采用该单位,那么正常显示的屏幕内容与实际打印输出的内容大小相当,这个长度单位可以实现感觉上
的“所见等于所打”,px是缺省长度单位,如此以来,单位换算关系为:
1in = 2.54cm = 25.4mm = 72pt = 96px
********************************************************************/
//例如画100mm×12.4mm矩形框,如下几行代码都可以实现:
ADD_PRINT_RECT(26,37,378,47,0,1);
ADD_PRINT_RECT("72pt","27.8pt","283.5pt","35.2pt",0,1);
ADD_PRINT_RECT("43.9mm","9.8mm","100mm","12.4mm",0,1);
ADD_PRINT_RECT("6.24cm",".98cm","10cm","1.24cm",0,1);
ADD_PRINT_RECT("3.177in",".385in","3.938in",".49in",0,1);
/*
打印公章效果图:
传统方式打印公章都是把图片的z-index设为负值,这其实是把公章图以背景形式输出,
但实际上公章应该在字的上面,也就是“先字后章”才对,Lodop通过设置transcolor属性实现了该效果,
*/
/*
打印田字格、上下划线等文本
*/
function CreatePrintPage() {
LODOP=getLodop();
LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_文本边框线");
LODOP.SET_PRINT_STYLE("FontSize",14);
LODOP.ADD_PRINT_TEXT(60,17,125,25,"字符带上划线");
LODOP.SET_PRINT_STYLEA(0,"TextFrame",1);
LODOP.SET_PRINT_STYLEA(0,"LetterSpacing",5);
LODOP.ADD_PRINT_TEXT(100,17,125,25,"整行带上划线");
LODOP.SET_PRINT_STYLEA(0,"TextFrame",7);
LODOP.ADD_PRINT_TEXT(60,164,125,25,"字符带下划线");
LODOP.SET_PRINT_STYLEA(0,"TextFrame",2);
LODOP.SET_PRINT_STYLEA(0,"LetterSpacing",5);
LODOP.ADD_PRINT_TEXT(100,164,125,25,"整行带下划线");
LODOP.SET_PRINT_STYLEA(0,"TextFrame",8);
LODOP.ADD_PRINT_TEXT(60,315,125,25,"字符带边框线");
LODOP.SET_PRINT_STYLEA(0,"TextFrame",5);
LODOP.SET_PRINT_STYLEA(0,"LetterSpacing",5);
LODOP.ADD_PRINT_TEXT(100,315,125,25,"整行带边框线");
LODOP.SET_PRINT_STYLEA(0,"TextFrame",11);
LODOP.ADD_PRINT_TEXT(60,464,125,25,"字符带圆圈");
LODOP.SET_PRINT_STYLEA(0,"TextFrame",6);
LODOP.SET_PRINT_STYLEA(0,"LetterSpacing",10);
LODOP.ADD_PRINT_TEXT(100,464,125,25,"整行被圆圈");
LODOP.SET_PRINT_STYLEA(0,"TextFrame",12);
LODOP.ADD_PRINT_TEXT(100,613,105,25,"\"田字格\"");
LODOP.SET_PRINT_STYLEA(0,"TextFrame",13);
LODOP.SET_PRINT_STYLEA(0,"LetterSpacing",10);
LODOP.ADD_PRINT_TEXT(60,613,105,25,"分割线");
LODOP.SET_PRINT_STYLEA(0,"TextFrame",14);
LODOP.SET_PRINT_STYLEA(0,"LetterSpacing",20);
LODOP.ADD_PRINT_TEXT(166,35,691,401,document.getElementById("doc1").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Offset2Top",-140);
LODOP.SET_PRINT_STYLEA(0,"TextFrame",13);
LODOP.SET_PRINT_STYLEA(0,"SpacePatch",1);
LODOP.SET_PRINT_STYLEA(0,"ItemType",4);
LODOP.SET_PRINT_STYLEA(0,"Horient",3);
LODOP.SET_PRINT_STYLEA(0,"Vorient",3);
};
/*
Full-Width:按整宽,即宽度缩放到与纸宽相当,高度不变,缩放后会变形。
Full-Height:按整高,即高度缩放到与纸高相当,宽度不变,缩放后会变形.
Full-Page:按整页,既按整宽又按整高,缩放后会变形。
Auto-Width: 按整宽且不变形,即按整宽的同时,高度与之同比。
Auto-Height:按整高且不变形,即按整高的同时,宽度与之同比。
Width:200%:宽度放大一倍,高度不变。
Height:200%: 高度放大一倍,宽度不变。
Width:200%;Height:200%:宽度和高度都放大一倍。
55%:宽度和高度都缩小到原来的55%。
*/
SET_PRINT_MODE("PRINT_PAGE_PERCENT","Full-Width");
/*
隐藏预览窗口上的缩放比例选项
*/
SET_SHOW_MODE("HIDE_PAGE_PERCENT",true);
/*
设置“溢出自动缩小”
对于单页输出,如希望内容超出纸宽或纸高时对应缩小,用如下俩语句:
*/
SET_PRINT_MODE("FULL_WIDTH_FOR_OVERFLOW",true);
SET_PRINT_MODE("FULL_HEIGHT_FOR_OVERFLOW",true);
/*
函数ADD_PRINT_IMAGE原本用来打印图片的,其优势是自由缩放打印,
且因其图片来源可以是超文本(IMG标签),二者结合能实现缩放打印普通超文本。
Lodop最新版更强化了这个功能,只要内容不因超出范围而自动分页,控件则采用矢量快照模式,
其清晰度和文本模式一样,且速度更快。
关键语句有如下两个:
*/
LODOP.ADD_PRINT_IMAGE(top,left,width,height,strHTML);
/*
其中Zmode=1表示变形缩放,Zmode=2表示不变形缩放,strHTML即可以是超文本内容,
也可以是“URL:WEB路径”样式的WEB地址。
*/
LODOP.SET_PRINT_STYLEA(0,"Stretch",ZMode);
LODOP.ADD_PRINT_HTML(20,13,762,510,"URL:http://www.baidu.com/");
/*
用函数FORMAT可以把文字转换(朗读)成声音或WAVE文件,两个语句举例如下:
*/
LODOP.FORMAT("VOICE:0;50","Hello,您好!");
LODOP.FORMAT("FILE:WAVE,c:/lodoptest.wav","Hello,您好!");
/*
参数说明:
其中“VOICE:”和“FILE:WAVE,”是关键字,分别控制朗读和生成wav文件。
紧跟VOICE:的0和50是“语速(范围-10~10)”和“音量(范围0~100)”的值,二者用分号隔开。
紧跟FILE:WAVE,的是Wave文件路径和名称,第二个参数里是要朗读的文字内容。
*/
/*
ValueType:获得文档式模板关键字是“ProgramData”:;
intModeValue 0-全部模板;1-不包含初始化语句的模板。
*/
GET_VALUE (ValueType, ValueIndex);
/*
strDataStyle:加载文档式模板的关键字是“ProgramData”;
varDataValue:文档式模板内容。
*/
ADD_PRINT_DATA(strDataStyle, varDataValue);
/*
strStyleName:关键字参数值是“CONTENT”
*/
SET_PRINT_STYLEA(varItemNameID, strStyleName,varStyleValue);
LODOP.ADD_PRINT_TEXT(10,10,200,30,"普通内容");
LODOP.ADD_PRINT_HTM(30,10,200,30,"
普通内容
");