2009年9月8日

[轉貼][PHP] 免費好用的 PDF Library 大搜集

雖然 PHP 有附 PDFlib,不過使用起來實在有點複雜。














(PHP 說明文件中的範例)

FPDF

雖然現在已經停止更新了,但 FPDF 可謂是元老級的 PDF 程式庫,短短的幾行程式就可以產生出 PDF 檔案。最可怕的是現今的 PHP PDF 程式庫大多是由 FPDF 衍生出來的。(可謂程式界的桃生純太)
 
(FDPF 的範例)

授權方式: 任你處置
官方網址: http://www.fpdf.org/


UFPDF

由於 FPDF 不支援 UTF-8 ,所以有善心人士做了一個 UFPDF 出來。

授權方式: GPL
官方網址: http://www.acko.net/blog/ufpdf


FPDI (Apache Software License 2.0)

可以把 PDF 檔案匯入當作 FPDF 的樣板使用。而且 FPDI 還另外提供了FPDI_Protection 來保護 FPDF/FPDI 的 PDF 檔案。

授權方式: Apache License 2.0
官方網址: http://fpdi.setasign.de/


TCPDF

也是由 FPDF 改寫而來,除了支援 UTF-8 之外,最特別的地方就是整合了 Generic Barcode Render Class,可以直接在 PDF 上加上條碼。(目前只支援 PHP5)

授權方式: LGPL
官方網址: http://tcpdf.sourceforge.net/


PDFB

也是用來產生 Barcode 的 PDF Library ,支援 Code 3 of 9, Code 128, Interleaved 2 of 5, and UPC-A 。

官方網址:http://chir.ag/tech/download/pdfb/


====== HTML 轉 PDF ======


HTML 2 (F)PDF

嫌一個個貼文字跟圖型到 PDF 太累? HTML 2 (F)PDF 一次幫你把 HTML 轉成 PDF,夠輕鬆了吧。

授權方式: LGPL
官方網址: http://html2fpdf.sourceforge.net/


HTML To PDF Conversion

另一個將 HTML 轉為 PDF 的程式,只是看起來不支援 UTF-8。

授權方式: PHP
官方網址: http://www.rustyparts.com/pdf.php


dompdf

  支援 UTF-8 的 HTML 轉 PDF 程式,但是必須安裝 PDFLib 的正式授權版才能支援UTF-8 ,且需在 PHP 5 環境下執行。

授權方式:LGPL
官方網址:http://www.digitaljunkies.ca/dompdf


html2ps and html2pdf

也是可以把 HTML 轉成 PDF 的程式,不過是看起來是透過 GhostScript 來轉換的,有興趣的人可以去看看。

授權方式:FREE for commercial and non-commercial use
官方網址: http://www.tufat.com/script.php?id_num=19


PS:有關fpdf+中文Unicode的解決方法, 請參考這篇http://twpug.net/modules/newbb/viewtopic.php?topic_id=1570&forum=14&post_id=6400

~~~~~~~~~~~~~~~~~~~~~~~~(截取如下)


可以參考這個網頁

http://www.fpdf.org/phorum/read.php?f=1&i=5142&t=5142 (後半段)

有三個必要套件
1 fpdf http://www.fpdf.org
2 chinese http://www.fpdf.org/download/chinese.zip
3 chinese-unicode https://www.eejj.net/fpdf/chinese-unicode.zip

關於 unicode 部分, 請參照 chinese-unicode 中的 readme 來設定即可!


原文出處:http://www.neo.com.tw/archives/896

如果覺得這篇文章對您有所幫助,在觀看完文章之餘,希望能點選下方方廣告,當作是對YOGO的支持,讓YOGO更有寫作的動力。

[PHP] 如何利用 Pchome 的SMTP 發信(使用PHPMailer)

如果覺得這篇文章對您有所幫助,在觀看完文章之餘,希望能點選下方方廣告,當作是對YOGO的支持,讓YOGO更有寫作的動力。

