设置打印纸张

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设置打印纸张相关的知识,希望对你有一定的参考价值。

PageMediaSize pageSize = new PageMediaSize(PageMediaSizeName.ISOA4, doc.PageWidth, doc.PageHeight);
printDialog.PrintTicket.PageMediaSize = pageSize;

 

PageMediaSize pageSize = new PageMediaSize(PageMediaSizeName.ISOA3, doc.PageWidth, doc.PageHeight);
printDialog.PrintTicket.PageMediaSize = pageSize;

 

PageMediaSize pageSize = new PageMediaSize(PageMediaSizeName.ISOA2, doc.PageWidth, doc.PageHeight);
printDialog.PrintTicket.PageMediaSize = pageSize;

 

PageMediaSize pageMediaSize = new PageMediaSize(PageMediaSizeName.ISOA1);
printDialog.PrintTicket= new PrintTicket { PageMediaSize = pageMediaSize };

 

 


//纸张尺寸设置
private void PageSizeSet_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (Viewer != null)
{
//获取打印流文档
FlowDocument doc = Viewer.Document;
string str = ((ComboBoxItem)PageSizeSettings.SelectedItem).Content.ToString();

if (str == "A4")
{
var pageMediaSize = LocalPrintServer.GetDefaultPrintQueue()
.GetPrintCapabilities()
.PageMediaSizeCapability
.FirstOrDefault(x => x.PageMediaSizeName == PageMediaSizeName.ISOA4);

if (pageMediaSize != null)
{
doc.PageHeight = (double)pageMediaSize.Height;
doc.PageWidth = (double)pageMediaSize.Width;

}

// doc.PageHeight = 993.0;
// doc.PageWidth = 1404.0;

}

if (str == "A3")
{
// doc.PageHeight = 1985.0;
// doc.PageWidth = 1404.0;

var pageMediaSize = LocalPrintServer.GetDefaultPrintQueue()
.GetPrintCapabilities()
.PageMediaSizeCapability
.FirstOrDefault(x => x.PageMediaSizeName == PageMediaSizeName.ISOA3);

if (pageMediaSize != null)
{
doc.PageHeight = (double)pageMediaSize.Height;
doc.PageWidth = (double)pageMediaSize.Width;

}

}
if (str == "A2")
{
var pageMediaSize = LocalPrintServer.GetDefaultPrintQueue()
.GetPrintCapabilities()
.PageMediaSizeCapability
.FirstOrDefault(x => x.PageMediaSizeName == PageMediaSizeName.ISOA2);

if (pageMediaSize != null)
{
doc.PageHeight = (double)pageMediaSize.Height;
doc.PageWidth = (double)pageMediaSize.Width;

}
//doc.PageHeight = 2807.0;
// doc.PageWidth = 1985.0;

}

//得到流文档总页数
flowDocumentPage.Text = Viewer.PageCount.ToString();
}

}

以上是关于设置打印纸张的主要内容,如果未能解决你的问题,请参考以下文章

怎么在C#打印自定义纸张

佳博打印怎么设置

C#打印的时候如何设置A4纸张为横向

lodop SET_PRINT_PAGESIZE设置的纸张大小对打印器不起作用

java代码用jacob打印excel怎么设置纸张类型

Windows XP 如何设置打印机纸张的大小