C#根据内容打印页面高度

本文关键字:高度 打印 | 更新日期: 2023-09-27 18:21:52

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

感谢

C#根据内容打印页面高度

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

仅供记录。我也有同样的问题。最后,我所做的是:

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;