利用自定义控件来设计发票打印程序

从前做发票打印的时候都是事先计算出来每个字段的打印位置,然后硬编码到代码中,比如 ev.Graphics.DrawString("金额", PrintFont, Brushes.Black, new PointF(100, 200)); ev.Graphics.DrawString("数量", PrintFont, Brushes.Black, new PointF(100, 300)); 开始的计算和后期的维护工作量都很大。这次我改变了一下思路,利用用户控件来对坐标。具体原理是通过用户控件中的Label来获取位置信息Point和字体信息PrintFont。位置信息可以通过Lable1.Location获得,字体信息可以通过Lable1.Font获得,这样就不需要写代码之前计算每个打印内容的XY坐标了,在Lable上设置的字体也可以在VS2005的设计界面中看到实际效果(有点像水晶报表),大大减少了调试次数。下面是打印基类和示例的程序 自己设计的打印界面,继承PrintCtrlBase即可
https://files.cnblogs.com/wormday/PrintCtrl.rar
原文地址:https://www.cnblogs.com/wormday/p/648395.html