Latest News

Home » PHP程式設計教學 » 如何使用FPDF生成PDF檔案代碼分析?

如何使用FPDF生成PDF檔案代碼分析?

FPDF的功能確實很強大,但它是如何實現PDF檔案生成的呢,我決定深入分析一下它的代碼,以求對其進行改進,應用到自己的項目中。

FPDF實際上是一個類,由於該類在php4和5下都能標準運行,那麼就從PHP4的角度來分析它。
首先從類的屬性、構造函數開始,然後按類的公共方法的順序進行分析,遇到呼叫其他方法的時候將其提前進行分析。

首先來看類的屬性:
var $page;               // 現用的頁數    
var $n;                  // 現用的對像數    
var $offsets;            //array of object offsets    
var $buffer;             // PDF 快取    
var $pages;              // 包括頁數的陣列    
var $state;              // 現用的文件狀態    
var $compress;           // 壓縮標示    
var $k;                  // 比例因子(使用者指定單位內的點)    
var $DefOrientation;     // 預設方向    
var $CurOrientation;     // 現用的方向    
var $PageFormats;        // 可用的頁格式    
var $DefPageFormat;      // 預設的頁格式    
var $CurPageFormat;      // 現用的的頁格式    
var $PageSizes;          // 儲存非預設頁面大小的陣列    
var $wPt,$hPt;           // 用點表示的現用的頁尺寸    
var $w,$h;               // 使用者指定單位表示的現用的頁尺寸    
var $lMargin;            // 頁面左邊距    
var $tMargin;            // 頁面上邊距    
var $rMargin;            // 頁面右邊距    
var $bMargin;            // 換版邊    
var $cMargin;            // 內定單元邊距    
var $x,$y;               // 使用者單位表示的現用的坐標    
var $lasth;              // 最近輸出單元的高度    
var $LineWidth;          // 使用者單位表示的線寬,即粗細    
var $CoreFonts;          // 標準字型名稱的陣列    
var $fonts;              // 用到的字型的陣列    
var $FontFiles;          // 字型檔案的陣列    
var $diffs;              // 編碼差異的陣列    
var $FontFamily;         // 現用的字型    
var $FontStyle;          // 現用的字型樣式    
var $underline;          // 下劃線標示    
var $CurrentFont;        // 現用的字型訊息    
var $FontSizePt;         // 用點表示現用的字型大小    
var $FontSize;           // 使用者單位表示現用的字型大小    
var $DrawColor;          // 繪圖彩色指令    
var $FillColor;          // 填充彩色指令    
var $TextColor;          // 文字彩色指令    
var $ColorFlag;          // 指出填充彩色和文字彩色是否不同    
var $ws;                 // 文字間距    
var $images;             // 用到的圖片的陣列    
var $PageLinks;          // 頁面連結的陣列    
var $links;              // 內定連結的陣列    
var $AutoPageBreak;      // 自動分頁    
var $PageBreakTrigger;   // 自動分頁的觸發值,即最大內容高度    
var $InHeader;           // 處理頁眉時的標示    
var $InFooter;           // 處理頁腳時的標示    
var $ZoomMode;           // 顯示時的縮放模式    
var $LayoutMode;         // 分頁顯示模式    
var $title;              // 檔案標題    
var $subject;            // 檔案主旨    
var $author;             // 檔案作者    
var $keywords;           // 檔案關鍵詞    
var $creator;            // 應用程式,不知道啥意思,PDF屬性裡的    
var $AliasNbPages;       // 頁面總數的別名,用於在該位置顯示頁面總數    
var $PDFVersion;         // PDF 版本號  

這裡把註釋換成了中文的,僅供參考吧!

About

發佈留言