你可以使用以下代码,来判断是否是虚似打印机:
function isVirtualPrinter(){
var port = jatoolsPrinter.getPrinterInfo('联想 laser jet').port; // 通过jatoolsPrinter取得打印机的port
return port.match(/(usb|lpt|com)/i); // 一般不是虚拟打印机,都直接输出到 usb,lpt,com等物理端口
}
原理是取得打印机端口信息,一般虚拟打印机,不用物理端口,用一些非常怪的端口地址,下面是常用的虚拟打印机端口:
pdffactory : FPP3
pdfcreator: pdfcmon
xps writer: XPSPort
示例代码文件下载:
testvirtual.htm (1.26 KB)