2

LocalReportをXPSファイルにレンダリングしようとしているので、この記事に示すように、XPSPrintAPIを使用してWindowsサービスからそれらを印刷できます。

私が見つけた問題は、ローカルレポートをXPSに直接レンダリングできないことです。たぶん、それを画像ストリームにレンダリングしてから、その画像を手動で作成したXPSに埋め込むことができますが、そのソリューションはあまり好きではありません。

LocalReportをXPSにレンダリングすることについてアドバイスをいただければ幸いです。

4

1 に答える 1

3

残念ながら、それは簡単ではありません。それを除いて。

まず、すべてがSTAスレッド内で発生する必要があります。したがって、スレッドの問題から始めます。

次に、XPSドキュメントはWPFと深く絡み合っています。XPSドキュメントは、そのコンテンツをDependencyObjectsであるFixedDocumentSequencesとして公開します。これがすべてWPFです。LocalReportは、フォームベースのコンポーネントであるWPFではありません。

唯一のオプションは、コード化するある種の解析およびレンダリングプロセスによってWPF表現に変換できるある種の形式にレポートをレンダリングすることです。これは、レポートから画像を作成するのと同じくらい簡単な場合もあれば、XSLXコンバーターを作成するのと同じくらい難しい場合もあります。

しかし、そもそもなぜこれを気にするのでしょうか。 LocalReportのドキュメントには、XPS印刷パスを処理せずにレポートを印刷する方法が示されています。

于 2012-10-30T17:15:54.113 に答える