Repolode
carlos7ags

carlos7ags/folio

HTMLからの変換やレイアウトエンジン、フォーム、バーコード、PDF/A出力に対応した、PDFの生成・編集・署名用Goライブラリ。

代替できる製品:Adobe Acrobat

スター
873
フォーク
57
未解決の Issue
49
最終コミット
一昨日

これは何?

FolioはGo向けのPDFライブラリです。段落、表、リスト、フレックスコンテナ、画像に対応したレイアウトエンジンを備え、ヘッドレスブラウザを使わずに、プロセス内でHTMLとCSSをPDFに変換できます。Go APIでページを作成できるほか、既存のPDFをテンプレートとして取り込み、動的なコンテンツを追加できます。

PDFの生成だけでなく、読み込みや結合、テキストの抽出、墨消しによるテキストの完全な削除にも対応しています。また、AcroFormフィールドの作成、外部署名者に対応したPAdES電子署名(B-B、B-T、B-LT)の追加、PDF/Aおよびタグ付きPDFの出力も可能です。テキスト整形は、左から右、右から左、インド系文字、CJKの各スクリプトに対応しています。バーコードはCode128、QR、EAN-13を利用できます。

Folioには、PDFの結合、検査、テキスト抽出を行うCLIと、FFI経由で他の言語から機能を利用できるC共有ライブラリが付属しています。

主な機能

  • 01表、リスト、フレックスコンテナ、画像に対応し、改ページ時の分割も可能なレイアウトエンジン。
  • 02プロセス内で実行できる、HTMLとCSSからPDFへの変換。
  • 03LTR、RTL、インド系文字、CJKの各スクリプトに対応したテキスト整形。
  • 04テキスト、チェックボックス、ラジオボタン、ドロップダウン、署名などのインタラクティブなAcroFormフィールド。
  • 05HSMやKMSなどの外部署名者に対応したPAdES電子署名。
  • 06コンテンツストリームからテキストを削除する、テキストベースの墨消し。
  • 07PDF/Aおよびタグ付きPDFの出力に加え、C共有ライブラリとCLIを提供。

ユースケース

  • Goバックエンドから請求書、レポート、領収書を生成する。
  • レターヘッドや証明書など、既存のPDFテンプレートに情報を入力する。
  • PDF/Aやタグ付き出力が必要な、長期保存用またはアクセシブルなPDFを作成する。
  • ドキュメント処理パイプラインでPDFに署名したり、墨消ししたりする。

クイックスタート

  1. 1

    ライブラリをインストールする

    go get github.com/carlos7ags/folio
  2. 2

    README の Hello World の例を使って Go ファイルを作成し、実行する

    go run main.go

使う前に知っておきたいこと

  • Go 1.25 以降が必要です。
  • 一部の HTML と CSS の機能には対応していません。docs/CSS_SUPPORT.md を参照してください。

トピック

よくある質問

folio とは?
HTMLからの変換やレイアウトエンジン、フォーム、バーコード、PDF/A出力に対応した、PDFの生成・編集・署名用Goライブラリ。 FolioはGo向けのPDFライブラリです。段落、表、リスト、フレックスコンテナ、画像に対応したレイアウトエンジンを備え、ヘッドレスブラウザを使わずに、プロセス内でHTMLとCSSをPDFに変換できます。Go APIでページを作成できるほか、既存のPDFをテンプレートとして取り込み、動的なコンテンツを追加できます。
folio は無料で使えますか?ライセンスは?
folio は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
folio は今もメンテナンスされていますか?
活発にメンテナンス中。folio の最終コミットは 2026年10月17日 です。
folio は何に使えますか?
Goバックエンドから請求書、レポート、領収書を生成する。 レターヘッドや証明書など、既存のPDFテンプレートに情報を入力する。 PDF/Aやタグ付き出力が必要な、長期保存用またはアクセシブルなPDFを作成する。 ドキュメント処理パイプラインでPDFに署名したり、墨消ししたりする。
folio のインストール方法は?
ライブラリをインストールする: go get github.com/carlos7ags/folio README の Hello World の例を使って Go ファイルを作成し、実行する: go run main.go
folio はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/carlos7ags/folio

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト