0

我正在用 c# 做一些打印工作,但遇到了一个小问题。我正在使用热敏收据打印机。我想根据它的内容设置页面的高度。这意味着,当我的项目较少时,页面应该更小,当我的项目列表很长时,页面应该相应增长。我试图设置它,PrintPageEventArgs但这并没有得到满意的结果。如何才能做到这一点?

谢谢

4

2 回答 2

0

只要注意宽度。打印机将在最后一页上的最后一个打印元素之后裁切纸张。

于 2013-07-11T08:39:49.673 回答
0

只是为了记录。我遇到过同样的问题。最后我所做的是:

Int Line= starting position (in pixels)
For each line I want to print -> g.DrawString("text",font,xx,margin,line);

and then just before print
  ps.Height = Line;
  pd.Print();

pd is ->  PrintDocument pd = new PrintDocument();
ps is ->  PaperSize ps = new PaperSize("",my_width,1));
`enter code here`           pd.PrintPage += new PrintPageEventHandler(pd_PrintPage);
            pd.PrintController = new StandardPrintController();
            pd.DefaultPageSettings.Margins.Left = 0;
            pd.DefaultPageSettings.Margins.Right = 0;
            pd.DefaultPageSettings.Margins.Top = 0;
            pd.DefaultPageSettings.Margins.Bottom = 0;
            pd.DefaultPageSettings.PaperSize = ps;
于 2016-04-21T11:10:01.120 回答