1. Produkte
  2.   Pdf
  3.   GO
  4.   unipdf  
 
  

Go API für die Erstellung und Verarbeitung von PDF-Dokumenten 

Open-Source-Go-Bibliothek, die Entwicklern die Möglichkeit gibt, PDF-Dokumente zu erstellen, zu bearbeiten, zu manipulieren und zu konvertieren.

unipdf ist eine Open-Source-Go-Bibliothek, die alle Ihre Fragen im Zusammenhang mit der Erstellung und Bearbeitung von PDF-Dokumenten problemlos bearbeiten kann. Die Bibliothek ist unter einer Doppellizenz verfügbar, wobei die AGPL-Lizenz für die Entwicklung von Open-Source-Software verwendet werden kann. Die Bibliothek bietet vollständige Unterstützung für die Generierung von PDF-Dokumenten mit einem hohen Maß an Text, Zeichnungen und Bildern.

Die Open-Source-Bibliothek unipdf unterstützt mehrere gängige sowie erweiterte Funktionen zum Verarbeiten und Optimieren von PDF-Dokumenten, wie z PDF-Dateien, PDF in CSV exportieren, Bilder in PDF konvertieren, PDF komprimieren und optimieren, PDF-Dateien mit Wasserzeichen versehen, zusammengesetzte Schriftarten (Unicode-Zeichen) unterstützen, digitale Signaturen und vieles mehr.

.

Previous Next

Erste Schritte mit unipdf

Um das unipdf auf Ihrem System zu installieren, führen Sie bitte den folgenden Befehl aus. 

gofpdf über GitHub installieren

go get github.com/unidoc/unipdf/v3

Für das neueste Update besuchen Sie bitte die Seite Produktversionen .

Generieren Sie einen PDF-Bericht über die Go-API

Die Open-Source-unipdf-API bietet Entwicklern die Möglichkeit, PDF-Berichte in ihren eigenen Go-Anwendungen zu erstellen. Die Bibliothek ermöglicht Entwicklern ein effizientes Arbeiten mit PDF-Dokumenten und bietet Unterstützung für das einfache Hinzufügen von Bildern, Tabellen, Kopf- und Fußzeilen und vielem mehr zu Ihren PDF-Berichten. Sie können mit nur wenigen Codezeilen auch dynamische Inhalte in Ihre PDF-Berichte einfügen.

Konvertieren Sie PDF-Dateien über die Go-API in CSV

Die unipdf-Bibliothek ermöglicht es Softwareentwicklern, PDF-Dateien in ihre eigenen Go-Anwendungen in CSV-Dateiformate zu konvertieren. PDF-zu-Excel-Konverter ist ein sehr nützliches Tool für Geschäfts- und Forschungseinrichtungen. Es ist sehr einfach zu bedienen und bietet die Möglichkeit, TextMarks aus PDF zu extrahieren und sie für die CSV-Datenextraktion in Wörter, Zeilen und Spalten zu gruppieren.

Bilder in PDF einfügen

Die Open-Source-unipdf-API gibt Softwareprogrammierern die Möglichkeit, Bilder ihrer eigenen Wahl in PDF-Dokumente innerhalb von GO-Anwendungen einzufügen. Es erleichtert Entwicklern die Arbeit beim Platzieren von Bildern im PDF-Dokument, ohne sich um Koordinaten kümmern zu müssen. Sie müssen nur den Bildpfad und die Größe angeben, ohne sich um die Koordinaten kümmern zu müssen. Die Bibliothek bietet Unterstützung für gängige Bildformate wie JPEG, PNG, GIF, TIFF und mehr.

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

Passwort zu PDF-Dokumenten hinzufügen

Die kostenlose unipdf-API gibt Entwicklern die Möglichkeit, ihre PDF-Dokumente zu schützen, indem sie ihnen mit Go-Befehlen ein Passwort zuweisen. Sie können verhindern, dass Benutzer PDF-Dokumente öffnen und lesen. Sie können auch das Eigentümerkennwort festlegen, um vollen Zugriff auf die PDF-Datei zu gewähren. Darüber hinaus können Sie Benutzer daran hindern, Änderungen an bestimmten Teilen von PDF-Dokumenten vorzunehmen.

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