前提・実現したいこと
XPSファイルを印刷ダイアログを表示した後に
印刷するプログラムを作成しています。
下図の印刷設定がうまく働かず横向きの内容が
縦向きの用紙に印刷されてしまうため、はみ出て
印刷されてしまいます。
印刷プレビューにチェックを入れてもプレビューが
表示されません。
印刷設定どおりに印刷するにはどうすればいいでしょうか。
ご教授よろしくお願いいたします。
発生している問題・エラーメッセージ
印刷設定どおりに印刷がされない。
印刷プレビューにチェックを入れてもプレビューが
表示されずそのままプリンターに印刷ジョブが行ってしまう。
該当のソースコード
C#
1 private void Print() 2 { 3 var pDialog = new PrintDialog(); 4 pDialog.PageRangeSelection = PageRangeSelection.AllPages; 5 pDialog.UserPageRangeEnabled = true; 6 7 var xpsDocument = new System.Windows.Xps.Packaging.XpsDocument("XPSファイルパス", FileAccess.Read); 8 9 var fixedDocSeq = xpsDocument.GetFixedDocumentSequence(); 10 11 // XPSファイルに設定されている印刷設定を印刷ダイアログに使用 12 pDialog.PrintQueue.DefaultPrintTicket = xpsDocument.FixedDocumentSequenceReader.PrintTicket; 13 pDialog.PrintTicket = xpsDocument.FixedDocumentSequenceReader.PrintTicket; 14 if (pDialog.ShowDialog() == true) 15 { 16 ticket = pDialog.PrintTicket; 17 pDialog.PrintQueue.DefaultPrintTicket = ticket; 18 19 fixedDocSeq.PrintTicket = ticket; 20 21 queue = pDialog.PrintQueue; 22 XpsDocumentWriter writer = PrintQueue.CreateXpsDocumentWriter(queue); 23 writer.Write(fixedDocSeq); 24 writer = null; 25 } 26 xpsDocument.Close(); 27 28 }
補足情報(FW/ツールのバージョンなど)
Visual Studio 2017
.NET Franework 4.6.1
WPF アプリケーション

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。