Izveidojiet un pārvaldiet PDF dokumentus, izmantojot Free Go API
Go Library, kas programmatūras izstrādātājiem sniedz iespēju izveidot, rediģēt, konvertēt un manipulēt ar PDF dokumentiem.
Gofpdf ir atvērtā pirmkoda Go bibliotēka, kas programmatūras izstrādātājiem sniedz iespēju ģenerēt un modificēt PDF failus bez ārējām atkarībām. Bibliotēka atbalsta PDF dokumentu ģenerēšanu un manipulācijas ar augsta līmeņa tekstu, zīmējumiem un attēliem. Bibliotēka pilnībā atbalsta UTF-8 TrueType fontus un valodas no labās puses uz kreiso. Tā atbalsta automātisku UTF-8 rūnu tulkošanu uz kodu lapu kodējumu valodām, kurās ir mazāk par 256 glifiem.
PDF ir viens no pasaulē visvairāk izmantotajiem failu formātiem informācijas glabāšanai un apmaiņai visā pasaulē. Gofpdf bibliotēka atbalsta vairākas svarīgas funkcijas PDF dokumentu apstrādei, piemēram, PDF dokumentu ģenerēšanu un rediģēšanu, attēla (JPEG, PNG, GIF, TIFF un SVG attēlu) ievietošanu PDF failā, jaunu lappušu ievietošanu esošajā PDF failā, Lapas galveni. un kājenes pārvaldība, automātiskie lappušu pārtraukumi, iekšējo un ārējo saišu atbalsts, rindiņu pārtraukumi un teksta pamatojums un daudz kas cits.
Darba sākšana ar gofpdf
Ieteicamais veids, kā instalēt gofpdf, ir izmantot GitHub. Lai instalētu gofpdf savā sistēmā, lūdzu, palaidiet šo komandu
Instalējiet gofpdf, izmantojot GitHub
go get https://github.com/jung-kurt/gofpdf
Lai iegūtu jaunāko atjauninājumu, lūdzu, palaidiet šo komandu:
go get -u -v github.com/jung-kurt/gofpdf/...
PDF izveide un apstrāde, izmantojot Go Library
gofpdf bibliotēka nodrošina funkcionalitāti PDF dokumentu izveidei, kā arī rediģēšanai Go lietojumprogrammās. Tas ļauj izveidot PDF dokumentus ar augsta līmeņa atbalstu tekstam, zīmējumiem un attēliem. Pēc dokumenta izveides ar pāris vienkāršām komandām varat viegli iekļaut tekstu un attēlus, ievietot jaunas lapas, slāņus, veidnes, svītrkodus utt. Varat arī ģenerēt PDF dokumentu ar vairākām kolonnām vai ainavas režīmā ar attēliem
Ģenerējiet vienkāršu PDF failu, izmantojot 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")
Attēlu pievienošana PDF failam, izmantojot Go API
Attēli ir ļoti svarīga daļa, lai sniegtu vairāk informācijas labākā un visaptverošākā veidā. Tas vienmēr satura daļai piešķir lielāku vērtību. Atvērtā koda gofpdf API ļauj programmētājiem ievietot PDF failos savās lietojumprogrammās izvēlētus attēlus. Tas nodrošina atbalstu ļoti populāriem attēlu formātiem, piemēram, JPEG, PNG, GIF, TIFF un pamata ceļa SVG attēliem. Varat arī modificēt attēlus atbilstoši savām vajadzībām.
Pievienojiet attēlus PDF lapām, izmantojot 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
}
Slāņu pievienošana PDF dokumentiem
Slāņu izmantošana PDF dokumentos sniedz iespēju labāk sakārtot un parādīt saturu. Šī funkcija ļauj lietotājiem padarīt saturu redzamu vai neredzamu vai pievienot detalizētu informāciju diagrammām PDF dokumentos. Gofpdf bibliotēka pilnībā atbalsta slāņu pievienošanu un pārvaldību PDF failos. Varat viegli definēt slāņus, interaktīvi kontrolēt slāņa redzamību vai atvērt slāņa rūti PDF skatītājā.
Skatiet un pievienojiet slāņus PDF failam programmā 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
}
Pievienojiet galvenes, kājenes un lappušu pārtraukumus PDF failiem
dokumentus savās Go lietotnēs. Galvenes un kājenes nodrošina katram PDF dokumentam personisku pieskārienu, PDF failiem pievienojot lappušu numurus, teksta etiķetes vai attēlus. Bibliotēka pilnībā atbalsta PDF dokumentu galveņu un kājenju izveidi, rediģēšanu un pārvaldību. Varat arī izmantot tādas funkcijas kā rindiņas taisnošana, vārdu aplaušana un lappušu pārtraukumi utt.
Galvenes un kājenes pievienošana PDF failam, izmantojot 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
}