YOGO在之前的「用PHP寄MAIL的方法」中就有提到「使用PHPMailer通過驗證的SMTP寄信」「使用PHPMailer透過Gmail 的SMTP 發信」,而這篇算是「線上發信如何通過驗證的SMTP(使用PHPMailer)」的補充說明。

一般來說前一篇「用PHP寄MAIL的方法」中提到的「使用PHPMailer通過驗證的SMTP寄信」「使用PHPMailer透過Gmail 的SMTP 發信」就足以應付一般使用者的需求,而這篇文章適合以下的情況:

1.ISP所提供的MAIL被停權,無法使用。
2.租用主機但無法使用mail函式(不過基本上這不太可能),且無openssl可以使用,無法利用Gmail的SMTP發信。(關於PHP安裝OPENSSL的方法,請參考這篇文章)
3.因為其他因素,需使用外部SMTP寄信。(不過會有什麼因素YOGO倒也真的想不出來)

其實免費的mail帳號其實除了yahoogmail之外還有很多,如PChome就有提供免費的mail帳號申請服務,不過也因為yahoogmail走的都是加密的smtp 465 Port,所以PHPmailer若無openssl的加持,是無法透過yahoogmail寄信的,不過PChome就不同了,因為它走的是標準未加密的smtp 25Port,所以我們可以使用PHPMailer通過PChomeSMTP驗證寄信,以下為相關步驟:



1.首先到「PChome的官網」,然後點選「信箱」服務。


2.若你已是「PChome會員」就直接輸入「帳號」、「密碼」然後按「登入」,若你非「PChome會員」則按「申請會員」



3.「登入」後點選「伺服器位置」













4.將「使用者名稱」「SMTP」的資料記下,等下PHPMailer寄信時會用的到。


5.下載 phpMailer 的類別: http://phpmailer.codeworxtech.com/index.php?pg=sf&p=dl ,建議您依據您使用的 PHP 版本來下載適合的類別。



6.以下為相關程式碼
include("class.phpmailer.php"); //匯入PHPMailer類別
$mail= new PHPMailer(); //建立新物件
$mail->IsSMTP(); //設定使用SMTP方式寄信
$mail->SMTPAuth = true; //設定SMTP需要驗證
$mail->Host = "smtp.pchome.com.tw"; //這裡填入剛剛從「伺服器位置」中所抄錄的SMTP主機位置
$mail->Port = 25; //設定SMTP埠位,預設為25埠。
$mail->CharSet = "big5"; //設定郵件編碼
$mail->Username = "*********"; //設定驗證帳號,也就是「PChome的會員帳號」。
$mail->Password = "*********"; //設定驗證密碼,也就是「PChome的會員密碼」。
$mail->From = [email protected]; //設定寄件者信箱
$mail->FromName = "測試人員"; //設定寄件者姓名
$mail->Subject = "PChome測試信件"; //設定郵件標題
$mail->Body = "大家好, 這是一封測試信件! "; //設定郵件內容
$mail->IsHTML(true); //設定郵件內容為HTML
$mail->AddAddress(123@123, "test"); //設定收件者郵件及名稱
if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!";
}

如果一切設定無誤的話,就可以收到由PChome寄出的mail。

另外下面延伸閱讀推薦的內二本書對phpmailer有詳細的介紹,有興趣的朋友可參考一下。

延伸閱讀:
最新 PHP + MySQL + Ajax 網頁程式設計
PHP + Ajax 網頁模組隨學隨用

聖誕跑趴歡樂降★韓版假兩件針織連衣裙$890,新款顯瘦棒球服連帽風衣外套下殺$510,冬新款歐美棉襖棉服連帽短款外套限量↘$530,秋冬新款韓版大碼毛領氣質毛料外套↘$680,快上左耳貓網路購物

您好!如圖太小看不清楚,請 點選此處 看詳細內容 左耳貓蝦皮賣場 https://shopee.tw/hrf5168 左耳貓 露天賣場 http://class.ruten.com.tw/user/index00.php?s=starbox 左耳貓粉...