PDF 문서 생성기를 위한 오픈 소스 Go 라이브러리
개발자가 PDF 문서를 조작할 수 있는 미니멀한 PDF 생성기 Go API입니다.
One File PDF는 GO용 오픈 소스 PDF 생성 API입니다. 미니멀하고 가벼운 PDF 조작 API입니다. 이 API 개발의 주요 테마는 PDF 문서 생성 요구 사항의 80%를 처리할 수 있도록 GO API를 가능한 한 짧게 만드는 것이었습니다. API의 작은 크기는 개발자를 허용합니다.
API는 공통 비즈니스 보고서를 생성하기 위한 광범위한 문서 생성 기능을 제공합니다. 텍스트를 삽입하고, 글꼴을 설정하고, 색상을 지정하고, 열을 설정하고, 직사각형, 원 및 타원을 그리고 PDF 파일에 JPEG, GIF 및 PNG 이미지를 삽입할 수 있습니다. 또한 API를 사용하면 작성자, 작성자, 키워드, 주제 및 제목을 포함한 PDF 문서의 메타데이터 속성을 설정할 수 있습니다.
.
단일 파일 PDF 시작하기
시스템에 One-File-PDF를 설치하려면 다음 명령을 실행하십시오.
GitHub를 통해 One-File-PDF 설치
go get github.com/balacode/one-file-pdf
Free Go 라이브러리를 통해 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