/// <summary> /// 파일 인쇄 /// </summary> /// <param name="fileName"></param> private void StartPrint(string fileName) { PrintDialog dlg = new PrintDialog(); dlg.PageRangeSelection = PageRangeSelection.AllPages; dlg.UserPageRangeEnabled = true; bool?dlgResult = dlg.ShowDialog(); if (dlgResult != true) { return; } FixedDocument fixedDoc; using (FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read)) { Document doc = new Document(fs); RenderSettings renderSettings = new RenderSettings(); ConvertToWpfOptions renderOptions = new ConvertToWpfOptions { ConvertToImages = false }; renderSettings.RenderPurpose = RenderPurpose.Print; renderSettings.ColorSettings.TransformationMode = ColorTransformationMode.HighQuality; fixedDoc = doc.ConvertToWpf(renderSettings, renderOptions); } dlg.PrintDocument(fixedDoc.DocumentPaginator, "Print"); }
/// <summary> /// Creates an DocumentSource from the PDF and sets the document source of the document viewer accordingly /// </summary> /// <param name="ctrl">The control</param> /// <param name="path">Path to the PDF file</param> private static void LoadDocument(SemViewerControl ctrl, string path) { using (var file = new FileStream(path, FileMode.Open, FileAccess.Read)) { var pdfDoc = new Document(file); var convertOptions = new ConvertToWpfOptions(); var renderSettings = new RenderSettings(); var wpfDoc = pdfDoc.ConvertToWpf(renderSettings, convertOptions, 0, 9, new Summary()); ctrl.DocumentViewer.Document = wpfDoc; } }