PDF Document Generator 用のオープンソース Go ライブラリ
開発者が PDF ドキュメントを操作できるようにする最小限の PDF ジェネレーター Go API。
One File PDF は、GO 用のオープン ソース PDF 生成 API です。ミニマリストで軽量な PDF 操作 API です。この API の開発の背後にある主なテーマは、PDF ドキュメント生成のニーズの 80% をカバーするために API をできるだけ短くすることでした。 API のサイズが小さいため、開発者はこれを行うことができます。
API は、一般的なビジネス レポートを生成するためのさまざまなドキュメント生成機能を提供します。テキストの挿入、フォントの設定、色の指定、列の設定、四角形、円、および楕円の描画、PDF ファイルへの JPEG、GIF、および PNG 画像の挿入を行うことができます。さらに、この API を使用すると、作成者、作成者、キーワード、件名、タイトルなど、PDF ドキュメントのメタデータ プロパティを設定できます。
.
One-File-PDF の使用を開始する
One-File-PDF をシステムにインストールするには、次のコマンドを実行してください。
GitHub 経由で One-File-PDF をインストールする
go get github.com/balacode/one-file-pdf
Free Go Library を介して PDF ドキュメントを生成する
Go で PDF ドキュメントを生成するのはとても簡単です。 API の pdf.NewPDF("A4") メソッドを使用して、A4 サイズの空白の PDF ドキュメントを作成するだけです。 pdf.SetUnits("cm") メソッドを使用してドキュメントの寸法をセンチメートル単位で設定し、同様に、pdf.DrawUnitGrid() メソッドを使用して新しく作成された PDF ドキュメントにグリッドを描画できます。
Free GO API を使用して PDF にフォントを設定する
この軽量なオープンソース API により、基本的なドキュメント操作と PDF ドキュメントの生成操作が可能になります。新しいドキュメントを作成したら、フォントとフォント スタイルを設定する必要があります。フォントを設定するには、pdf.SetFont()メソッドで位置を、pdf.SetXY()メソッドでテキストの色を、pdf.SetColor()メソッドでそれぞれ設定します。
Go 経由で PDF ドキュメントに画像を描画する
The lightweight One File library provides complete support for drawing JPEG, GIF, and PNG Images as well as shapes in PDF files. It also provides support for modifying images according to your own needs.Go経由でPDFに画像を描画する
func pngImages() {
const FILENAME = "png_images.pdf"
fmt.Println("Generating sample PDF:", FILENAME, "...")
doc := pdf.NewPDF("A4")
doc.SetUnits("cm")
//
// draw background pattern
for x := 0.0; x < doc.PageWidth(); x += 6 {
for y := 0.0; y < doc.PageHeight(); y += 5 {
doc.DrawImage(x, y, 5, "../image/gophers.png", "cyan")
}
}
// draw dice
doc.SetColor("WHITE").FillBox(3.5, 4.5, 14.7, 17).
//
DrawImage(4, 5, 5, "../image/dice.png", "WHITE").
DrawImage(11, 5, 5, "../image/dice.png", "RED").
//
DrawImage(4, 10.5, 5, "../image/dice.png", "GREEN").
DrawImage(11, 10.5, 5, "../image/dice.png", "BLUE").
//
DrawImage(4, 16, 5, "../image/dice.png", "BLACK").
SetFont("Helvetica-Bold", 50).
SetXY(3, 3).SetColor("#009150").
DrawText("PNG Image Demo")
//
doc.SaveFile(FILENAME)
} // pngImages