PDF generálás Golang nyelven (PDF)

Pdf Generalas Golang Nyelven Pdf



A Portable Document Format vagy röviden PDF egy hihetetlenül népszerű és sokoldalú fájlformátum, amelyet dokumentumokban használnak. A PDF-t szinte minden platform és rendszer támogatja, így kiváló választás a dokumentumok megosztására.

Amikor a fejlesztőkről van szó, találkozhatunk olyan esetekkel, amikor a bemeneti adatok alapján programozottan kell létrehoznunk a PDF dokumentumokat. Például rendelkezhet egy webalkalmazással, amely az adatbázisból származó vásárlási információk alapján állítja elő a PDF számlákat.

Szerencsére a Go ökoszisztéma hatalmas, és vannak olyan eszközök és funkciók, amelyek segítségével könnyedén, a semmiből kell elkészíteni a PDF-generációt.







Ebben az oktatóanyagban megtanuljuk, hogyan kell használni az „fpdf” csomagot, amely hatékony funkciókat biztosít a PDF dokumentumok bemeneti adatok alapján történő előállításához.



Környezet beállítása

Mielőtt folytatnánk, győződjön meg arról, hogy telepítette a következő eszközöket:



  1. Győződjön meg arról, hogy a legújabb Go fordító telepítve van a rendszerére
  2. Egy kódszerkesztő

Telepítse a Gofpdf-et

Miután beállította a projektet, használja a „go get” parancsot az „fpdf” csomag telepítéséhez.





$ megy szerezd be a githubot . val vel / megy - pdf / fpdf

Telepítés után folytathatjuk, és fedezhetjük a csomag által biztosított szolgáltatásokat a PDF generálásához.

Hozzon létre egy alapvető PDF-dokumentumot

Tekintsük a következő példakódot, amely bemutatja, hogyan lehet ezzel a csomaggal létrehozni egy alapvető PDF-fájlt alapvető bemeneti szöveggel.



csomag fő-

import (
'github.com/go-pdf/fpdf'
)

func fő- () {
pdf := fpdf . Új ( 'P' , 'mm' , 'A4' , '' )
pdf . Oldal hozzáadása ()
pdf . SetFont ( 'Arial' , 'B' , 16 )
pdf . Sejt ( 40 , 10 , 'Fájdalom ez...' )
pdf . OutputFileAndClose ( 'lorem.pdf' )
}

Az adott példában a szükséges csomagok importálásával kezdjük. Esetünkben csak az „fpdf” csomagra van szükségünk.

Ezután az fpdf.New() függvénnyel létrehozunk egy új PDF dokumentumot, és megadjuk a PDF tulajdonságait, például az oldal tájolását, mértékegységét és méretét.

Ezután hozzáadunk egy új oldalt az AddPage() függvény segítségével.

Ezután folytatjuk a dokumentum betűtípusának és méretének beállítását a SetFont() függvény segítségével. A szöveg megjelenítéséhez hozzáadunk egy téglalap alakú területet, más néven cellát a Cell() függvénnyel.

Végül elkészítjük a PDF-et, és elmentjük az OutputFileAndClose() metódussal.

Adja hozzá a képeket

Hozzáadhatunk támogatást a képekhez is, amint az a következő példakódban látható:

csomag fő-

import (
'github.com/go-pdf/fpdf'
)

func fő- () {
pdf := fpdf . Új ( 'P' , 'mm' , 'A4' , '' )
pdf . Oldal hozzáadása ()
pdf . Képbeállítások ( 'linux-tux.png' , 10 , 10 , 40 , 0 , hamis , fpdf . Képbeállítások { ImageType : 'PNG' , ReadDpi : igaz }, 0 , '' )
téved := pdf . OutputFileAndClose ( 'example.pdf' )
ha téved != nulla {
pánik ( téved )
}
}

Ennek tartalmaznia kell a dokumentumban megadott képet.

Többoldalas dokumentum fejlécekkel és láblécekkel

A csomag több oldalt is támogat, beleértve az olyan funkciókat, mint a fejléc és lábléc, amint az a következő példában látható:

csomag fő-

import (
'strconv' // Importálja az strconv csomagot

'github.com/go-pdf/fpdf'
)

func fejléc ( pdf * fpdf . Fpdf ) {
pdf . SetFont ( 'Arial' , 'B' , 12 )
pdf . Sejt ( 0 , 10 , 'Oldalfejléc' )
pdf . Ln ( húsz )
}

func lábléc ( pdf * fpdf . Fpdf ) {
pdf . SetY ( - tizenöt )
pdf . SetFont ( 'Arial' , 'ÉN' , 8 )
pdf . Sejt ( 0 , 10 , 'oldal' + strconv . megfulladt ( pdf . Oldalszám ()))
}

func fő- () {
pdf := fpdf . Új ( 'P' , 'mm' , 'A4' , '' )
pdf . SetHeaderFunc ( func () { fejléc ( pdf ) })
pdf . SetFooterFunc ( func () { lábléc ( pdf ) })

pdf . Oldal hozzáadása ()
pdf . SetFont ( 'Arial' , '' , 12 )
számára én := 0 ; én < 40 ; én ++ {
pdf . Sejt ( 0 , 10 , 'Nyomtatási sorszám' + strconv . megfulladt ( én ))
pdf . Ln ( 12 )
}

pdf . OutputFileAndClose ( 'többoldalas.pdf' )
}

Ebben az esetben fejléc- és lábléc-függvényeket határozunk meg a PDF-fájl ezen szakaszainak tartalmának beállításához.

Ezután a SetHeaderFunc és a SetFooterFunc segítségével határozzuk meg a függvényeket a dokumentum fejléceként és láblécként.

Végül egy hurkot használunk több sornyi szövegsor létrehozására, amely több oldalt eredményez. Az eredményül kapott PDF a következő:

Tessék, itt van!

Következtetés

Ebben az oktatóanyagban sokat tanultunk a PDF generálásáról a Go programban az „fpdf” csomag használatával. Ez a csomag számos eszközt és szolgáltatást tartalmaz a PDF-ek létrehozásához. További információért nézze meg a dokumentumokat.