2010-02-20 754 views
6

我的程序需要打印曲線,我的解決方案是將曲線變成圖片, 和這個圖片文件(xxx.png)可以使用默認的windows圖片打印工具(右鍵點擊鼠標該文件,並選擇打印)。打印圖片的命令行工具?

,但我不希望用戶手動做這個工作,我需要一個命令行工具來做到這一點:

printPicture xxx.png 

有沒有這樣的工具?

PS:自由/開源

編輯: 右鍵單擊該文件,然後選擇「打印」,然後我可以打印這個文件, 我怎樣才能做到這一點在命令行?

回答

8

我終於找到了!

使用Windows圖像和傳真查看器。

rundll32 shimgvw.dll ImageView_PrintTo /pt xxx.png "printer name" 
+0

小心,您無法使用此解決方案提供任何選項,並且您無法更改默認選項(圖片將適合A4)。 – Jerry 2017-11-21 13:21:07

7

IrfanView能夠做到這一點。以下是此應用程序的command line options列表。

以下應該工作:

i_view32 xxx.png /print 

如果要打印到打印機其他比默認的打印機,指定打印機名稱:

i_view32 xxx.png /print="PrinterName" 
+4

「so ...」究竟是什麼? – 2010-02-20 05:30:34

+3

你問了一個命令行工具...這就是我發佈的。你如何在你的應用程序中使用它取決於你 - 你是開發者! – 2010-02-20 05:44:39

+0

這塊岩石! irfanView保留最後的打印選項。當您通過命令行調用它來打印圖片時,它會使用上次的打印選項。這是完美的。 OMG! – Jerry 2017-11-21 13:32:39

0

您可以致電ShellExecute從您的程序print操作:

ShellExecute(NULL,"print","c:\\test.png",NULL,NULL,SW_HIDE); 
+0

OMG!有一個「打印」CMD ... – linjunhalida 2010-02-20 08:16:36

+0

我使用「打印」,但結果是錯誤的... ... – linjunhalida 2010-02-21 03:17:54

+0

「打印」僅適用於TXT文件 – MaxV 2017-02-01 11:41:25

2

This link有一個簡單的解決方案:

MSPAINT/PT [圖像文件名]

1

我也有類似的問題,但我還需要方法來控制縮放(需要條碼的工作),並始終有圖像居中。

我寫了一個名爲ImagePrint的開源工具來做你想做的事情。它是作爲一個控制檯應用程序在VB.Net中編寫的。此刻,它僅打印到默認打印機。

+0

你好。請,你能刷新你的鏈接? – Jerry 2017-11-21 13:24:18

2
rundll32 C:\WINDOWS\system32\shimgvw.dll,ImageView_PrintTo "c:\mydir\my.bmp" "Fictional HP Printer" 
1
rundll32 C:\WINDOWS\system32\shimgvw.dll,ImageView_PrintTo "c:\mydir\my.bmp" "Fictional HP Printer" 

這將打印的圖像文件(.png格式在我的情況),到指定的打印機,沒有一個對話框彈出。另外...沒有提升命令提示權限。