我的程序需要打印曲线,我的解决scheme是将曲线变成图片,并且可以使用默认的Windows图片打印工具(右击文件顶部的鼠标右键点击此图片文件(xxx.png)select打印)。
但我不希望用户手动执行此作业,我需要一个命令行工具来执行此操作:
printPicture xxx.png
有没有这样的工具?
ps:免费/开源
编辑:右键单击文件,并select“打印”,然后我可以打印这个文件,我怎样才能做到这一点在命令行?
我终于找到了!
使用Windows图像和传真查看器。
rundll32 shimgvw.dll ImageView_PrintTo /pt xxx.png "printer name"
IrfanView能够做到这一点。 这里是这个应用程序的命令行选项列表。
以下应该工作:
i_view32 xxx.png /print
如果要打印到默认打印机以外的打印机,请指定打印机名称:
i_view32 xxx.png /print="PrinterName"
这个链接有一个更简单的解决方案:
mspaint / pt [图像文件名]
rundll32 C:\WINDOWS\system32\shimgvw.dll,ImageView_PrintTo "c:\mydir\my.bmp" "Fictional HP Printer"
我有一个类似的问题,但我也需要控制缩放(条码工作所需)的方式,并始终以图像为中心。
我写了一个叫做ImagePrint的开源工具来做你想做的事情。 它是作为一个控制台应用程序在VB.Net中编写的。 此刻,它只打印到默认打印机。
rundll32 C:\WINDOWS\system32\shimgvw.dll,ImageView_PrintTo "c:\mydir\my.bmp" "Fictional HP Printer"
这将打印一个图像文件(在我的情况下是.png)到指定的打印机,没有弹出一个对话框。 另外…没有提升命令提示权限。
您可以通过print
操作从程序调用ShellExecute :
ShellExecute(NULL,"print","c:\\test.png",NULL,NULL,SW_HIDE);