1. Producten
  2.   PDF
  3.   GO
  4.   unipdf  
 
  

Ga naar API voor het maken en verwerken van PDF-documenten 

Open Source Go-bibliotheek waarmee ontwikkelaars pdf-documenten kunnen maken, bewerken, manipuleren en converteren.

De unipdf is een open Source Go-bibliotheek die gemakkelijk al uw vragen met betrekking tot het maken en manipuleren van PDF-documenten kan afhandelen. De bibliotheek is beschikbaar onder een dubbele licentie waarbij de AGPL-licentie kan worden gebruikt voor de ontwikkeling van open source software. De bibliotheek biedt volledige ondersteuning voor het genereren van PDF-documenten met een hoog niveau aan tekst, tekeningen en afbeeldingen.

De open source unipdf-bibliotheek ondersteunt verschillende veelvoorkomende en geavanceerde functies voor het verwerken en optimaliseren van PDF-documenten, zoals het maken van PDF-rapporten, het genereren van PDF-rapporten, het maken van facturen, het maken en verwerken van alinea's, het samenvoegen en splitsen van PDF-pagina's, het roteren van pagina's, het extraheren van tekst uit PDF-bestanden, PDF exporteren naar CSV, afbeeldingen converteren naar PDF, PDF comprimeren en optimaliseren, PDF-bestanden van watermerken, ondersteuning voor samengestelde lettertypen (Unicode-tekens), digitale handtekeningen en nog veel meer.

.

Previous Next

Aan de slag met unipdf

Voer de volgende opdracht uit om de unipdf op uw systeem te installeren. 

Installeer gofpdf via GitHub

go get github.com/unidoc/unipdf/v3

Ga voor de laatste update naar de productreleases-pagina .

Genereer PDF-rapport via Go API

De open source unipdf API biedt ontwikkelaars de mogelijkheid om PDF-rapporten te maken in hun eigen Go-applicaties. De bibliotheek stelt ontwikkelaars in staat om efficiënt met PDF-documenten te werken en biedt ondersteuning voor het eenvoudig toevoegen van afbeeldingen, tabellen, kopteksten, voetteksten en nog veel meer aan uw PDF-rapporten. U kunt met slechts een paar regels code ook dynamische inhoud in uw PDF-rapporten plaatsen.

Converteer PDF-bestand naar CSV via Go API

Met de unipdf-bibliotheek kunnen softwareontwikkelaars PDF-bestanden converteren naar CSV-bestandsindelingen binnen hun eigen Go-applicaties. PDF naar Excel-converters zijn een zeer handig hulpmiddel voor bedrijven en onderzoeksinstellingen. Het is heel gemakkelijk te gebruiken en biedt de mogelijkheid om TextMarks uit PDF te extraheren en ze te groeperen in woorden, rijen en kolommen voor CSV-gegevensextractie.

Afbeeldingen invoegen in PDF

De open source unipdf API geeft softwareprogrammeurs de mogelijkheid om afbeeldingen van hun eigen keuze toe te voegen aan PDF-documenten in GO-applicaties. Het maakt het werk van ontwikkelaars gemakkelijker bij het plaatsen van afbeeldingen in het PDF-document, zonder dat u zich zorgen hoeft te maken over coördinaten. U hoeft alleen het pad en de grootte van de afbeelding op te geven zonder u zorgen te maken over de coördinaten. De bibliotheek biedt ondersteuning voor populaire afbeeldingsindelingen zoals JPEG, PNG, GIF, TIFF en meer.

 // Images to PDF.
func imagesToPdf(inputPaths []string, outputPath string) error {
	c := creator.New()
	for _, imgPath := range inputPaths {
		common.Log.Debug("Image: %s", imgPath)
		img, err := c.NewImageFromFile(imgPath)
		if err != nil {
			common.Log.Debug("Error loading image: %v", err)
			return err
		}
		img.ScaleToWidth(612.0)
		// Use page width of 612 points, and calculate the height proportionally based on the image.
		// Standard PPI is 72 points per inch, thus a width of 8.5"
		height := 612.0 * img.Height() / img.Width()
		c.SetPageSize(creator.PageSize{612, height})
		c.NewPage()
		img.SetPos(0, 0)
		_ = c.Draw(img)
	}
	err := c.WriteToFile(outputPath)
	return err
}
  

Wachtwoord toevoegen aan PDF-documenten

De gratis unipdf API geeft ontwikkelaars de mogelijkheid om hun PDF-documenten te beschermen door er een wachtwoord op toe te passen met behulp van Go-commando's. U kunt voorkomen dat gebruikers PDF-documenten openen en lezen. U kunt ook het eigenaarswachtwoord instellen om volledige toegang tot het PDF-bestand te verlenen. Bovendien kunt u gebruikers ook beperken in het aanbrengen van wijzigingen in bepaalde delen van PDF-documenten.

func protectPdf(inputPath string, outputPath string, userPassword, ownerPassword string) error {
	permissions := security.PermPrinting | // Allow printing with low quality
		security.PermFullPrintQuality |
		security.PermModify | // Allow modifications.
		security.PermAnnotate | // Allow annotations.
		security.PermFillForms |
		security.PermRotateInsert | // Allow modifying page order, rotating pages etc.
		security.PermExtractGraphics | // Allow extracting graphics.
		security.PermDisabilityExtract // Allow extracting graphics (accessibility)
	encryptOptions := &model.EncryptOptions{
		Permissions: permissions,
	}
	f, err := os.Open(inputPath)
	if err != nil {
		return err
	}
	defer f.Close()
	pdfReader, err := model.NewPdfReader(f)
	if err != nil {
		return err
	}
	isEncrypted, err := pdfReader.IsEncrypted()
	if err != nil {
		return err
	}
	if isEncrypted {
		return fmt.Errorf("The PDF is already locked (need to unlock first)")
	}
	// Generate a PdfWriter instance from existing PdfReader.
	pdfWriter, err := pdfReader.ToWriter(nil)
	if err != nil {
		return err
	}
	// Encrypt document before writing to file.
	err = pdfWriter.Encrypt([]byte(userPassword), []byte(ownerPassword), encryptOptions)
	if err != nil {
		return err
	}
	// Write to file.
	err = pdfWriter.WriteToFile(outputPath)
	return err
}
  
 Dutch