PDF-bibliotheekfuncties

PDF-bibliotheekfuncties

PDF-bibliotheekfuncties

Deze pagina geeft een overzicht van de belangrijkste functiegebieden in Aspose.PDF FOSS voor Go. Elke sectie linkt naar speciale ontwikkelaarsgids-pagina’s met volledige codevoorbeelden.


Documentbeheer

Document is het centrale type. Het ondersteunt openen (Open, OpenWithPassword), aanmaken (NewDocument), opslaan (Save) en bewerken van paginacollecties (Split, Append, Extract, PageCount). SetMetadata en Metadata bieden lees-/schrijftoegang tot de Info-woordenboekvelden.

doc, _ := pdf.Open("input.pdf")
pages, _ := doc.Split()
fmt.Printf("Split into %d pages\n", len(pages))

Beveiliging en versleuteling

EncryptionOptions configureert wachtwoordgebaseerde versleuteling in één aanroep van Document.SetEncryption. Ondersteunde algoritmen: AES-128 (standaard), AES-256 (ISO 32000-2 / PDF 2.0), en RC4-128. Permissions regelt individuele bewerkingen — afdrukken, kopiëren, toegankelijkheid — onafhankelijk.

doc, _ := pdf.Open("doc.pdf")
doc.SetEncryption(pdf.EncryptionOptions{
	UserPassword:  "user",
	OwnerPassword: "owner",
	Permissions:   &pdf.Permissions{AllowPrint: true},
})
doc.Save("doc_secured.pdf")

AcroForm verwerking

Document.Form retourneert een *Form die toegang biedt tot alle velden. Type-asserties onthullen de specifieke veldtypes: TextBoxField, CheckboxField, RadioButtonField, ComboBoxField, ListBoxField en ButtonField. Veldwaarden worden geschreven; weergaven worden automatisch opnieuw gegenereerd door PDF-viewers.

doc, _ := pdf.Open("form.pdf")
text := doc.Form().Field("name").(*pdf.TextBoxField)
text.SetValue("Jane Doe")
doc.Save("form_filled.pdf")

Tabelindeling

Table, Row en Cell bouwen rasterindelingen die op pagina’s worden geplaatst. BorderInfo stelt randstijlen in per cel of voor de hele tabel. MarginInfo stelt opvulling in. TextStyle, Font, Color, HAlign en VAlign regelen de tekstpresentatie.


Bladwijzers en Navigatie

OutlineItemCollection vertegenwoordigt een enkele bladwijzer. Configureer titel, vet/cursief stijl, linkkleur en bestemming (DestinationXYZ, DestinationFit, DestinationFitH). Geneste bladwijzers bouwen een hoofdstuk-/sectiehiërarchie. NamedDestinations biedt herbruikbare paginatargets die via naam toegankelijk zijn.


Annotaties

AnnotationCollection bevat alle annotaties op een pagina. Beschikbare typen omvatten TextAnnotation, FreeTextAnnotation, StampAnnotation, HighlightAnnotation, LinkAnnotation, RedactAnnotation, InkAnnotation, LineAnnotation, SquareAnnotation en CircleAnnotation.


Afbeeldingsverwerking

Image vertegenwoordigt een ingebedde afbeeldingsbron. ImageInfo maakt afmetingen en kleurruimte beschikbaar. Afbeeldingen kunnen direct aan pagina’s worden toegevoegd of ingebed in tabelcellen. OptimizeImageOptions biedt compressieparameters voor het verkleinen van de bestandsgrootte.


Renderen naar afbeelding

BmpDevice, PngDevice, JpegDevice, GifDevice en TiffDevice renderen individuele PDF-pagina’s naar rasterafbeeldingen. Elk apparaat wordt geconstrueerd met een Resolution-waarde en maakt een Render*-methode beschikbaar die de uitvoer naar een io.Writer schrijft. RenderOptions regelt de renderparameters — uitvoerresolutie (DPI) en achtergrondkleur.

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)

Tekst zoeken

SearchText accepteert een query-string en SearchOptions en retourneert een slice van TextMatch resultaten. Elke TextMatch maakt de gevonden tekst, de omvattende rechthoek op de pagina, en de paginanummer waar deze werd gevonden beschikbaar.

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)
}

Formulier flattenen

Document.Flatten converteert alle interactieve formuliervelden naar statische inhoud. Veldwaarden worden in de paginagrafieken ingebakken en de formuliervelden worden verwijderd, waardoor een PDF ontstaat die niet kan worden bewerkt.

doc, _ := pdf.Open("form_filled.pdf")
doc.Flatten()
doc.Save("form_flat.pdf")

API Reference Samenvatting

TypePurpose
DocumentKern documentcontainer — openen, maken, opslaan, splitsen, samenvoegen
PageEnkele paginatoegang — grootte, annotaties, inhoud
FormAcroForm container — veldenumeratie en toegang
TableRasterindelingselement
EncryptionOptionsWachtwoord- en algoritmeconfiguratie
PermissionsPer-operatie toegangscontrolevlaggen
OutlineItemCollectionBladwijzerboomknooppunt
AnnotationCollectionPagina-annotatiecontainer
MetadataInfo-woordenboek lezen/schrijven
ImageIngesloten afbeeldingsresource
BmpDeviceRender PDF-pagina naar BMP
PngDeviceRender PDF-pagina naar PNG
JpegDeviceRender PDF-pagina naar JPEG
TiffDeviceRender PDF-pagina naar TIFF
GifDeviceRender PDF-pagina naar GIF
RenderOptionsRenderparameters — DPI en achtergrondkleur
SearchOptionsTekstzoekconfiguratie
TextMatchEnkel tekstzoekresultaat met begrenzingsvak
LinearGradientLineaire gradiëntvulling voor vectorvormen
RadialGradientRadiale gradiëntvulling voor vectorvormen

Zie ook

 Nederlands