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:
- Győződjön meg arról, hogy a legújabb Go fordító telepítve van a rendszerére
- 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.