問題タブ [documentpage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2029 参照

wpf - 既定のコンストラクターなしで XamlWriter を使用して WPF コンポーネントをシリアル化する

私の例では、 aと aFixedDocumentを使用して、wpf コンポーネントをシリアル化できることがわかりました。XamlWriterMemoryStream

そして、それを取り戻すには:

ただし、今は a もシリアル化できる必要がありDocumentPageます。XamlReader.Load呼び出しで例外をスローさせるデフォルトのコンストラクターがありません。

デフォルトのコンストラクターなしで wpf コンポーネントをシリアル化する方法はありますか?

0 投票する
5 に答える
1265 参照

wpf - バックグラウンド スレッドでの WPF コンポーネントの作成

私は報告システムに取り組んでおりDocumentPageDocumentPaginator. これらのドキュメントには、インスタンス化される多くのWPF コンポーネントXpsDocumentWriterが含まれているため、ページネーターは、後で(実際のプリンターに送信されます) に送信されるときに正しいものを含めます。

私の問題は、インスタンスの作成にかなりの時間がかかることです(Windowsがアプリケーションを凍結としてマークするのに十分です)ので、バックグラウンドスレッドDocumentPageでインスタンスを作成しようとしました.WPFはそれらの属性がGUI スレッド。また、これまでに作成されたページ数を示すプログレス バーを表示したいと考えています。したがって、GUI上で2つのことを並行して起こそうとしているようです。

この問題は説明が難しく、どのように対処すればよいか本当にわかりません。要するに:

  • 一連のDocumentPage を作成します。
    • これらにはWPF コンポーネントが含まれます
    • これらはバックグラウンド スレッドで作成するか、アプリケーションがフリーズしないように他のトリックを使用します。
  • 各ページが作成された後、WPF ProgressBarを更新する必要があります。

これを行う適切な方法がない場合は、代替のソリューションとアプローチを歓迎します。

0 投票する
2 に答える
2905 参照

.net - WPF DocumentPaginator および DocumentPage の予期しないトリミング

複数のページに WPF キャンバスを印刷しようとしています。

ページ幅に収まるように拡大縮小してから、各ページのキャンバスをクリッピングして変換することに完全に満足しています。すべての非常に単純な数学。

私が理解していないのは、印刷可能領域の寸法を取得する方法と、印刷先をプリンターに伝える方法です。何を試しても、使用している値は用紙のサイズであるように見えるため、プリンターが用紙の端まで印刷できないため、トリミングが発生します。

機能には次のプロパティがあります。

「撮影可能」エリアとは?それは私がコンテンツを入れることができる紙の領域ですか?私はそう推測します:

しかし、下と右の余白はどうですか?この情報はどこにありますか?

PageSizeのプロパティを何DocumentPaginatorに設定する必要がありますか? これをから設定する必要がありcapabilities.PageImageableAreaますか?または、dialog.Print()関数がこれを設定していて、それから読み取る必要があるだけGetPage()ですか?

最後に、 を返すとき、3 つのジオメトリ引数、およびDocumentPageに何を渡しますか?pageSizebleedBoxcontentBox

ありがとう :)

0 投票する
2 に答える
2935 参照

wpf - WPF DocumentPaginator は、印刷ジョブが完了するまですべての DocumentPages をメモリに保持しますか?

WPF の DocumentPaginator に関する厳密に理論的な質問:

WPF DocumentPaginator クラスを使用して複数ページのドキュメントを印刷する場合、ページネータは、ドキュメントの印刷が完了するまで、印刷ジョブの履歴を介して要求されたすべての DocumentPages をメモリに保持しますか? それとも、印刷ジョブが終了する前に (つまり、メモリを解放するために) 不要になった DocumentPages を破棄しますか? 例外を発生させずに、印刷中に古い/不要な DocumentPages を解放するようにページネーターに手動で指示する方法はありますか?

このたびはご協力いただき、誠にありがとうございました。

0 投票する
2 に答える
1806 参照

c# - WPF で各 DocumentPage のコンテンツをページ番号で取得することは可能ですか?

DocumentPaginator を使用して FlowDocument のテキストをページに分割します。ComputePageCount() の後にページ番号で各ページのコンテンツを取得することは可能ですか? そうでない場合、どうすれば他の方法でそれを行うことができますか?

コード:

0 投票する
1 に答える
973 参照

wpf - PageDocuments から FixedDocument を取得する方法

私はWPFで印刷に取り組んでいます。
クラスを継承するクラスを実装しDocumentPaginatorます

仕事をするためのより多くのヘルパーメソッドがあります。

メソッドから返されたオブジェクトを使用して、プロパティFixedDocumentから返すオブジェクトを作成したいと考えています。SourceDocumentPageGetPage

FixedDocument印刷前にファイルにプレビューを作成したいので、ソース プロパティから返される必要があります。

プレビューアはDocumentViewerオブジェクトがReportPreviewerWindow

0 投票する
1 に答える
541 参照

wpf - WPF DocumentPaginator: DocumentPage のサイズを横向きに変更

DocumentPaginator を A4 横向き形式 (Size(96 * 11, 96 * 8.5)) で使用して、WPF ウィンドウを PDF ファイル (Microsoft Print to pdf) として印刷しようとしましたが、常に A4 縦向き形式で取得します。(DocumentPaginator については、ここで説明されている方法を使用します: WPF - ビジュアルを印刷するときのページネーション)

障害はどこにありますか?フォーマットの問題がない限り、完璧に動作します。DocumentPage.Size プロパティのドキュメントに記載されているように、DocumentPage のサイズを変更するにはどうすればよいですか?

XAML:

C#: