私たちは、SSRSをダウンストリームクライアントは二つのアプリケーション、1コンソールおよび第二のWinFormsアプリケーションに報告しています。コンソールアプリケーションは自動的にユーザーの最新のレポートを生成し、同じレポートをデフォルトの選択されたプリンタに自動印刷するオプションを持っています。レポートをPDFにエクスポートするときにレポートが完璧に見えるが、レポートを自動印刷するとき、テキストのサイズがわずかに縮小し得るように思われる、テキストの間隔が減少し、及び配置のいくつかは、自動生成されたPDFに比べて変化します。SSRSレポートは、画像と印刷さdoesntのマッチPDFエクスポートとしてストリーミング
レポートが自動印刷されると、レポートとしてイメージをストリームとして出力し、次にカスタムのPrintPageメソッドを作成して矩形を作成し、矩形内にイメージを設定してイメージを印刷して送信します(下のコードを参照)。
private void PrintPage(object sender, PrintPageEventArgs ev)
{
var pageImage = new Metafile(_mStreams[_currentPageIndex]);
// Adjust rectangular area with printer margins.
var adjustedRect = new Rectangle(
ev.PageBounds.Left - (int)ev.PageSettings.HardMarginX,
ev.PageBounds.Top - (int)ev.PageSettings.HardMarginY,
ev.PageBounds.Width,
ev.PageBounds.Height);
// Draw a white background for the report
ev.Graphics.FillRectangle(Brushes.White, adjustedRect);
// Draw the report content
ev.Graphics.DrawImage(pageImage, adjustedRect);
// Prepare for the next page. Make sure we haven't hit the end.
_currentPageIndex++;
ev.HasMorePages = (_currentPageIndex < _mStreams.Count);
}
余白とページのマッチアップのサイジング処理が完了しているが、明らかにテキストが自動印刷されたコピーに表示されている方法に違いがあります。以下は、2つのレポートのスクリーンショットです。テキストの一部の配置と配置は、自動生成されたPDFレポートから少し変化しています。この問題は、自動生成されたPDFにイメージエクスポートよりもページ数が多い50ページ以上のドキュメントがある場合に、レポートに多くの影響を与えます。
これですべてのヘルプは大歓迎です
は、ありがとうございます。