Funkce knihovny PDF
Funkce PDF knihovny
Tato stránka shrnuje hlavní oblasti funkcí v Aspose.PDF FOSS pro Go. Každá sekce odkazuje na vyhrazené stránky vývojářské příručky s kompletními ukázkami kódu.
Správa dokumentů
Document je centrální typ. Podporuje otevírání (Open, OpenWithPassword), vytváření (NewDocument), ukládání (Save) a práci s kolekcemi stránek (Split, Append, Extract, PageCount). SetMetadata a Metadata poskytují čtení/zápis přístup k polím slovníku Info.
doc, _ := pdf.Open("input.pdf")
pages, _ := doc.Split()
fmt.Printf("Split into %d pages\n", len(pages))Zabezpečení a šifrování
EncryptionOptions konfiguruje šifrování založené na hesle jedním voláním Document.SetEncryption. Podporované algoritmy: AES-128 (výchozí), AES-256 (ISO 32000-2 / PDF 2.0) a RC4-128. Permissions řídí jednotlivé operace — tisk, kopírování, přístupnost — nezávisle.
doc, _ := pdf.Open("doc.pdf")
doc.SetEncryption(pdf.EncryptionOptions{
UserPassword: "user",
OwnerPassword: "owner",
Permissions: &pdf.Permissions{AllowPrint: true},
})
doc.Save("doc_secured.pdf")Zpracování AcroForm
Document.Form vrací *Form, který poskytuje přístup ke všem polím. Typové aserce odhalují konkrétní typy polí: TextBoxField, CheckboxField, RadioButtonField, ComboBoxField, ListBoxField a ButtonField. Hodnoty polí jsou zapisovány; vzhledy jsou automaticky znovu generovány PDF prohlížeči.
doc, _ := pdf.Open("form.pdf")
text := doc.Form().Field("name").(*pdf.TextBoxField)
text.SetValue("Jane Doe")
doc.Save("form_filled.pdf")Rozvržení tabulky
Table, Row a Cell vytvářejí mřížkové rozvržení umístěné na stránkách. BorderInfo nastavuje styly okrajů pro jednotlivou buňku nebo pro celou tabulku. MarginInfo nastavuje odsazení. TextStyle, Font, Color, HAlign a VAlign řídí prezentaci textu.
Záložky a navigace
OutlineItemCollection představuje jednotlivou záložku. Nastavte název, styl tučného/kurzivního písma, barvu odkazu a cíl (DestinationXYZ, DestinationFit, DestinationFitH). Vnořené záložky vytvářejí hierarchii kapitol/sekcí. NamedDestinations poskytuje znovupoužitelné cíle stránek přístupné podle jména.
Anotace
AnnotationCollection obsahuje všechny anotace na stránce. Dostupné typy zahrnují TextAnnotation, FreeTextAnnotation, StampAnnotation, HighlightAnnotation, LinkAnnotation, RedactAnnotation, InkAnnotation, LineAnnotation, SquareAnnotation a CircleAnnotation.
Zpracování obrázků
Image představuje vložený obrazový zdroj. ImageInfo uvádí rozměry a barevný prostor. Obrázky lze přidávat přímo na stránky nebo vkládat do buněk tabulky. OptimizeImageOptions poskytuje parametry komprese pro snížení velikosti souboru.
Renderování do obrázku
BmpDevice, PngDevice, JpegDevice, GifDevice a TiffDevice vykreslují jednotlivé stránky PDF do rastrových obrázků. Každé zařízení je vytvořeno s hodnotou Resolution a poskytuje metodu Render*, která zapisuje výstup do io.Writer. RenderOptions řídí parametry vykreslování — výstupní rozlišení (DPI) a barvu pozadí.
doc, _ := pdf.Open("report.pdf")
page, _ := doc.Page(1)
dev := pdf.NewPngDevice(pdf.Resolution{DPI: 150})
f, _ := os.Create("page1.png")
defer f.Close()
dev.Process(page, f)Vyhledávání textu
SearchText přijímá řetězec dotazu a SearchOptions a vrací úsek TextMatch výsledků. Každý TextMatch poskytuje odpovídající text, jeho ohraničující rámeček na stránce a index stránky, kde byl nalezen.
doc, _ := pdf.Open("report.pdf")
matches, _ := doc.SearchText("invoice", pdf.SearchOptions{CaseInsensitive: true})
for _, m := range matches {
fmt.Printf("Found %q on page %d\n", m.Text, m.PageNumber)
}Zploštění formuláře
Document.Flatten převádí všechna interaktivní pole formuláře na statický obsah. Hodnoty polí jsou zapracovány do grafiky stránky a pole formuláře jsou odstraněna, což vytváří PDF, které nelze upravovat.
doc, _ := pdf.Open("form_filled.pdf")
doc.Flatten()
doc.Save("form_flat.pdf")API Reference Shrnutí
| Typ: | Purpose |
|---|---|
Document | Hlavní kontejner dokumentu — otevřít, vytvořit, uložit, rozdělit, sloučit |
Page | Přístup k jedné stránce — velikost, anotace, obsah |
Form | AcroForm kontejner — výčet polí a přístup |
Table | Prvek mřížkového rozvržení |
EncryptionOptions | Konfigurace hesla a algoritmu |
Permissions | Příznaky řízení přístupu pro jednotlivé operace |
OutlineItemCollection | Uzel stromu záložek |
AnnotationCollection | Kontejner anotací stránky |
Metadata | Čtení/zápis informačního slovníku |
Image | Vložený obrázkový zdroj |
BmpDevice | Vykreslit stránku PDF do BMP |
PngDevice | Vykreslit stránku PDF do PNG |
JpegDevice | Vykreslit stránku PDF do JPEG |
TiffDevice | Vykreslit stránku PDF do TIFF |
GifDevice | Vykreslit stránku PDF do GIF |
RenderOptions | Parametry vykreslování — DPI a barva pozadí |
SearchOptions | Konfigurace textového vyhledávání |
TextMatch | Jednotlivý výsledek textového vyhledávání s ohraničujícím rámečkem |
LinearGradient | Lineární gradientová výplň pro vektorové tvary |
RadialGradient | Radiální gradientová výplň pro vektorové tvary |