バージョン 2022.3
新機能
Skia サポート:
FastReport.Core で、SkiaSharp ライブラリを使用したグラフィックおよびテキストのレンダリングがサポートされるようになりました。このライブラリは、Linux システムで System.Drawing.Common + libgdiplus の代わりに使用されます(他のオペレーティング システムでも機能します)。
このために、末尾に .Skia が付いたパッケージが使用されます。
- FastReport.Core.Skia
- FastReport.Web.Skia
本バージョンの .NET Framework のサポートには制限があり、主に .NET Core/.NET プロジェクトを対象としています。アプリケーションで使用するには、パッケージ名 FastReport.Core を FastReport.Core.Skia に変更するだけです。Linux で作業する場合は次のパッケージを追加してください(Windows および macOS では、必要なパッケージは自動的に追加されます)。
- SkiaSharp.NativeAssets.Linux
- HarfBuzzSharp.NativeAssets.Linux
Skia サポートの詳細については、次の記事をお読みください。
レポートの検証
レポート デザイナーに[検証]タブが追加されました(右側にある[データ]タブと[レポート ツリー]タブの隣)。ここでは、レポート テンプレートを調べて、エラーと警告の一覧を取得することができます。
これらはすべて、オブジェクト名(ある場合)およびエラーの説明と共に 1 つの表に示されます。表内の行を選択すると、デザイナー内の対応するオブジェクトが強調表示されます。

エラーおよび警告のタイプは、名前のないオブジェクト、同じ名前のオブジェクト、交差したオブジェクト、高さまたは幅がゼロのオブジェクト、一部または全部が親オブジェクトの外側にあるオブジェクトのいずれかになります。
名前のないオブジェクトと同じ名前のオブジェクトは重大なエラーです。これらによりさまざまなエラーが発生し、さらには、データ保存レポートの作成中にアプリケーションがクラッシュする可能性があります。また、検証ツールなしでこれらのエラーを見つけることは非常に困難です。
交差したオブジェクトは重大なエラーではありません。場合によっては、有用であり、意図的に使用されている可能性があります(線や四角形など)。交差したテキスト オブジェクトは、ほとんどの場合、間違ったエクスポートが行われる原因となります。Excel などの表のエクスポートでは特にそうです。エクスポートすると、多数の余分なセルが生じるなどの結果になります。このようなオブジェクトでは注意が必要です。
親オブジェクトの境界(バンドやページなど)を部分的に超えているオブジェクトは、まれな状況で役立つこともあります。しかし、ほとんどの場合は、レポートの作成やエクスポートでエラーの原因となります。
完全に親オブジェクトの外側にあるオブジェクトは、重大なエラーです。このようなオブジェクトも検証ツールなしで見つけることは非常に困難です。
交差したオブジェクトや親の外側にあるオブジェクトは、デザイナー オプションの対応する設定を有効にすれば、色(選択可能)で強調表示することができるようになりました。

レポートの検証を使用する必要はありません。しかし、レポートが期待どおりに動作しない、または表示されない場合に役立ちます。
FRX エディター
ときに、FRX ファイルの内容を編集するために、サードパーティ製のテキスト エディターを使用することが必要になる場合があります。これをもっと便利に、レポート デザイナー内で直接行えるようになりました。この目的のために、FRX エディターが追加されました。既定では無効になっています。デザイナー オプションで有効にすることができます。

[FRX]タブはレポート デザイナーの[コード]タブの左側に表示されます。

ここで行った変更はレポートに直ちに適用され、レポートのページで表示されます。
FRX エディターの詳細については、次の記事をお読みください。
StimulSoft レポート コンバーター
StimulSoft のレポート テンプレートを FastReport .NET テンプレートに変換する機能を追加しました。
StimulSoft レポートには、FastReport デザイナーではサポートされていない実装オブジェクトが含まれている可能性があります。これらのオブジェクトはエクスポートされないか、または別のオブジェクトに置き換えられます。置き換えられる場合は、生成されたレポートが StimulSoft で作成されたレポートとできる限り類似するように処理されます。クロス バンドのインポートは、バンドの内容を親バンドへ移動させることによって実装されることに注意する必要があります。
ダイアログ ページのコピー
ダイアログ ページをコピーする機能を追加しました。ダイアログ ページのコンテキスト メニューを使用する方法と、[レポート]>[レポート ページのコピー]ボタンを使用する方法があります。

