Go API pro vytváření a zpracování dokumentu PDF
Go Library, která vývojářům softwaru umožňuje importovat, upravovat, manipulovat a ukládat dokumenty PDF.
Gopdf je otevřená knihovna Source Go, která obsahuje funkce pro práci s dokumenty PDF v aplikacích Go. Knihovna pomáhá vývojářům generovat a upravovat soubory PDF pomocí pouhých několika řádků kódu Go. Knihovna obsahuje vložení dílčího písma Unicode pro oblíbené jazyky, jako je čínština, japonština, korejština atd.
Knihovna je velmi stabilní a velmi snadno se používá. Obsahuje několik důležitých funkcí souvisejících s vytvářením a správou PDF, jako je tisk textu, přidávání a nahrazování obrázků, používání odkazů uvnitř PDF, přidávání stránky do PDF, kreslení čáry, oválu nebo mnohoúhelníku na stránku PDF, otáčení obrázku nebo textu. , nastavení průhlednosti textu, vyrovnání párů písem, generování souborů PDF chráněných heslem a mnoho dalšího.
.
Začínáme s gopdf
Doporučený způsob instalace gopdf je pomocí GitHubu. Chcete-li nainstalovat gopdf do vašeho systému, spusťte následující příkaz
Nainstalujte gopdf přes GitHub
go get https://github.com/signintech/gopdf.git
Chcete-li získat nejnovější aktualizaci, spusťte následující příkaz.
Generujte soubory PDF prostřednictvím knihovny Go
Open source knihovna gopdf poskytuje vývojářům softwaru možnost vytvářet a upravovat dokumenty PDF v aplikacích Go. PDF je jedním z předních formátů souborů, který je široce používán ve vzdělávacím, právním, lékařském, malém a IT průmyslu. PDF vytvořené pomocí knihovny má několik výhod oproti jiným předním formátům souborů, jako je snadná tvorba, lepší zabezpečení, přenositelnost, univerzální kompatibilita, spolehlivost a mnoho dalšího.
Vkládání obrázků do PDF přes Go
Knihovna gopdf obsahuje funkce pro vkládání obrázků do jejich dokumentů PDF v rámci jejich vlastních aplikací. Můžete také nastavit šířku, výšku a umístění podle svého výběru uvnitř stránky PDF. Po vložení jej můžete snadno upravit a nahradit jakýmkoli jiným podporovaným typem obrázku pomocí několika řádků kódu GO. Můžete použít některé z oblíbených obrazových formátů, jako jsou JPEG, PNG, GIF, TIFF a mnoho dalších
Načtěte obrázek do stránek PDF přes Go
package main
import (
"log"
"github.com/signintech/gopdf"
)
func main() {
pdf := gopdf.GoPdf{}
pdf.Start(gopdf.Config{PageSize: *gopdf.PageSizeA4 })
pdf.AddPage()
var err error
err = pdf.AddTTFFont("loma", "../ttf/Loma.ttf")
if err != nil {
log.Print(err.Error())
return
}
pdf.Image("../imgs/gopher.jpg", 200, 50, nil) //print image
err = pdf.SetFont("loma", "", 14)
if err != nil {
log.Print(err.Error())
return
}
pdf.SetXY(250, 200) //move current location
pdf.Cell(nil, "gopher and gopher") //print text
pdf.WritePdf("image.pdf")
}
Importovat a upravovat existující PDF
Open source knihovna gopdf umožňuje softwarovým programátorům importovat existující PDF dokument a snadno v něm provádět změny pomocí příkazu Go. Funkce DownloadFile stáhne soubor přes URL do místního souboru. Je to velmi užitečné, protože do paměti nenačte celý soubor a pouze konkrétní stránku. Jakmile provedete změny a budete spokojeni, můžete je snadno znovu uložit.
Vytváření souborů PDF chráněných heslem pomocí knihovny Go
Knihovna gofpdf s otevřeným zdrojovým kódem umožňuje softwarovým programátorům programově chránit své dokumenty PDF použitím ochrany heslem. Poskytuje kompletní podporu pro vytváření souborů PDF s vlastním heslem nebo může nastavit své vlastní heslo. Uživatelé si mohou vybrat ze sady různých dostupných funkcí, jako je povolení čtení souboru PDF, povolení k otevření PDF, úprava obsahu souboru PDF a tak dále.
Načtěte obrázek do stránek PDF přes Go
package main
import (
"log"
"github.com/signintech/gopdf"
)
func main() {
pdf := gopdf.GoPdf{}
pdf.Start(gopdf.Config{
PageSize: *gopdf.PageSizeA4, //595.28, 841.89 = A4
Protection: gopdf.PDFProtectionConfig{
UseProtection: true,
Permissions: gopdf.PermissionsPrint | gopdf.PermissionsCopy | gopdf.PermissionsModify,
OwnerPass: []byte("123456"),
UserPass: []byte("123456789")},
})
pdf.AddPage()
pdf.AddTTFFont("loma", "../ttf/loma.ttf")
pdf.Cell(nil,"Hi")
pdf.WritePdf("protect.pdf")
}