C++Builderで、PDFファイルを作成する方法を検討しました。
C++BuildeのGetitパッケージマネージャで利用できそうなコンポーネントとしては、以下の、PowerPDF、FastReportがあります。
それ以外に、オープンソースのライブラリ libHaru(Haru Free PDF Library)が、良さそうです。
PowerPDF
Embarcadero版のPowerPDFは、Kofax社が開発・販売しているPDFソフトウェアのPowerPDFを、エンバカデロ・テクノロジーズ社がOEM供給しているバージョンです。エンバカデロの開発環境であるRAD StudioやDelphi、C++Builderなどのアプリケーションから、PDFの作成や編集、変換、保護、デジタル署名などの機能を利用できます。
各エディション毎に制約もあるようですが、PowerPDF Standard版で以下の事が出来るようです。
- 編集機能:テキストや画像の編集、フォームへの入力など、PDFの編集が可能です。
- 変換機能:PDFを他のファイル形式に変換できます。
- 保護機能:パスワードによる保護や、編集・印刷・コピーの制限など、PDFの保護が可能です。
- デジタル署名機能:PDFにデジタル署名を追加できます
Getitパッケージマネージャからインストール
Getitパッケージマネージャからインストールできます。
Github
Githubに、ソースファイル一式が公開されています。
参考URL
FastReport
FastReportコンポーネントは、Crystal Reports や BIRT などのレポート作成ツールと同様に、アプリケーションからレポートを作成するためのコンポーネントです。FastReportコンポーネントは、Windows アプリケーション、Web アプリケーション、モバイルアプリケーションなど、さまざまなアプリケーションで利用できます。
FastReportコンポーネントの主な機能は、以下のとおりです。
- レポートのデザイン:レポートのレイアウトや、テキスト、画像、グラフなどのオブジェクトの配置を、グラフィカルなインターフェースで行うことができます。
- レポートの生成:レポートのデータを指定して、PDF、Excel、HTML などのレポートファイルを生成できます。
- レポートのカスタマイズ:レポートのデザインや、データの表示方法などを、コードでカスタマイズできます。
FastReportコンポーネントは、以下の用途に利用できます。
- 帳票の作成:請求書、納品書、注文書などの帳票を作成できます。
- 分析レポートの作成:売上分析レポート、顧客分析レポートなどの分析レポートを作成できます。
- プレゼンテーション資料の作成:プレゼンテーション資料用のレポートを作成できます。
Getitパッケージマネージャからインストール
FastReportも、Getitパッケージマネージャからインストールできます。
Github
Githubに、ソースファイル一式が公開されています。
使い方
他にも公開されていますが、以下のYouTubeを参考にしてください。
- FastReportの使い方、はじめの一歩
- 「Delphi/C++Builder + FastReportで作る実用レポート出力」 1/2
- 「Delphi/C++Builder + FastReportで作る実用レポート出力」 2/2
libHaru ライブラリィ
ibHaru(Haru Free PDF Library)は、PDF文書を生成するためのオープンソースのライブラリです。C言語で記述されており、様々なプラットフォームで利用することができます。以下は、libHaruの主な特徴や機能についての概要です。
- PDF生成機能: libHaruは、PDF文書の生成をサポートしています。基本的な機能としては、テキスト、画像、図形、アノテーション(注釈)、リンクなどを含むPDFページの構築が可能です。
- フォントサポート: TrueTypeやOpenTypeなどのフォント形式をサポートしており、異なるフォントを使用したテキストの描画が可能です。また、フォント埋め込みもサポートされています。
- 図形やイメージの描画: libHaruは、線、円、矩形、パスなどの基本的な図形を描画するための機能を提供します。また、JPEGやPNGなどの画像を挿入して文書に組み込むこともできます。
- エンコーディングサポート: libHaruはさまざまなテキストエンコーディングをサポートしており、国際化対応が可能です。
- ドキュメントのメタデータ設定: PDF文書のメタデータ(作成者、タイトル、作成日時など)を設定するための機能が提供されています。
- アーキテクチャのポータビリティ: C言語で実装されているため、libHaruは多くのプラットフォームで利用できます。Linux、Windows、macOSなど、さまざまな環境でコンパイルおよび使用が可能です。
libHaru は、C/C++ で記述されたライブラリであるため、直接的には C/C++ でのみ使用できます。
しかし、C/C++ から他の言語へのインターフェースを提供するライブラリやフレームワークを利用することで、他の言語でも libHaru を使用できます。
具体的には、以下の言語で libHaru を使用できます。
- Python
- Ruby
- Java
- JavaScript
- PHP
libHaru ライブラリィの作成・使い方
libHaru ライブラリィの作成・使い方につきましては、以下のプログをご覧ください。