如果我理解正確,打印機也是操作系統視圖中的文件。我可以爲打印機獲取.NET C#FileStream類型嗎?這樣做似乎很瘋狂。 在此先感謝。我們可以獲得打印機的FileStream嗎?
2
A
回答
3
在Win32中將打印機建模爲一組位圖。這是由PrintDocument
包裝的,它基本上設置了一個回調函數,可以讓您逐一繪製每個頁面,並逐個將它們發送給打印假脫機程序,後者然後將數據(通常爲.ps格式)發送到打印機。
這是現代打印機如何操作,它們繪製頁面而不是文本。只有舊式矩陣打印機以流線形式逐個字符地繪製文本。他們曾經使用「PRN:」特殊文件。然而,這在現代環境中已經失去了一切意義。
好消息是,使用PrintDocument
類很容易,您可以爲每個頁面獲得一個Graphics
對象,您可以使用該對象在頁面上的任何位置打印文本以及繪製圖形。
如果您希望通過緩存所有數據然後對每個頁面調用DrawText
,可以模擬流式打印機。
1
建設Windows Forms
應用程序,你可以把打印機作爲Graphics Device.
的System.Drawing.Printing
命名空間提供與打印相關的服務,爲Windows窗體應用程序。
如果要從Windows Presentation Foundation (WPF)
應用程序打印,請參閱System.Printing
命名空間。它提供的類使您能夠自動管理打印服務器,打印隊列和打印作業。
1
假設要對原始數據發送到打印機,請參閱How to send raw data to a printer by using Visual C# .NET
0
由於NET 3.0,你可以通過使用 PrintSystemJobInfo.JobStream
當你在後臺處理程序,例如創建一個PrintJob
var job = LocalPrinter.GetDefaultQueue().AddJob();
您可以寫信給
job.JobStream
關閉該流隊列它進行打印。 有趣的是,您可以使用該流將控制代碼和文本寫入通用/純文本打印機(例如LPT1並行端口衝擊打印機)
相關問題
- 1. 我可以使用PHP和Apache打印到我的打印機嗎?
- 2. 我們如何可以打印用printf
- 3. 我們可以在IOS中使用普通打印機進行打印
- 4. 我們可以在內核運行期間得到打印輸出嗎?
- 5. 可以javafx打印到點陣打印機嗎?
- 6. 我們可以從Web視圖中打印嗎?
- 7. 試圖瞭解變量...我可以打印它們嗎?
- 8. 我們可以在Python中使用return來打印函數嗎?
- 9. 我可以在收據打印機上打印自定義收據嗎?
- 10. 我可以使用JavaScript選擇打印機嗎?
- 11. 我可以從Printdialog隱藏某些打印機嗎
- 12. 我可以自動將pdf文件發送到打印機嗎?
- 13. 我可以重新打印假脫機文件嗎?
- 14. 我的打印機是網絡打印機嗎?
- 15. 我們可以在使用javascript的PC中獲取已安裝打印機的詳細信息嗎?
- 16. 我們可以在Databinding的xml佈局中獲得Root View嗎?
- 17. 我們可以中斷已獲得鎖定的線程嗎?
- 18. 我可以在打印機上使用FIleOutputStream打印
- 19. 我如何可以打印到標籤打印機從網頁
- 20. 我們可以在android api 8中獲得本機日曆視圖嗎?
- 21. 我們可以在黑莓手機上獲得短信發送報告嗎?
- 22. 我們可以從Microsoft.CodeAnalysis.CSharp.Syntax.TypeSyntax獲取System.Type嗎?
- 23. PyCups - 如何獲得打印機的PPM?
- 24. 我們可以在serverside php上獲得散列值嗎?
- 25. Worklight JSON Store,我們可以獲得競爭條件嗎?
- 26. 我們可以從netstat命令中獲得流逝時間嗎
- 27. 我們可以在C#中獲得一個canthrow語句嗎?
- 28. 我們可以用Xamarin.Forms爲UWP獲得流體設計嗎?
- 29. 我們可以從Worldweatheronline api獲得多個天氣數據嗎?
- 30. 可以通過打印機打印點陣用PHP打印