MFC中PDFLib組件的配置,以及中文輸出測試,去水印

昨天忙了一晚上,把PDFLib工具熟悉了一下,今天記錄。

PDFLib 簡介

   PDFLib是用於創建PDF文檔的開發庫,提供了簡單易用的API,隱藏了創建PDF的複雜細節且不需要第3方軟件的支持。支持各種語言的鏈接。簡潔的來說,就是能夠讓開發人員用代碼控制和生成PDF文件。

MFC中PDFLib的配置

首先,需要下載PDFLib的庫(見附件一)

下載解壓後,會有如下的目錄結構

        

將pdflib這個文件夾拷貝到MFC項目的代碼目錄層,在我的項目中是這樣的:


然後,將pdflib文件夾中的 pdflib.dll 文件,拷貝到代碼目錄層:


至此,pdflib的配置就完成了。



MFC中使用PDFLib

      在MFC中使用,需要在在文件的首部加上:

#include "PDFLib/pdflib.h"
#pragma comment(lib, "PDFLib/PDFLib.lib")


下面給出一個測試用的例子:

<span style="font-size: 18px;">   </span><span style="font-size:18px;"> PDF *p= PDF_new();
    int font;
    PDF_set_parameter( p,"license","X600605-009100-4E7661-329E0C");//去除水印。將註冊號寫入。
    CString fileName = "C:\\test.pdf";//pdf文件的名字,以及路徑
    PDF_begin_document(p, fileName, 0, "");
    PDF_set_parameter(p, "hypertextencoding", "host");
    PDF_set_info(p, "Creator", "zhw");
    PDF_set_info(p, "Author", "TestPDF");
    PDF_set_info(p, "Title", "Test-zhw");
    PDF_begin_page_ext(p, a4_width, a4_height, "");
    font = PDF_load_font(p, "STSong-Light", 0, "GB-EUC-H", "");	
    PDF_setfont(p, font, 12);
    PDF_set_text_pos(p, 50, 700);
    PDF_show(p, "你好世界。");
    PDF_continue_text(p,"Test-zhw");
    PDF_end_page_ext(p, "");
    PDF_end_document(p, "");
    PDF_delete(p);
    ShellExecute(NULL,_T("open"),fileName,NULL,NULL,SW_SHOWMAXIMIZED);//打印完後,立即使用默認pdf閱讀器,全屏打開</span>




關於去水印問題,需要在

PDF *p= PDF_new();

後,加上

 PDF_set_parameter( p,"license","X600605-009100-4E7661-329E0C");//去除水印。將註冊號寫入。

我們可以自己生成註冊號,請見附件二

將上述代碼,拷貝到相應的點擊事件,就可以在代碼目錄層考到測試生成的pdf了。

附件一:PDFLib典藏版

附件二:PDFLib註冊機

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章