回答
看看我的問題和答案PrintPage PrintPageEventHandler Is Printing Too Many Copies。
我的問題是從Windows窗體打印,但您可以使用Windows Mobile做同樣的事情。
您所做的是創建一個與您要打印的文檔相同比例的虛擬窗體。用你想要他們說的話來設置標籤。某些字段需要是INPUT字段,以便Windows Mobile應用程序可以調用它們並填寫這些值。
例如,如果您有您需要設置客戶地址,你的假表上的標籤會lblCustomerStreet
,lblCustomerCity
,lblCustomerState
和lblCustomerZip
與公共性質:
public string CustomerStreet {
get { return lblCustomerStreet.Text; }
set { lblCustomerStreet.Text = value; }
}
當您需要要打印,您需要將表單的大小與PrintDocument的頁面大小進行比較。您可以使用該比例來增加或減少標籤的大小,以便文本適合頁面。
這確實需要一些時間去做,並且涉及到很多試驗和錯誤。
但是,我發佈在頂部的問題和答案將爲您帶來80%左右的方式。您只會關注我的代碼的DocumentPrinted部分。
我的示例代碼包括面板控件,標籤控件,一個圖像控件(公司徽標)的大小以及可以刪除的自定義條形碼控件。首先打印圖像,然後是面板,然後是標籤,最後是條碼 - 因爲在我的打印輸出中,條碼是最重要的,而且標籤上的文字比面板製作的包裝線更重要。面板只是讓你的打印輸出看起來很漂亮。
我想我會去你建議的方法。由於我們的客戶沒有提供打印機,甚至不想提供遠程PC,因此我可以訪問其打印機的網站以進行標籤輸出預覽。 你可以給我一個在Windows Mobile上捕捉表單並將它發送到打印機進行打印的頭馬嗎? –
- 1. 用ZPL打印BMP
- 2. 在Silverlight中打印ZPL字符串
- 3. 仿真ZPL打印機
- 4. VB6,ZPL,插座打印
- 5. 在模擬器上打印
- 6. ZPL:如何在灰度打印
- 7. ZPL數據打印在標籤
- 8. Zebra RW420正在打印ZPL命令
- 9. ZPL代碼在2臺打印機
- 10. 打印慢(模擬打字)
- 11. 在ZPL標籤打印機上打印位圖圖像
- 12. 如何在.NET中模擬打印機?
- 13. 如何在C中模擬打印機#
- 14. 兩臺GC420t打印機不同的ZPL結果(ZPL,C#)
- 15. 使用ZPL錯誤地打印文本
- 16. 向Zebra打印機發送ZPL標籤
- 17. zpl打印機拆卸問題
- 18. 從c#編程切割ZPL打印機
- 19. 使用ZPL的雙面打印
- 20. 通過tcp發送ZPL到打印機
- 21. 打印到xcode模擬器
- 22. 模擬SWT打印機
- 23. 使用Zebra打印機打印阿拉伯文本[ZPL]
- 24. Zebra打印機不會打印ZPL格式
- 25. 打印ZPL斑馬打印機項目詳細信息
- 26. 使用c#和zpl在斑馬打印機中打印pdf417條碼
- 27. 爲Zebra打印機創建ZPL模板ZP450ctp
- 28. 斑馬GK420d ZPL打印機狀態通過USB在java中
- 29. 如何使用ZPL語言在Zebra中打印Myanmar Unicode?
- 30. Zebra 2824打印機正在以文本形式打印ZPL命令
由於Compact Framework中不支持[PrintDocument](http://msdn.microsoft.com/zh-cn/library/system.drawing.printing.printdocument(v = vs.80).aspx)控件,您很可能必須創建一個新的空白表單,重寫OnPaint方法,然後在控件上繪製表單以查看任何預覽。 – jp2code
糟糕!剛剛注意到[PrintDialog](http://msdn.microsoft.com/zh-cn/library/system.windows.controls.printdialog.printdocument(v = vs.85).aspx)**在** Compact中受支持框架3.0 - 你可能想看看。編寫一個'Document_Print'例程更容易預覽,然後發送到打印機。 – jp2code
是的,PrintDocument路徑是我的選擇之一。如果我繼續這樣做,如何創建可以發送到Windows Mobile中的Document_Print的「文檔」或「報告」?我會打印包含條形碼的標籤。 –