Opprette Adobe PDF ( Portable Document Format ) filer med et program skrevet i programmeringsspråket C potensielt kan innebære mange timer med å tyde Adobes dokumentasjon. Men minst én åpen kildekode (gratis ) prosjektet har gjort det arbeid som allerede er å produsere et bibliotek som din C-programmer kan koble til å lage PDF-filer . Du trenger
Microsoft Visual C + +, Express ( eller full ) utgave
Haru PDF biblioteket fra libharu.org
Zlib DLL-fil ( en avhengighet av Haru bibliotek ) fra zlib.net
Vis flere instruksjoner
en
Last ned den Haru Free PDF Library fra Libharu.org . Velg libharu - - vc6.zip fil for nedlasting, som er under "Windows Binaries " overskriften. Last ned en avhengighet av Haru biblioteket, Zlib , fra Zlib lenke i denne artikkelen Resources.
2 Opprett en ny Visual C + + Windows32 Console Application.Enter " pdfmkr " for prosjektets navn og " C: \\ Users \\ \\ Desktop \\ pdfmkr " for sin plassering. Ikke sjekk "Opprett katalogen " boksen
3 Installer bibliotek filer : . Pakke ut libharu - 2.1.0 - vc6.zip og zlib123 - dll.zip filer til standard steder tilordnet av Derigjennom søknad
Kopier de libhpdf.lib og libhpdf.exp filer fra lib undermappe av den utpakkede libharu zip -fil , til C: . \\ Users \\ \\ Desktop \\ pdfmkr \\ pdfmkr .
4 Kopier de zdll.lib , zdll.exp og zdll.def filer fra den utpakkede Zlib sin lib undermappe til samme destinasjon mappe referert i trinn tre . Også kopiere zlib1.dll filen fra _root_ mappen (ikke lib undermappe ) av Zlib utpakkede mappen , til trinn tre destinasjon mappe.
5
Kopier header filer til hvor Visual C + + kompilator kan finne dem : kopierer alle header ( filtypen * h . ) filer fra libharu " include " undermappe , til den samme mappen fra trinn 3 . Kopier alle ZLIB header filer fra Zlib " inkludere" undermappe , til trinn tre destinasjon mappe
6
Lag referanser til lib filene du nettopp kopierte slik at Visual C + + linker kan faktisk se dem : . I Visual C + + IDE, velg " Vis> Eiendomssjef . " I Eiendomssjef vinduet , høyreklikk " pdfmkr " og velg "Properties". Utsett " Linker > Input" node ved å klikke på " Konfigurasjon Properties " og deretter " Linker . " I " Additional avhengigheter " raden , skriv navnene på biblioteket filene du nettopp kopierte : . " Zdll.lib " og " libhpdf.lib " (men ikke DLL-filen )
7
Lim følge kildekoden inn i Visual C + +-kode vinduet:
//////////////////////////////////////////////# 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 , ugyldige * userinfo ) { printf ( "FEIL: 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 , røye ** argv ) { HPDF_Doc objPDF ; HPDF_Page pdfPage ; HPDF_Font font , HPDF_REAL pageHeight ;
objPDF = HPDF_New ( cbHandleErr , NULL ); ( ! objPDF ) dersom { printf ( "Kan ikke opprette PdfDoc objekt \\ n "); tilbake 1; }
if ( setjmp ( env ) ) { HPDF_Free ( objPDF ), tilbake 1 ;}
/* Lag pdfPage * /pdfPage = HPDF_AddPage ( objPDF ) ; pageHeight = HPDF_Page_GetHeight ( pdfPage ) ;
/* Ha litt tekst på pdfPage * /font = HPDF_GetFont ( objPDF , " Times - Roman" , NULL) ; HPDF_Page_SetFontAndSize ( pdfPage , font, 24 ) ; HPDF_Page_BeginText ( pdfPage ) ; HPDF_Page_TextOut ( pdfPage , 20, pageHeight - 75 , " Min første PDF" ), //yesHPDF_Page_EndText ( pdfPage ) ; HPDF_SaveToFile ( objPDF , fname ) ; HPDF_Free ( objPDF ) ;
< p> return 0 ;}
//////////////////////////////////////////////
8
Trykk F5 for å kompilere og kjøre programmet . Se etter output fil , myPDF.PDF , i mappen referert i trinn tre .