private static FixedDocument CreateDocument(Size pageSize, PrintProcessorCollection p) { if (p != null) { for (int index = 0; index < p.Count; index++) { var printProcessor = p[index]; if (index > 0 && p.IndividualPageOrientation) { if ((pageSize.Width > pageSize.Height && printProcessor.PageOrientation == PageOrientation.Portrait) || (pageSize.Height > pageSize.Width && printProcessor.PageOrientation == PageOrientation.Landscape)) { pageSize = new Size(pageSize.Height, pageSize.Width); } } printProcessor.SetPrintOnAttributes(); printProcessor.Prepare(pageSize); } } var internalPrintProcessor = new InternalPrintProcessor(); return(internalPrintProcessor.CreateFixedDocument(p)); }
internal static void PreviewDocument(PrintProcessorCollection ppc) { var pd = ppc.First().PrintDialog; var fixedDocument = CreateDocument(new Size(pd.PrintableAreaWidth, pd.PrintableAreaHeight), ppc); XpsHelper.ShowFixedDocument(fixedDocument, ppc.FileName); }
public static bool PrintDocument(PrintDialog printDialog, PrintProcessorCollection pp) { var pageSize = new Size(printDialog.PrintableAreaWidth, printDialog.PrintableAreaHeight); var fixedDocument = CreateDocument(pageSize, pp); printDialog.PrintDocument(fixedDocument.DocumentPaginator, ReplaceInvalidCharsFromFilename(pp.FileName)); return(true); }
internal static void PreviewDocument(PrintProcessorCollection ppc, IWindowProvider windowsProvider = null) { if (!ppc.Any()) { return; } var pd = ppc.First().PrintDialog; var fixedDocument = CreateDocument(new Size(pd.PrintableAreaWidth, pd.PrintableAreaHeight), ppc); XpsHelper.ShowFixedDocument(fixedDocument, ppc.FileName, windowsProvider); }
private static FixedDocument CreateDocument(Size pageSize, PrintProcessorCollection p) { if (p != null) { foreach (var printProcessor in p) { printProcessor.SetPrintOnAttributes(); printProcessor.Prepare(pageSize); } } var internalPrintProcessor = new InternalPrintProcessor(); return(internalPrintProcessor.CreateFixedDocument(p)); }