c 餐飲系統印表機 C 呼叫小票印表機

2021-10-17 06:35:28 字數 2489 閱讀 3267

using system;

using system.collections.generic;

using system.componentmodel;

using system.data;

using system.drawing;

using system.text;

using system.drawing.printing;

namespace bncheckitemsclient.formc.specimen

publicclass printspecimenlabel

printdocument printdocument;

privateint _printpage =0;//當前列印頁

privateint _totalpage =1;//總頁數

publicstring _printername =string.empty;// 印表機名稱

publicvoid doprint()

try//準備資料

preparedata();

if (_totalpage <=0)

return;

//設定印表機

printersetup();

if (!string.isnullorempty(_printername))

printdocument.printersettings.printername = _printername;

if (!printdocument.printersettings.isvalid)

thrownew exception("the printer is not valid");

printdocument.print();

catch (exception ex)

messagebox.show(ex.message);

//throw;

privatevoid printersetup()

//設定印表機屬性

printdocument.printersettings.printername ="zdesigner 888-tt";//設定印表機

printdocument.defaultpagesettings.*****size =new system.drawing.printing.*****size("specimenlabel",110, 180);//頁面大小

printdocument.defaultpagesettings.landscape =true;//橫向列印

printdocument.printpage +=new printpageeventhandler(printdocument_printpage);

//在這裡寫列印的內容

void printdocument_printpage(object sender, printpageeventargs e)

graphics g = e.graphics;

float leftmargin = 5f; //左邊距

solidbrush mybrush =new solidbrush(color.black);//刷子

float yposition = 5f;//行定位

font printfont =new font("宋體", 20f, fontstyle.bold);//設定字型

g.drawstring("這是要列印的第一行內容",printfont, mybrush, leftmargin + 140f, 7f, new stringformat());

yposition += printfont.getheight(g);//另起一行

printfont =new font("宋體", 10f, fontstyle.bold);//改變字型

g.drawstring("這是要列印的第二行內容", printfont, mybrush, leftmargin, yposition, new stringformat());

//如果要同時列印多個標籤

_printpage++;//頁號

if (_printpage 

e.hasmorepages =true;

else

e.hasmorepages =false;

到印表機和傳真資料夾-->右鍵-->伺服器屬性

新增了自己定義的紙型別 名稱949w300h 寬9.49in,高3.00in

所以改了程式為

foreach(*****size ps in printdoc.printersettings.*****sizes)

if(ps.*****name=="949w300h")

printdoc.printersettings.defaultpagesettings.*****size=ps;

printdoc.defaultpagesettings.*****size=ps;

就可以了 似乎紙張只能從printdoc.printersettings.*****sizes中選擇

C 小票印表機 直接列印 無需驅動

dllimport kernel32.dll private static extern int createfile string lpfilename,uint dwdesiredaccess,int dwsharemode,int lpsecurityattributes,int dwcrea...

python escpos 小票 列印 機

python escpos 佳博 gp l80180i 可以使用 pip install python escpos from escpos.printer import serial ser serial com3 38400 timeout 1 ser.text hello world n se...

C 呼叫印表機列印檔案

c 呼叫印表機列印檔案,通常情況下,例如word excel pdf等可以使用一些對應的元件進行列印,另 乙個通用的方式是直接啟用乙個列印的程序進行列印。示例 如下 using system.diagnostics string filepath 檔案路徑 string printer 印表機 pr...