コピーにより、一意の名前が付いたダイアログ ページのコピーが作成されます。すべての子オブジェクトにも一意の名前が付けられます。ただし、オブジェクトのイベント ハンドラーは元のページと同じイベント ハンドラーになります。必要に応じて、新しいハンドラーを作成する必要があります。
また、ダイアログ ページの削除は[レポート]>[ページの削除]ボタンだけでなく、フォーム エディターやレポート ツリーのコンテキスト メニューからも実行できるようになりました。
直前に使用した書式の設定を無効にする
デザイナーでオブジェクトを作成すると、その設定が次に作成される同じ種類のオブジェクトに適用されます。
たとえば、テキスト オブジェクトを作成し、フォント サイズ、罫線、塗りつぶしの色を設定した場合、次のテキスト オブジェクトは同じ設定で作成されます。
これは、同じ設定または類似した設定のオブジェクトを複数作成する必要がある場合には便利です。
このデザイナーの動作が必要ない場合は、デザイナーのオプションで無効にすることができます。

これにより、オブジェクトが既定の設定で作成されるようになります。
すべてのタブをエクスポート
対話型レポートを表示している場合、詳細レポートを新しいタブで開くことができます。

上の図では 3 つのタブが開いていることを確認できます。以前は、アクティブなタブのみがエクスポートされました。新しい[すべてのタブをエクスポート]オプションにより、すべてのタブを 1 つのファイルにエクスポートすることができるようになりました。

参照されるアセンブリおよびインストールされているプラグインの詳細な説明
プラグインの一覧([表示]>[オプション]>[プラグイン])およびビルドへのリンクの一覧([レポート]>[オプション]>[スクリプト])に含まれる dll の上にマウスを移動させると、説明、バージョン、サイズ、作成日などの詳細な情報が表示されるようになりました。
エクスポートの改善
PDF エクスポートの改善:
Linux バージョン:
- Skia バージョンで複雑な言語(アラビア語、ヘブライ語など)をサポートしました。
すべてのバージョン:
- フォント フォールバック(現在のフォントでサポートされていない文字を表示するための自動フォント選択メカニズム)をサポートしました。

- 母音やアクセントなどの特殊文字の位置付けが正確になりました。
PDF エクスポートの UseFileStream プロパティ
PDF エクスポートに新しい UseFileStream オプションが追加されました。これは、コードからファイルにエクスポートする場合にのみ使用できます。このオプションは、多数のページ(数万ページ)を含むレポートを複数のスレッドでエクスポートする場合に有用です。これによりメモリ不足エラーを回避することができます。それ以外の場合は、オプションを使用することにあまり意味がありません。たとえば、次のように指定します。
Report report = new Report();
PDFExport export = new PDFExport();
export.UseFileStream = true;
report.Export(export, "report.pdf");
Word、PowerPoint、リッチ テキスト、OpenOffice Write、および OpenOffice Calc エクスポートでのロケールのエクスポート
これらのエクスポートで、ドキュメントの言語を選択できるようになりました。既定では、デザイナーで選択された言語が使用されます。

