簡體   English   中英

如何以編程方式打印各種文件類型

[英]How to print various file types programmatically

我正在編寫一個應用程序,它執行一些測試並生成許多不同的報告。 這些可以是標簽,最終客戶的PDF,維修部門的PDF,XML文件等的任意組合。

根據報告類型,我需要將文件發送到文件系統或許多不同的打印機之一(A4,標簽等)。 理想情況下,應該沒有彈出窗口 - 只是直接用紙。

如何將文件(PDF,XML)發送到打印機? 我曾經想過,對於XML / Text,我可以將File.Copy轉換為LPTn,但這似乎不起作用。 對於PDF我猜我可以用一些導致PDF打印的參數調用Acrobat。

我使用的打印機映射到LPTn。 有沒有更好的方法來執行此操作並將定義存儲在應用程序中? 即標簽轉到MyLabelPrinter,A4 PDF轉到MyA4Printer。

有沒有人這樣做過?

ProcessStartInfo info = new ProcessStartInfo("[path to your file]");
info.Verb = "PrintTo";
info.Arguments = "\"[printer name]\"";
info.CreateNoWindow = true;
info.WindowStyle = ProcessWindowStyle.Hidden;
Process.Start(info);

看看這個網頁 您應該找到您正在查看的PDF信息。 例如,它看起來像這樣:

    ProcessStartInfo infoOnProcess = new ProcessStartInfo("C:/example.pdf");
    info.Verb = "PrintTo";
    //Put a if there, if you want to change printer depending to file extension
    info.Arguments = "\"HP-example-Printer\"";
    info.CreateNoWindow = true;
    info.WindowStyle = ProcessWindowStyle.Hidden;
    Process.Start(infoOnProcess);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM