PrintHTML程序:http://www.printhtml.com/download.php
从这下载程序,需要DhtmlEd控件支持,需要dot.net 4.0或者4.5
printhtml.exe /? 可调出帮助,注意不是/help 或者-help
打印机的名称,看本机有什么名称打印机,然后命令行:
printhtml.exe directurl="http://www.baidu.com" printername="Bullzip PDF Printer" header="" footer=""
加header和footer,是因为如果不加这两个参数,会在页头输出“共几页几页”,页尾输出url地址
好用,附件可下载PrintHTML和DhtmlEd两个程序
杯具,自己的页面,用这个东东打印出来排版会乱掉,改另一个办法,先将html转换为pdf,然后再打印
用这个工具:wkhtmltopdf,官网:http://wkhtmltopdf.org/index.html
这个没有变形,凑合用吧
接着该怎么样能自动打印呢,设想了一个办法:
首先打印机支持网络,最好能在内网访问到,指定pc安装打印机驱动程序,用bat来定时执行;
如果服务器无法访问到打印机的ip,可以用花生棒来做一个端口映射,这是个办法,但还需要了解打印机的端口,是否只用一个tcp就可以,如果是,理论上可行
换了wkhtmltopdf之后,需要用这个才能正常打印:http://www.biopdf.com/acrowrap/close_adobe_reader.php
用法:
acrowrap.exe /acceptlicense /t "pdf_file_name" ["printer_name"] ["printer_driver"] ["printer_port"]
没有认真研究为什么PrintHTML不能打印的原因,打印出来的页面是有问题的
嗯,上述wkhtmltopdf + acrowrap一起工作可行,贴一个测试代码:
c: cd "C:\Program Files\wkhtmltopdf\bin" pwd wkhtmltopdf.exe "http://localhost:8080/my/data/file.html" "d:\file.pdf" cd "C:\Program Files (x86)\bioPDF\Acrobat Wrapper" pwd acrowrap.exe /t "d:\file.pdf" "Bullzip PDF Printer" pause
还有一个选择,叫Zan Image Printer,这个软件有汉化版,百度即可,也能轻易将所有文件打印成图片,包括tiff等,但是不知道为什么,我用命令行print来执行打印,总是提示无法初始化设备,无奈,继续找
如果打印word,得换另一个工具,叫2jpeg:https://www.2jpeg.com/download
这个也是下载后安装即可使用的
example里有例子,直接执行2jpeg.exe -src "d:\1.docx" -dst "c:\out"
命令行手册:https://www.2jpeg.com/overview/2jpeg-command-line-syntax
我用2台win7 64位来测试doc和docx,一台都正常,1台都不能打印,提示Unsupported file type,奇怪。
2jpeg能应付一些场合,它会添加水印,而且输出的word会有变形,慎重考虑
好吧,老老实实的将office先转为成pdf吧,用OfficeToPdf这个工具:http://officetopdf.codeplex.com
附件有下载,执行:OfficeToPDF.exe /?可以调出帮助,简单用法:
officetopdf.exe somefile.docx somefile.pdf
可能是电脑抽筋了,第一次可以,后面老是提示Themethod or operation is not implemented.
转了pdf之后,再用acrowrap打印,打印机是zan printer,需要3个辅助程序,试过效果还可以,只是比2jpeg复杂一些。
还有一个CLPrint.exe的工具
http://www.terminalworks.com/command-line-printing
转载于:https://blog.51cto.com/xiaosa/1906575