Kurkite ir tvarkykite PDF dokumentus naudodami „Free Go“ API
Go Library, suteikianti programinės įrangos kūrėjams galimybę kurti, redaguoti, konvertuoti ir manipuliuoti PDF dokumentais.
„Gofpdf“ yra atvirojo kodo „Go“ biblioteka, suteikianti programinės įrangos kūrėjams galimybę generuoti ir modifikuoti PDF failus be jokių išorinių priklausomybių. Biblioteka palaiko PDF dokumentų generavimą ir manipuliavimą su aukšto lygio tekstu, piešiniais ir vaizdais. Biblioteka visiškai palaiko UTF-8 TrueType šriftus ir kalbas „iš dešinės į kairę“. Jis palaiko automatinį UTF-8 runų vertimą į kodų puslapių koduotes kalboms, kurios turi mažiau nei 256 glifus.
PDF yra vienas iš labiausiai pasaulyje naudojamų failų formatų, skirtų informacijai saugoti ir dalytis visame pasaulyje. Gofpdf biblioteka palaiko keletą svarbių PDF dokumentų apdorojimo funkcijų, tokių kaip PDF dokumentų generavimas ir redagavimas, vaizdo (JPEG, PNG, GIF, TIFF ir SVG vaizdų) įterpimas į PDF, naujų puslapių įterpimas į esamą PDF failą, puslapio antraštė. ir poraštės valdymas, automatiniai puslapių lūžiai, vidinių ir išorinių nuorodų palaikymas, eilučių pertraukos ir teksto pagrindimas ir daug daugiau.
Darbo su gofpdf pradžia
Rekomenduojamas būdas įdiegti gofpdf yra naudoti GitHub. Norėdami įdiegti gofpdf savo sistemoje, paleiskite šią komandą
Įdiekite gofpdf per „GitHub“.
go get https://github.com/jung-kurt/gofpdf
Norėdami gauti naujausią naujinimą, paleiskite šią komandą:
go get -u -v github.com/jung-kurt/gofpdf/...
PDF kūrimas ir apdorojimas naudojant „Go Library“.
gofpdf biblioteka suteikia galimybę kurti PDF dokumentus ir redaguoti Go programose. Tai leidžia kurti PDF dokumentus su aukšto lygio teksto, piešimo ir vaizdų palaikymu. Sukūrę dokumentą galite lengvai įtraukti tekstą ir paveikslėlius, įterpti naujus puslapius, sluoksnius, šablonus, brūkšninius kodus ir t. t. naudodami tik keletą paprastų komandų. Taip pat galite sugeneruoti PDF dokumentą su keliais stulpeliais arba kraštovaizdžio režimu su vaizdais
Sukurkite paprastą PDF failą naudodami „Go API“.
pdf := gofpdf.New("P", "mm", "A4", "")
pdf.AddPage()
pdf.SetFont("Arial", "B", 16)
pdf.Cell(40, 10, "Hello, world")
err := pdf.OutputFileAndClose("hello.pdf")
Vaizdai pridedami prie PDF per Go API
Vaizdai yra labai svarbi dalis norint pateikti daugiau informacijos geresniu ir išsamesniu būdu. Tai visada suteikia daugiau vertės turiniui. Atvirojo kodo gofpdf API leidžia programuotojams įterpti savo pasirinktus vaizdus į PDF failus savo programose. Jis palaiko labai populiarius vaizdo formatus, pvz., JPEG, PNG, GIF, TIFF ir pagrindinius SVG vaizdus. Taip pat galite keisti vaizdus pagal savo poreikius.
Pridėkite vaizdų prie PDF puslapių naudodami „Go API“.
func ExampleFpdf_Image() {
pdf := gofpdf.New("P", "mm", "A4", "")
pdf.AddPage()
pdf.SetFont("Arial", "", 11)
pdf.Image(example.ImageFile("logo.png"), 10, 10, 30, 0, false, "", 0, "")
pdf.Text(50, 20, "logo.png")
pdf.Image(example.ImageFile("logo.gif"), 10, 40, 30, 0, false, "", 0, "")
pdf.Text(50, 50, "logo.gif")
pdf.Image(example.ImageFile("logo-gray.png"), 10, 70, 30, 0, false, "", 0, "")
pdf.Text(50, 80, "logo-gray.png")
pdf.Image(example.ImageFile("logo-rgb.png"), 10, 100, 30, 0, false, "", 0, "")
pdf.Text(50, 110, "logo-rgb.png")
pdf.Image(example.ImageFile("logo.jpg"), 10, 130, 30, 0, false, "", 0, "")
pdf.Text(50, 140, "logo.jpg")
fileStr := example.Filename("Fpdf_Image")
err := pdf.OutputFileAndClose(fileStr)
example.Summary(err, fileStr)
// Output:
// Successfully generated pdf/Fpdf_Image.pdf
}
Sluoksnių pridėjimas prie PDF dokumentų
Sluoksnių naudojimas PDF dokumentuose suteikia galimybę geriau tvarkyti ir rodyti turinį. Ši funkcija leidžia vartotojams padaryti turinį matomą arba nematomą arba pridėti išsamios informacijos prie PDF dokumentų diagramų. Gofpdf biblioteka visiškai palaiko sluoksnių pridėjimą ir valdymą PDF failuose. Galite lengvai apibrėžti sluoksnius, interaktyviai valdyti sluoksnio matomumą arba atidaryti sluoksnio sritį PDF peržiūros priemonėje.
Peržiūrėkite ir pridėkite sluoksnius prie PDF failo „Go Apps“.
func ExampleFpdf_AddLayer() {
pdf := gofpdf.New("P", "mm", "A4", "")
pdf.AddPage()
pdf.SetFont("Arial", "", 15)
pdf.Write(8, "This line doesn't belong to any layer.\n")
// Define layers
l1 := pdf.AddLayer("Layer 1", true)
l2 := pdf.AddLayer("Layer 2", true)
// Open layer pane in PDF viewer
pdf.OpenLayerPane()
// First layer
pdf.BeginLayer(l1)
pdf.Write(8, "This line belongs to layer 1.\n")
pdf.EndLayer()
// Second layer
pdf.BeginLayer(l2)
pdf.Write(8, "This line belongs to layer 2.\n")
pdf.EndLayer()
// First layer again
pdf.BeginLayer(l1)
pdf.Write(8, "This line belongs to layer 1 again.\n")
pdf.EndLayer()
fileStr := example.Filename("Fpdf_AddLayer")
err := pdf.OutputFileAndClose(fileStr)
example.Summary(err, fileStr)
// Output:
// Successfully generated pdf/Fpdf_AddLayer.pdf
}
Pridėkite antraštes, poraštes ir puslapių pertraukas prie PDF failų
dokumentus savo „Go“ programose. Antraštės ir poraštės suteikia kiekvienam PDF dokumentui asmeniškumo, pritaikant puslapių numerius, teksto etiketes arba vaizdus PDF failams. Biblioteka visiškai palaiko PDF dokumentų antraštes ir poraštes kūrimą, redagavimą ir tvarkymą. Taip pat galite naudoti tokias funkcijas kaip eilutės lygiavimas, žodžių laužymas, puslapių lūžiai ir kt.
Antraštės ir poraštės pridedamos prie PDF naudojant „Go“.
func ExampleFpdf_AddPage() {
pdf := gofpdf.New("P", "mm", "A4", "")
pdf.SetTopMargin(30)
pdf.SetHeaderFuncMode(func() {
pdf.Image(example.ImageFile("logo.png"), 10, 6, 30, 0, false, "", 0, "")
pdf.SetY(5)
pdf.SetFont("Arial", "B", 15)
pdf.Cell(80, 0, "")
pdf.CellFormat(30, 10, "Title", "1", 0, "C", false, 0, "")
pdf.Ln(20)
}, true)
pdf.SetFooterFunc(func() {
pdf.SetY(-15)
pdf.SetFont("Arial", "I", 8)
pdf.CellFormat(0, 10, fmt.Sprintf("Page %d/{nb}", pdf.PageNo()),
"", 0, "C", false, 0, "")
})
pdf.AliasNbPages("")
pdf.AddPage()
pdf.SetFont("Times", "", 12)
for j := 1; j <= 40; j++ {
pdf.CellFormat(0, 10, fmt.Sprintf("Printing line number %d", j),
"", 1, "", false, 0, "")
}
fileStr := example.Filename("Fpdf_AddPage")
err := pdf.OutputFileAndClose(fileStr)
example.Summary(err, fileStr)
// Output:
// Successfully generated pdf/Fpdf_AddPage.pdf
}