winform 打印图片填充整页
PrintPreviewDialog dialog = new PrintPreviewDialog();
dialog.Document = print_express; //print_express是PrintDocument控件
print_express.DefaultPageSettings.PrinterSettings.PrinterName = printName;
//防闪退 start
PrintController printController = new StandardPrintController();
print_express.PrintController = printController;
//防闪退 end
//print_express.Print();
dialog.ShowDialog();
private void print_express_PrintPage(object sender, PrintPageEventArgs e)
{
Image img = Method.Base64ToImage(curPrintExpress);
//填充至整页
e.Graphics.DrawImage(img,e.PageBounds); //关键是e.PageBounds页面大小
}
注意自定义纸张时的单位换算:
print_express.DefaultPageSettings.PaperSize = new PaperSize("dyappe express", (int)(100 / 25.4 * 100), (int)(150 / 25.4 * 100));
其中 100 和 150单位为毫米(mm) , 比如我这里要打印的顺丰快递面单是 10*15cm 则这里需要传入 100*150mm
浙公网安备 33010602011771号