また、Excel 2007 へのエクスポートに[枠線を表示する]オプションを追加しました。
変更点の完全な一覧
[エンジン]
- StimulSoft のレポート コンバーターを実装しました。
- JSON データ ソースの名前が変更されたときに、式内のデータ ソースの名前を変更するようにしました。
- StimulSoft のレポートを変換するときに、PaperSize プロパティを変換するようにしました。
- StimulSoft のレポートを変換するときに、参照されるアセンブリの存在を確認するようにしました。
- 表オブジェクトおよび行列オブジェクトに PrintOnParent プロパティを追加しました。
- RDL のレポートを変換するときに、レポート パラメーターを読み込むようにしました。
- RDL のレポートを変換するときに、サブレポートを読み込むようにしました。
- StoreData プロパティによって JSON 接続データを格納する機能を追加しました。
- 多数のオブジェクトを含むレポートの速度を最適化しました。
- 式を計算または書式設定するとき、e.InnerException がヌルの場合に表示される例外テキストを変更しました。
- RDL レポートを読み込むとき、ページ幅が指定されていない場合には、ページ幅はセクションと同じ幅になります。
- DataMatrix C40 およびテキストをエンコードするための長さの計算を修正しました。
- プリント スプーラーを無効にして出力するときに System.ComponentModel.Win32Exception を処理するようにしました。
- 自動サイズ調整をオンにして出力したときに、図の罫線が表示されない問題を修正しました。
- ページ フッターに子バンドがあり、そのバンドの[新しいページを開始]オプションを有効にしているレポートを作成すると、スタック オーバーフロー エラーが発生する問題を修正しました。
- Unix OS で、基本レポートのパスを現在のレポートに渡さないバグを修正しました。
- StimulSoft のレポートを変換するときに、同じ名前のサブレポートとページが作成されるバグを修正しました。
- StimulSoft のレポートを変換する際の、無効な名前に関するバグを修正しました。
- ダブル パスが無効であるとき、Page.VisibleExpression の TotalPages によって例外が発生するバグを修正しました。
- バンドがページからはみ出す可能性がある際のバグを修正しました。
- オブジェクトがバンドまたは ContainerObject からはみ出す可能性がある際のバグを修正しました。
- RTF 変換の「インデントを戻す」機能の問題を修正しました。
- RTF をレポート オブジェクトに変換した際の、リッチ テキストの行間に関する問題を修正しました。
- 値に要求ヘッダーがない場合に、JsonDataSourceConnectionStringBuilder クラスの ConnectionString プロパティで発生するエラーを修正しました。
[デザイナー]
- 無効なオブジェクト(重複する名前、負のサイズなど)の検出に役立つレポートの検証機能を追加しました。
- RichObject.Text プロパティにエディターを追加しました。
- レポート デザイナーに FRX エディターを追加しました。
- 参照されるアセンブリおよびインストールされているプラグインの詳細な説明を追加しました。
- ダイアログ ページをコピーする機能を追加しました。
- ダイアログ ページの削除をコンテキスト メニューから実行できるようにしました。
- オブジェクトの作成時に、直前に使用した書式の設定を無効にする機能を追加しました。
- FastReport.Id との統合を追加しました。
- レポート デザイナーからオンライン ドキュメントを呼び出すようにしました。
- バーコード サインの視覚化ウィザードを追加しました。
- デザイナーに、ガイドおよびオブジェクトの右インデントと下インデントに関するツールヒントを追加しました。
- デザイナーの[交差するオブジェクトにバックライトを当てる]オプションで色を選択できるようにしました。
- Access 2007 のベースに接続できるようにしました。
- ElasticSearch 接続エディターのフォームの外観を変更しました。
- CISWizardForm のテキスト フィールドを、数値のみをサポートするテキスト フィールド群に変更しました。
- サブテーブル JSON の計算列を作成するときに System.NullRefereceException が生じるバグを修正しました。
- 地図のラベルを描画するときに System.FormatException が生じるバグを修正しました。
- ダイアログ ページのコンテキスト メニューの[貼り付け]をクリックしたときに System.NullReferenceException が生じるバグを修正しました。
- 高 DPI モードで古いデモ アプリケーションからデザイナーを実行した際の、ズーム コントロールの拡大縮小に関するバグを修正しました。
- すべてのレポートを保存した後に、変更の保存を尋ねるフォームが開く問題を修正しました。
- [ようこそ]ウィンドウ内の項目を拡大縮小できない問題を修正しました。
- 交差したグラフにバックライトを当てる際の問題を修正しました。
- JSON テーブルの名前変更によって例外が発生する問題を修正しました。
- DialogWorkspace の UpdateStatusBar に関する問題を修正しました。
- [ファイル]メニューの[アカウント...]ボタンのローカリゼーションに関するバグを修正しました。
- オブジェクトのプロパティを変更すると、オブジェクトの選択が取り消される問題を修正しました。
- イベント ハンドラーを追加した後に[コード]ページに切り替わらなかった際のバグを修正しました。
[プレビュー]
開いているすべてのタブのエクスポートを実装しました。
RichObject を含むレポートをプリンターがないシステム上で実行するときに System.NullReferenceExteption が生じるバグを修正しました。
- 高 DPI モードでの MSChart オブジェクトに関するバグを修正しました。
[エクスポート]
- Word、PowerPoint、リッチ テキスト、OpenOffice Write、および OpenOffice Calc へのエクスポートにロケールのエクスポートを追加しました。
- PDF へのエクスポートで、デジタル署名証明書のパスワードを保存するときに暗号化されるようにしました。
- Excel 2007 へのエクスポートに[枠線を表示する]オプションを追加しました。
- DBF へのエクスポートにデータ型のエクスポート オプションを追加しました。
- SVG エクスポートに新しいプロパティ PrefixStyle を追加しました。このプロパティにより、SVG エクスポート内のすべてのスタイルのプレフィックスを設定することができます。
- Excel 2007 へのエクスポートに[ロケールのデータの書式を使用する]オプションを追加しました。
- PDFExport.UseFileStream プロパティを追加しました。このプロパティにより、RAM の容量が小さいシステム上でも System.OutOfMemoryException を発生させないで大きなレポートをエクスポートすることができます。
- DBF へのエクスポートの既定のエンコードとして UTF-8 を設定しました。
- 高品質 SVG を有効にしており、1 より大きく拡大表示しているときに、階層 HTML へのエクスポートで図が正しく拡大縮小されない問題を修正しました。
- カーニングを行わないフォントを PDF へエクスポートするときに System.IndexOutOfRangeException が生じるバグを修正しました。
- 階層 HTML へのエクスポートの図の拡大縮小に関するバグを修正しました。
- 空のページがあるレポートを Word 2007 へエクスポートするときに System.NullReferenceException が生じるバグを修正しました。
一部の CJK フォントを含む PDF エクスポートでメモリ リークが発生する問題を修正しました。
HTML/Blazor へのエクスポートで、SVG 画像が要求した角度に回転されないバグを修正しました。
- SVG へのエクスポートで、表のセルが繰り返し表示される問題を修正しました。
- 表形式 HTML へのエクスポートをブラウザーから出力すると、pageStyle が正しくない問題を修正しました。
- HTML へのエクスポートで、負のサイズのオブジェクトをエクスポートするときに例外が発生する問題を修正しました。
- PDF へのエクスポートで、Compressed = false である場合に発生する問題を修正しました。
- 表形式 HTML へのエクスポートで、border-collapse プロパティが正しく記録されない問題を修正しました。
- Excel へのエクスポートで、出力ファイルで初めて塗りつぶしするときは変更されないバグを修正しました。
- PostScript へのウォーターマークのエクスポートに関する問題を修正しました。
- PDF へエクスポートする際の、フォント スケールに関するエラー修正しました。
- HtmlTags を含むテキスト オブジェクトを RTF にエクスポートした場合、<br>、<sup>、<sub> タグによる変更が行われないバグを修正しました。
[WebReport]
下位互換性のため、onlineDesigner プロパティは webReport.Designer へ移動されました。
RadioButton によって処理される CheckedChanged イベントが実行されない際のバグを修正しました。
- Blazor でダイアログ コンポーネントが正しく拡大縮小されない問題を修正しました。
- Excel へのエクスポートで、間違ったフォント サイズになるバグを修正しました。
- Blazor で、TextRenderType プロパティが HtmlParagraph に設定されたテキスト オブジェクトのフォントが常に既定値になるバグを修正しました。
[.NET Core]
- レポート スクリプトでパブリック メソッドが正しく検索されない問題を修正しました。
- Azure でのフォント一覧ファイルの作成に関する問題を修正しました。
[CoreWin]
- Visual Studio のツールボックスでの WinForms コンポーネントの動作(デザイン時)に関する問題を修正しました。
- CoreWin のリンクをクリックすると、ブラウザーが不適切に起動する問題を修正しました。
- FastReport.CoreWin について、WinForms API を使用するスクリプトが記述されたレポートに関する問題を修正しました。
[デモ]
- 新しいデモ アプリケーションでは、アプリケーションを再起動しなくてもローカリゼーションを変更できるようになりました。
- FastReport.Core を使用した React のデモを追加しました。
- Chart.frx 内の 1 つのグラフの位置に関する問題を修正しました。
[プラグイン]
- Cassandra への接続を実装しました。
- RPTImportPlugin を更新しました。
[その他]
- FastReport.Net* パッケージに FastReprot.Web(.NET Framework 専用)および FastReport.VSDesign ライブラリを追加しました。
- ストリームを使用してレポートをインポートするオプションを追加しました。
[サービス]
- FastReport.Net パッケージの FastReport.Compat のバージョンが正しくない問題を修正しました。