@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

クリスタルレポートでのWORD出力

1
投稿者投稿内容
ベテラン
会議室デビュー日: 2006/11/10
投稿数: 64
投稿日時: 2007-02-21 11:05
お世話になってます。

VS2005(C#)を使用してASP.NETのアプリ開発を行っています。

帳票をバンドル版のクリスタルレポートでPDFファイル出力しているのですが、
出力した帳票の内容修正をしたいという要件が出てきまして、
WORDファイルでも出力できるようにしました。
ところが、PDFだと用紙サイズA4縦(これが意図するサイズです。)で出力されるのですが
WORDで出力するとA3縦となってしまいます。
A3の紙にA4分の領域で印刷されるというわけではなく、A3に拡大されているような感じ
で、WORD側でページ設定にてA4にすると端が切れてしまいます。

ソースはこんな感じなのですが、WORDに出力する際のページ設定は可能でしょうか?
==========================
ReportDocument Report;

Report = new ReportDocument();
Report.Load("c:\\report.rpt");
Report.SetDatabaseLogon("test", "test");

// 変数を宣言し、エクスポート オプションを取得します。
ExportOptions exportOpts = new ExportOptions();

PdfRtfWordFormatOptions excelFormatOpts = new PdfRtfWordFormatOptions();
DiskFileDestinationOptions diskOpts = new DiskFileDestinationOptions();
exportOpts = Report.ExportOptions;

// Word 形式のオプションを設定します。
exportOpts.ExportFormatType = ExportFormatType.WordForWindows;
exportOpts.FormatOptions = excelFormatOpts;

// ディスク ファイルのオプションを設定し、エクスポートします。
exportOpts.ExportDestinationType = ExportDestinationType.DiskFile;
string fileName = "c:\\repo\\test.doc";
diskOpts.DiskFileName = fileName;
exportOpts.DestinationOptions = diskOpts;

Report.Export();
==========================
ベテラン
会議室デビュー日: 2006/11/10
投稿数: 64
投稿日時: 2007-02-21 12:00
自己レスです。解決しました。

Report.PrintOptions.PaperSize

Report.PrintOptions.ApplyPageMargins
で、設定したらうまく行きました。
1

スキルアップ/キャリアアップ(JOB@IT)