【发布时间】:2021-03-10 19:58:45
【问题描述】:
在我的 WPF 应用程序中,我有一个要打印的 xaml 页面。页面宽度为 454 像素,页面高度为 794 像素。 页面大小来自我要使用的纸张尺寸,即 12 厘米宽(454 像素)和 21 厘米高(794 像素)。
下面是代码:
public void Print()
{
PrintDialog printDialog = new PrintDialog();
if(printDialog.ShowDialog() == true)
{
printDialog.PrintTicket.PageOrientation = PageOrientation.Portrait;
printDialog.PrintTicket.PageMediaSize = new PageMediaSize(454, 794);
printDialog.PrintVisual(this, $"Ricevuta {ReceiptToPrint.CustomerFullName}");
}
}
问题是 PageMediaSize 设置被忽略,打印机打印就好像抽屉里有一张 A4 纸。所以要打印的 xaml 页面被放置在一张不存在的 A4 纸的左上角,结果只有一部分要打印的 xaml 页面打印在我的自定义纸张上。
我还补充说我使用的打印机支持自定义纸张尺寸。
【问题讨论】: