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

Go API pentru crearea și procesarea documentelor PDF 

Bibliotecă Go Open Source, care oferă dezvoltatorilor posibilitatea de a crea, edita, manipula și converti documente PDF.

Unipdf este o bibliotecă Go open source care poate gestiona cu ușurință toate întrebările dvs. legate de crearea și manipularea documentelor PDF. Biblioteca este disponibilă sub licență dublă, unde licența AGPL poate fi utilizată pentru dezvoltarea de software open source. Biblioteca oferă suport complet pentru generarea de documente PDF cu un nivel ridicat de text, desene și imagini.

Biblioteca unipdf open source acceptă mai multe funcții comune, precum și avansate pentru procesarea și optimizarea documentelor PDF, cum ar fi crearea de rapoarte PDF, generarea de rapoarte PDF, crearea de facturi, crearea și gestionarea paragrafelor, îmbinarea și împărțirea paginilor PDF, rotirea paginilor, extragerea textului din Fișiere PDF, exportați PDF în CSV, convertiți imagini în PDF, comprimați și optimizați PDF, fișiere PDF cu filigran, suport pentru fonturi compuse (caractere Unicode), semnături digitale și multe altele.

.

Previous Next

Noțiuni introductive cu unipdf

Pentru a instala unipdf pe sistemul dvs., vă rugăm să rulați următoarea comandă. 

Instalați gofpdf prin GitHub

go get github.com/unidoc/unipdf/v3

Pentru cea mai recentă actualizare, accesați pagina de versiuni a produsului.

Generați raport PDF prin Go API

API-ul unipdf open source oferă dezvoltatorilor capacitatea de a crea rapoarte PDF în cadrul propriilor aplicații Go. Biblioteca permite dezvoltatorilor să lucreze eficient cu documente PDF și a inclus suport pentru adăugarea cu ușurință de imagini, tabele, anteturi, subsoluri și multe altele în rapoartele dumneavoastră PDF. De asemenea, puteți plasa conținut dinamic în rapoartele PDF cu doar câteva rânduri de cod.

Convertiți fișierul PDF în CSV prin Go API

Biblioteca unipdf permite dezvoltatorilor de software să convertească fișiere PDF în formate de fișiere CSV în propriile aplicații Go. Convertoarele PDF în Excel sunt un instrument foarte util pentru instituțiile de afaceri și de cercetare. Este foarte ușor de utilizat și oferă capacitatea de a extrage TextMarks din PDF și de a le grupa în cuvinte, rânduri și coloane pentru extragerea datelor CSV.

Inserați imagini în PDF

API-ul unipdf open source oferă programatorilor de software capacitatea de a adăuga imagini la alegere în documentele PDF în cadrul aplicațiilor GO. Ușurează munca dezvoltatorului în timp ce plasează imagini în documentul PDF, fără a fi nevoie să vă faceți griji cu privire la coordonate. Trebuie doar să furnizați calea și dimensiunea imaginii fără să vă faceți griji cu privire la coordonate. Biblioteca a inclus suport pentru formate de imagine populare, cum ar fi JPEG, PNG, GIF, TIFF și multe altele.

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

Adăugați parola la documentele PDF

API-ul unipdf gratuit oferă dezvoltatorilor puterea de a-și proteja documentele PDF prin aplicarea unei parole folosind comenzile Go. Puteți restricționa utilizatorii să deschidă și să citească documente PDF. De asemenea, puteți seta parola proprietarului pentru a acorda acces deplin la fișierul PDF. Mai mult, puteți, de asemenea, să restricționați utilizatorii să facă orice fel de modificări în anumite părți ale documentelor PDF.

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
}
  
 Română