LODOP打印控件相关说明

LODOP打印控件相关说明PRINT_INIT(strPrintTaskName);//初始化并指定打印任务名是strPrintTaskNamePREVIEW();//打印预览PRINT();//直接打印PRINTA();//选择打印机PRINT_SETUP();//打印维护**内容可也自动调整PRINT_DESIGN();//打印设计ADD_PRINT_HTM(0,0,”100%”,”100%”,document.documentElement.innerHTML);//打印整个页面/*intOrient:打印方

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

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,”<img border=’0′ src=’http://s1.sinaimg.cn/middle/4fe4ba17hb5afe2caa990&;690′ />”);//打印网络图片
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,”<table border=\”1\”><tr>\n<td style=\”writing-mode: tb-rl;\”>旋转90度</td>\n<td>正常<p>超文本</p><p>内容</p></td>\n</tr></table>\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,”超文本页号自行设置计算方式:<span tdata=’pageNO-2′>第##页</span>/<span tdata=’pageCount-2′>共##页</span>”);
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,”<hr>普通内容<hr>”);

 

var ttasp=LODOP.GET_PRINTER_COUNT();
 
var str=””;
//alert(LODOP.GET_PRINTER_NAME(0)+’=’+LODOP.GET_PRINTER_NAME(1));

for (var i = 0; i < ttasp; i++) {

     
str= str + i+” “+LODOP.GET_PRINTER_NAME(i)+”\n”;

    //Do something
}
alert(str);

转载于:http://www.ttasp.net/article/5/201801/544.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/197576.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 移动端网页设计_redis client命令

    移动端网页设计_redis client命令一、服务器与客户端的交互Redis服务器是典型的一对多服务器程序:一个服务器可以与多个客户端建立网络连接,每个客户端可以向服务器发送命令请求,而服务器则接收并处理客户端发送的命令请求,并向客户端返回命令回复 Redis服务器通过使用由I/O多路复用技术实现的文件事件处理器,Redis服务器使用单线程单进程的方式来处理命令请求,并与多个客户端进行网络通信clients属性stru…

  • react中postMessage与addEventListener的使用

    react中postMessage与addEventListener的使用有时候两个页面之间不是父子组件的情况下,信息交互很难搞,看到有人用postmessage来进行消息交互,我也试了一下,哎呀妈真香!!!1、首先在需要发送消息的界面中使用postMessage使用的是React+TypeScript,逻辑是更新提交的时候刷新打开当前页面的父窗口,postMessage用法如下:if(window.opener&&window.opener.location&&window.opener.location.href){

  • 什么是协程「建议收藏」

    什么是协程「建议收藏」来自:程序员小灰(微信号:chengxuyuanxiaohui)—————第二天—————————————————什么是进程和线程有一定基础的小伙伴们肯定都知道进程和线程。进程是什么呢?直白地讲,进程就是应用程序的启动实例。比如我们运行一个游戏,打开一个软件,就是开启了一个进程。进程拥有代码和打开的文件资源、数据资…

  • ubuntu分区方案图解_win7分区最大多少G

    ubuntu分区方案图解_win7分区最大多少G新手参考/boot200M/30G/home66G/swap4G

    2022年10月31日
  • web大前端必备的VSCode插件,常用的(15个)「建议收藏」

    web大前端必备的VSCode插件,常用的(15个)「建议收藏」VisualStudioCode是由微软开发的一款免费、跨平台的文本编辑器。由于其卓越的性能和丰富的功能,它很快就受到了大家的喜爱。就像大多数IDE一样,VSCode也有一个扩展和主题市场,包含了数以千计质量不同的插件。为了帮助大家挑选出值得下载的插件,我们针对性的收集了一些实用、有趣的插件与大家分享。1.Open-In-Browser由于VSCode没有提供直接在浏览…

  • 腾讯与唯品会笔试面试经历[通俗易懂]

    腾讯与唯品会笔试面试经历

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号