首页 新闻 会员 周边 捐助

c#如何修改打印机的默认纸张类型?

0
悬赏园豆:15 [已解决问题] 解决于 2020-09-10 14:43

请教各位大侠:
c#中,如何修改 打印机 →打印首选项→纸张选项尺寸(修改该处的默认纸张类型)
应用中需要在 自定义纸张格式 和 系统默认纸张(A4)间来回切换。
使用如下语句,
PrintDocument pd = new PrintDocument();
PaperSize p=null;
foreach(PaperSize ps in pd.PrinterSettings.PaperSizes)
{ if(ps.PaperName.Equals("A4"))
p = ps;
}
pd.DefaultPageSettings.PaperSize = p;
pd.Print();

仅仅是修改了(打印内容)打印纸的大小,实际 打印机纸张-选项尺寸并未改变,结果是打印机属性中的纸张大小和打印内容设定的纸张大小不配套,打印出的东东 内容和纸无法搭配,使用系统API "winspool.Drv中的AddCustomPaperSize方法,实现了从 打印机纸张选项尺寸 默认纸张格式A4到 自定义纸张的切换,但是如何从自定义纸张切换回系统默认格式A4呢?我的思路就是如何修改 打印机首选项-纸张选项尺寸(实现默认值在诸如A4,A3间切换)
请大侠给些指点,由于基础差,最好给个简单的相关学习、使用链接,谢谢!
或是有其他更好的方法也请指点一下,谢谢!

rossi努力努力的主页 rossi努力努力 | 初学一级 | 园豆:8
提问于:2020-09-05 16:45
< >
分享
最佳答案
0

不用系统自带的纸张类型,全部自定义就行,比如 A4纸是210mm×297mm,打印机的分辨率是多少,换算成像素就可以了

收获园豆:15
jqw2009 | 老鸟四级 |园豆:2341 | 2020-09-07 16:58
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册