Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> C /C + + Προγραμματισμός

Πώς να δημιουργήσετε αρχεία PDF με C πηγαίου κώδικα

Δημιουργία Adobe PDF ( Portable Document Format) αρχεία με μια εφαρμογή γραμμένη στη γλώσσα προγραμματισμού C θα μπορούσε ενδεχομένως να συνεπάγεται πολλές ώρες αποκρυπτογράφηση εγγράφων της Adobe . Αλλά , τουλάχιστον ένα open source ( δωρεάν ) του έργου έχει κάνει αυτό το έργο ήδη να παράγει μια βιβλιοθήκη με την οποία τα προγράμματα σας C μπορούν να συνδεθούν για να δημιουργήσετε τα αρχεία PDF . Τα πράγματα που θα χρειαστείτε για Microsoft Visual C + + , Express ( ή πλήρης ) έκδοση
Haru PDF βιβλιοθήκη από libharu.org
Zlib αρχείο DLL ( μετόχι της βιβλιοθήκης Haru ) από zlib.net

Εμφάνιση Περισσότερες οδηγίες
Η 1

Κατεβάστε το δωρεάν PDF Haru Βιβλιοθήκη από Libharu.org . Επιλέξτε το αρχείο libharu - - vc6.zip για download , το οποίο είναι κάτω από τα « παράθυρα Binaries " τίτλο . Κατεβάστε εξάρτηση της βιβλιοθήκης Haru , το Zlib , από το σύνδεσμο Zlib στην ενότητα Πόροι αυτού του άρθρου . 2

Δημιουργήστε ένα νέο Visual C + + Windows32 Console Application.Enter " pdfmkr " για το όνομα του έργου και " C : \\ Users \\ \\ Desktop \\ pdfmkr " για τη θέση του . Μην επιλέγετε το "Δημιουργία καταλόγου " κουτάκι
εικόνων 3

Εγκαταστήστε τα αρχεία της βιβλιοθήκης : . Αποσυμπιέστε το libharu - 2.1.0 - vc6.zip και zlib123 - dll.zip αρχεία σε προεπιλεγμένες θέσεις . ανατεθεί από την εφαρμογή αποσυμπίεση σας

Αντιγράψτε το libhpdf.lib και libhpdf.exp αρχεία από το lib υποφάκελο της αποσυμπιεσμένου libharu αρχείο zip , στο C : \\ Users \\ \\ Desktop \\ pdfmkr \\ pdfmkr .
Η 4

Αντιγράψτε το zdll.lib , zdll.exp και zdll.def αρχεία από lib υποφάκελο της αποσυμπιεσμένος Zlib είναι στον ίδιο φάκελο προορισμού που αναφέρεται στο Βήμα 3 . Επίσης , αντιγράψτε το αρχείο zlib1.dll από το φάκελο _root_ ( όχι το lib υποφάκελο ) της unzipped φάκελο Zlib , στο βήμα 3 το φάκελο του προορισμού .
5

Αντιγράψτε τα αρχεία κεφαλίδας όπου το Visual C + + compiler μπορείτε να τα βρείτε : αντιγράψετε όλα τα header αρχεία από το libharu "περιλαμβάνουν " υποφάκελο , στον ίδιο φάκελο από το Στάδιο 3 ( επέκταση αρχείου * h . ) . Αντιγράψτε όλα τα αρχεία header Zlib από την Zlib " περιλαμβάνουν " υποφάκελο , στο βήμα 3 το φάκελο του προορισμού
Η 6

Δημιουργήστε αναφορές στα lib αρχεία που μόλις αντιγράψατε έτσι το Visual C + + συνδετήρας μπορεί να δει πραγματικά τους : . Στο Visual C + + IDE , επιλέξτε "Προβολή > Διαχείριση Ακίνητης Περιουσίας. " Στο παράθυρο της Διαχείρισης Ακίνητης Περιουσίας, κάντε δεξί κλικ " pdfmkr " και επιλέξτε " Ιδιότητες". Εκθέτουν το « Linker > Input" κόμβος κάνοντας κλικ στο " Ιδιότητες ρύθμισης παραμέτρων ", τότε "συνδετήρα ". Στη σειρά « Πρόσθετες εξαρτήσεις " , πληκτρολογήστε τα ονόματα των αρχείων της βιβλιοθήκης που μόλις αντιγράψατε : . " Zdll.lib " και " libhpdf.lib " ( αλλά όχι το αρχείο DLL )
Η 7

Επικόλληση του παρακάτω κώδικα στο παράθυρο Visual C + + κώδικα :

//////////////////////////////////////////////# include " stdafx.h " # include # include # include # include ? # include " hpdf.h "

jmp_buf env ?

# ifdef HPDF_DLLvoid __ stdcall # # elsevoid endifcbHandleErr ( HPDF_STATUS errNum , HPDF_STATUS detail_num , void * userinfo ) { printf ( "ΣΦΑΛΜΑ : errNum = % 04X , detail_num = % u \\ n " , ( HPDF_UINT ) errNum , ( HPDF_UINT ) detail_num ) ? longjmp ( env , 1 ) ? }

const char fname [ ] = " myPDF.PDF " ?

int main ( int argc , char ** argv ) { objPDF HPDF_Doc ? HPDF_Page pdfPage ? font HPDF_Font ? HPDF_REAL pageHeight ?

objPDF = HPDF_New ( cbHandleErr , NULL) ? αν { printf ( objPDF ! ) ( " δεν είναι δυνατή η δημιουργία αντικειμένου PdfDoc \\ n" ) ? επιστροφή 1? }

αν ( setjmp ( env ) ) { HPDF_Free ( objPDF ) ? επιστροφή 1? }

/* Δημιουργία pdfPage * /pdfPage = HPDF_AddPage ( objPDF ) ? pageHeight = HPDF_Page_GetHeight ( pdfPage ) ?

/* Βάλτε κάποιο κείμενο για pdfPage * /font = HPDF_GetFont ( objPDF , " Times - Roman " , NULL) ? HPDF_Page_SetFontAndSize ( pdfPage , γραμματοσειρά , 24 ) ? HPDF_Page_BeginText ( pdfPage ) ? HPDF_Page_TextOut ( pdfPage , 20 , pageHeight - 75 , « Η πρώτη μου PDF " ) ? //yesHPDF_Page_EndText ( pdfPage ) ? HPDF_SaveToFile ( objPDF , ονομα ) ? HPDF_Free ( objPDF ) ?

επιστροφή 0? }

//////////////////////////////////////////////
8

Πατήστε F5 για να συγκεντρώσει και να εκτελέσετε το πρόγραμμα . Κοιτάξτε για το αρχείο εξόδου , ​​myPDF.PDF , στο φάκελο που αναφέρεται στο Βήμα 3 .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα