డెవలపర్ల విషయానికి వస్తే, ఇన్పుట్ డేటా ఆధారంగా ప్రోగ్రామాటిక్గా PDF పత్రాలను రూపొందించాల్సిన సందర్భాలు మనకు కనిపిస్తాయి. ఉదాహరణకు, మీరు డేటాబేస్ నుండి కొనుగోలు సమాచారం ఆధారంగా PDF ఇన్వాయిస్లను రూపొందించే వెబ్ యాప్ని కలిగి ఉండవచ్చు.
అదృష్టవశాత్తూ, గో పర్యావరణ వ్యవస్థ భారీగా ఉంది మరియు మొదటి నుండి నిర్మించకుండా సులభంగా PDF ఉత్పత్తిని నిర్వహించడానికి సాధనాలు మరియు ఫీచర్లు ఉన్నాయి.
ఈ ట్యుటోరియల్లో, ఇన్పుట్ డేటా ఆధారంగా PDF పత్రాలను రూపొందించడానికి శక్తివంతమైన ఫీచర్లను అందించే “fpdf” ప్యాకేజీని ఎలా ఉపయోగించాలో మేము నేర్చుకుంటాము.
పర్యావరణ సెటప్
మేము కొనసాగడానికి ముందు, మీరు ఈ క్రింది సాధనాలను ఇన్స్టాల్ చేశారని నిర్ధారించుకోండి:
- మీరు మీ సిస్టమ్లో తాజా Go కంపైలర్ని ఇన్స్టాల్ చేశారని నిర్ధారించుకోండి
- ఒక కోడ్ ఎడిటర్
Gofpdfని ఇన్స్టాల్ చేయండి
మీరు మీ ప్రాజెక్ట్ సెటప్ చేసిన తర్వాత, “fpdf” ప్యాకేజీని ఇన్స్టాల్ చేయడానికి “go get” ఆదేశాన్ని ఉపయోగించండి.
$ వెళ్ళండి గితుబ్ పొందండి . తో / వెళ్ళండి - pdf / fpdf
ఇన్స్టాల్ చేసిన తర్వాత, మేము PDF ఉత్పత్తి కోసం ప్యాకేజీ అందించిన లక్షణాలను కొనసాగించవచ్చు మరియు కవర్ చేయవచ్చు.
ప్రాథమిక PDF పత్రాన్ని సృష్టించండి
ప్రాథమిక ఇన్పుట్ టెక్స్ట్ ఇచ్చిన ప్రాథమిక PDFని సృష్టించడానికి ఈ ప్యాకేజీని ఎలా ఉపయోగించాలో ప్రదర్శించే క్రింది ఉదాహరణ కోడ్ను పరిగణించండి.
ప్యాకేజీ ప్రధాన
దిగుమతి (
'github.com/go-pdf/fpdf'
)
ఫంక్ ప్రధాన () {
pdf := fpdf . కొత్తది ( 'పి' , 'మిమీ' , 'A4' , '' )
pdf . AddPage ()
pdf . సెట్ఫాంట్ ( 'ఏరియల్' , 'బి' , 16 )
pdf . సెల్ ( 40 , 10 , 'అది నొప్పిగా ఉంది...' )
pdf . అవుట్పుట్ ఫైల్ మరియు క్లోజ్ ( 'lorem.pdf' )
}
ఇచ్చిన ఉదాహరణలో, మనకు అవసరమైన ప్యాకేజీలను దిగుమతి చేయడం ద్వారా ప్రారంభిస్తాము. మా విషయంలో, మాకు 'fpdf' ప్యాకేజీ మాత్రమే అవసరం.
తర్వాత, మేము fpdf.New() ఫంక్షన్ని ఉపయోగించి కొత్త PDF డాక్యుమెంట్ని సృష్టిస్తాము మరియు పేజీ ఓరియంటేషన్, కొలత యూనిట్ మరియు పరిమాణం వంటి PDF లక్షణాలను పేర్కొంటాము.
తరువాత, మేము AddPage() ఫంక్షన్ని ఉపయోగించి కొత్త పేజీని జోడిస్తాము.
మేము SetFont() ఫంక్షన్ని ఉపయోగించి పత్రం కోసం ఫాంట్ మరియు పరిమాణాన్ని సెట్ చేయడానికి కొనసాగుతాము. మేము టెక్స్ట్ను ప్రదర్శించడానికి సెల్() ఫంక్షన్తో సెల్ అని కూడా పిలువబడే దీర్ఘచతురస్రాకార ప్రాంతాన్ని కూడా జోడిస్తాము.
చివరగా, మేము PDFని ఉత్పత్తి చేస్తాము మరియు దాన్ని OutputFileAndClose() పద్ధతితో సేవ్ చేస్తాము.
చిత్రాలను జోడించండి
కింది ఉదాహరణ కోడ్లో చూపిన విధంగా మేము చిత్రాలకు మద్దతును కూడా జోడించవచ్చు:
ప్యాకేజీ ప్రధానదిగుమతి (
'github.com/go-pdf/fpdf'
)
ఫంక్ ప్రధాన () {
pdf := fpdf . కొత్తది ( 'పి' , 'మిమీ' , 'A4' , '' )
pdf . AddPage ()
pdf . చిత్ర ఎంపికలు ( 'linux-tux.png' , 10 , 10 , 40 , 0 , తప్పుడు , fpdf . చిత్ర ఎంపికలు { చిత్ర రకం : 'PNG' , ReadDpi : నిజం }, 0 , '' )
తప్పు := pdf . అవుట్పుట్ ఫైల్ మరియు క్లోజ్ ( 'example.pdf' )
ఉంటే తప్పు != శూన్యం {
భయాందోళనలు ( తప్పు )
}
}
ఇది డాక్యుమెంట్లో పేర్కొన్న ఇమేజ్ని కలిగి ఉండాలి.
హెడర్లు మరియు ఫుటర్లతో బహుళ-పేజీ పత్రం
కింది ఉదాహరణలో చూపిన విధంగా హెడర్లు మరియు ఫుటర్ల వంటి లక్షణాలతో సహా బహుళ పేజీలకు ప్యాకేజీ మద్దతు ఇస్తుంది:
ప్యాకేజీ ప్రధానదిగుమతి (
'strconv' // strconv ప్యాకేజీని దిగుమతి చేయండి
'github.com/go-pdf/fpdf'
)
ఫంక్ శీర్షిక ( pdf * fpdf . Fpdf ) {
pdf . సెట్ఫాంట్ ( 'ఏరియల్' , 'బి' , 12 )
pdf . సెల్ ( 0 , 10 , 'పేజీ హెడర్' )
pdf . Ln ( ఇరవై )
}
ఫంక్ ఫుటరు ( pdf * fpdf . Fpdf ) {
pdf . SetY ( - పదిహేను )
pdf . సెట్ఫాంట్ ( 'ఏరియల్' , 'నేను' , 8 )
pdf . సెల్ ( 0 , 10 , 'పేజీ' + strconv . మునిగిపోయాడు ( pdf . పేజీ నం ()))
}
ఫంక్ ప్రధాన () {
pdf := fpdf . కొత్తది ( 'పి' , 'మిమీ' , 'A4' , '' )
pdf . SetHeaderFunc ( ఫంక్ () { శీర్షిక ( pdf ) })
pdf . SetFooterFunc ( ఫంక్ () { ఫుటరు ( pdf ) })
pdf . AddPage ()
pdf . సెట్ఫాంట్ ( 'ఏరియల్' , '' , 12 )
కోసం i := 0 ; i < 40 ; i ++ {
pdf . సెల్ ( 0 , 10 , 'ప్రింటింగ్ లైన్ నంబర్' + strconv . మునిగిపోయాడు ( i ))
pdf . Ln ( 12 )
}
pdf . అవుట్పుట్ ఫైల్ మరియు క్లోజ్ ( 'multipage.pdf' )
}
ఈ సందర్భంలో, PDFలోని ఈ విభాగాలకు కంటెంట్లను సెట్ చేయడానికి మేము హెడర్ మరియు ఫుటర్ ఫంక్షన్లను నిర్వచించాము.
మేము పత్రానికి హెడర్ మరియు ఫుటర్గా ఫంక్షన్లను పేర్కొనడానికి SetHeaderFunc మరియు SetFooterFuncని ఉపయోగిస్తాము.
చివరగా, బహుళ పేజీలకు దారితీసే టెక్స్ట్ లైన్ల యొక్క బహుళ లైన్లను సృష్టించడానికి మేము లూప్ని ఉపయోగిస్తాము. ఫలితంగా PDF క్రింది విధంగా ఉంది:
అక్కడ మీ దగ్గర ఉంది!
ముగింపు
ఈ ట్యుటోరియల్లో, “fpdf” ప్యాకేజీని ఉపయోగించి గోలో PDF జనరేషన్ గురించి చాలా నేర్చుకున్నాము. ఈ ప్యాకేజీ PDFలను రూపొందించడానికి అనేక సాధనాలు మరియు లక్షణాలతో నిండి ఉంది. మరింత తెలుసుకోవడానికి పత్రాలను తనిఖీ చేయండి.