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
DocumentHlavní kontejner dokumentu — otevřít, vytvořit, uložit, rozdělit, sloučit
PagePřístup k jedné stránce — velikost, anotace, obsah
FormAcroForm kontejner — výčet polí a přístup
TablePrvek mřížkového rozvržení
EncryptionOptionsKonfigurace hesla a algoritmu
PermissionsPříznaky řízení přístupu pro jednotlivé operace
OutlineItemCollectionUzel stromu záložek
AnnotationCollectionKontejner anotací stránky
MetadataČtení/zápis informačního slovníku
ImageVložený obrázkový zdroj
BmpDeviceVykreslit stránku PDF do BMP
PngDeviceVykreslit stránku PDF do PNG
JpegDeviceVykreslit stránku PDF do JPEG
TiffDeviceVykreslit stránku PDF do TIFF
GifDeviceVykreslit stránku PDF do GIF
RenderOptionsParametry vykreslování — DPI a barva pozadí
SearchOptionsKonfigurace textového vyhledávání
TextMatchJednotlivý výsledek textového vyhledávání s ohraničujícím rámečkem
LinearGradientLineární gradientová výplň pro vektorové tvary
RadialGradientRadiální gradientová výplň pro vektorové tvary

Viz také:

 Čeština