


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、使用PDFLib生成PDF文檔(C語言版)一使用指導(dǎo)1. 基本環(huán)境 打開、關(guān)閉、文檔信息設(shè)定:新建PDFL讓 對象,PDF_new()設(shè)定錯(cuò)誤處理的方式,PDF_set_pdrdmeter(p, "errorpolicy", "return"), return標(biāo)示當(dāng)發(fā)生錯(cuò)誤時(shí)直接從L讓函數(shù)中返回。設(shè)定文檔信息,PDF_set_value()新建一個(gè) PDF 文件,PDF_begin_document ()新建一個(gè)頁面,PDF_begin_page_ext ()關(guān)閉一個(gè)頁面,PDF_end_page_ext ()關(guān)閉 PDF 文件,PDF_end_docu
2、ment ()釋放 PDFLib 對象,PDF_delete()例外處理,PDF.TRY ()和 PDF.CATCH() 示例代碼:#include <stdio. h>nclude "pdflib. h"int mdin(int drgc, char *argv)Example ();return 0;int Example(void)PDF *p;辻(p 二 PDF_new()二二(PDF *) 0) printf (/zCouldn,t create PDFlib object (out of memory) !/n/z);return (2);PDF.T
3、RY(p) /* This means we must check return values of load_font() etc */PDF_set_parameter(p, "errorpolicy", "returrT);if (PDF_begin_document(p, "d:/hello. pdf", 0,"”)二二-1) printf ("Error: %s/nz,, PDF_get_errmsg (p);return (2);/* This line is required to avoid problems
4、 on Japanese systems */ PDF_set_parameter(p, "hypertextencoding", "host");PDF_set_parameter(p, "fdkebold", "true");PDF_set_info(p, "Creator", "hello, c");PDF_set_info(p, "Author", "Thomas Merz");PDF_set_info(p, "Tit
5、le", "Hello, world (C)!");PDF_begin_page_ext(p, a4_width, a4_height, “");PDF_setcolor(p, "fill", "cmyk", 1, 0, 0, 0);PDF_rect (p, 250,250, 100, 50);PDF_fill(p);PDF_end_page_ext(p, “");PDF_end_document(p, “");PDF.CATCH(p) printf C'PDFlib exception
6、 occurred in sample:/n/z):printf C %d %s: %s/n,z,PDF_get_errnum(p), PDF_get_apiname(p), PDF_get_errmsg(p);PDF_delete(p);getchar ();return (2);PDF_delete(p);return 0;2. 文字輸出 加載字體使用PDF_load_font ()函數(shù)??谇霸赪indows平臺下,似乎只能加載可以安裝到Windows系統(tǒng)中的字體。如果加載已經(jīng)安裝到系統(tǒng)中的字體(在C:/windows/fonts文件夾下),可以直接通過字體的名字加載,如:font = P
7、DF_load_font(p, "MS UI Gothic", 0, "host",;font = PDF_load_font(p, "MKZ2", 0, "unicode",;也可以通過制定字體文件加載字體,如:PDF_set_pdrdmeter(p, "FontOutline",z,MKZ2=C:/windows/fonts/ MKZ2. ttf");font= PDF_load_font(p, "MKZ2", 0, "unicode",;&
8、quot;host"和"unicode"是用于字體編碼的方式,host日文系統(tǒng)下具體與代碼頁 cp932等相關(guān),中文系統(tǒng)下與cp936相關(guān)。Unicode與PDF所規(guī)定的CMAP 文件相關(guān),如:UniJIS-UCS2-H、EUC-H等的編碼文件。因?yàn)樽煮w已經(jīng)安裝 到了 Windows系統(tǒng)中,具體的字體編碼方式,操作系統(tǒng)能夠自動處理,無需我們顯式的指定。加載字體是一件很耗費(fèi)時(shí)間的工作,大概能占到整個(gè)處理的1/4左右。PDFLib已經(jīng)作了些優(yōu)化,當(dāng)一個(gè)字體只要加載過一次,再次加載就會使用前面 產(chǎn)生的字體句柄,不再重新生成。PDFLib加載字體時(shí)默認(rèn)是嵌入的,這樣會增大
9、輸出的PDF文件。好處是當(dāng)文件被移動到其他系統(tǒng)上時(shí),打開文件時(shí)不受字體的影響,否則,打開文件前需要先安 裝字體。我們這次的項(xiàng)LI,生成的PDF文件需要用FTP轉(zhuǎn)送到Solaris系統(tǒng),并且要 送入打印機(jī),所以必須以嵌入方式加載的字體。 設(shè)置字體使用PDF_setfont ()函數(shù),如:PDF_setfont(p, font, 30);30指的是字號,也就是字體的高度。但這個(gè)和系統(tǒng)的縮放比例相關(guān)。如果設(shè) 字體前設(shè)定系統(tǒng)的縮放比例為2,實(shí)際輸出的字體的高度為60個(gè)單位。PSEdit的字體的輸出過程中,絕大部分采用的是變換系統(tǒng)坐標(biāo)的方法來確定 字體的大小,所以編程中使用了 PDF_setfont(p, font, 1)的方式,即字體的大小為 當(dāng)前系統(tǒng)的縮放比例的值相同。 文字輸出PDFLib的文字處理,較PostScript而言,加強(qiáng)了功能,增加了大量文字及段落 等的處理。但本次PSEdit編程中,受于以詢軟件框架的限制,只使用了單字輸岀的 功能PDF_info_text
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 施工圖紙審核試題及答案
- 未來智能汽車市場發(fā)展考試題及答案
- 時(shí)政輿情測試題及答案
- 射雕游戲測試題及答案
- 施工安全領(lǐng)導(dǎo)力與團(tuán)隊(duì)建設(shè)的試題及答案
- 城管窗口面試題及答案
- 如何利用創(chuàng)業(yè)扶持政策獲取成功試題及答案
- 廣東物理試題匯編及答案
- 智能家居系統(tǒng)在家具設(shè)計(jì)中的融合方案試題及答案
- 家具設(shè)計(jì)中的倫理道德問題及其解決策略試題及答案
- 2024年畢節(jié)市七星關(guān)區(qū)招聘城市社區(qū)工作者真題
- 2025年上半年安徽省鹽業(yè)投資控股集團(tuán)限公司選聘管理人員9人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 酒類合伙開店協(xié)議書
- 石材干掛工程施工方案
- 智慧樹知到《中國城市建設(shè)史(西安工業(yè)大學(xué))》2025章節(jié)測試附答案
- 遇見成長 與數(shù)同行-小學(xué)生主題班會四年級數(shù)學(xué)家長會發(fā)言
- 學(xué)校“1530”安全教育記錄表(2024年秋季全學(xué)期)
- 內(nèi)膜癌病例討論
- 第24課《蛟龍?zhí)胶!氛n件
- 裝飾裝修方案
- 2024年度貨運(yùn)代理服務(wù)合同運(yùn)輸安全與事故預(yù)防3篇
評論
0/150
提交評論