2010-08-20 10 views
5

Tôi đang cố gắng nhúng Helvetica Neue vào tệp PDF của mình, nhưng tất cả tài nguyên tôi tìm thấy trực tuyến quá phức tạp và đầy những gì tôi cho là thông tin không cần thiết.Làm thế nào để nhúng phông chữ với FPDF và mPDF

Có ai có thể chỉ cho tôi hướng dẫn từng bước về cách đưa phông chữ vào FPDF không?

Xin cảm ơn trước.

+0

trang web này: [xml-convert] (http://www.xml-convert.com) làm điều đó tất cả cho bạn, trực tuyến! –

Trả lời

1

Thật không may đây là cách khó khăn hơn nó nên được, mặc dù tôi đã nhận nó làm việc. Các liên kết dưới đây là một tài liệu tham khảo tuyệt vời, nhưng tôi không thể có được fondu để cài đặt vì vậy tôi đã phải sử dụng TrueType trên Windows, TransType Pro.

http://www.eiriks.net/2007/09/13/custom-font-with-fpdf-on-os-x-ttf2pt1-fondu/

Tôi chỉ cần tìm HTML này để tạo PDF và có thể nhìn vào đó, nó có vẻ khá dễ dàng tùy chỉnh so với FPDF. http://www.digitaljunkies.ca/dompdf/

12

Nó không quá khó.

Giả sử chúng tôi muốn thêm phông chữ Rockford.

Trước tiên, chúng tôi cần sử dụng ttf2pt1 (hoặc một số chương trình tương đương) để tạo tệp AFM cho Rockford. Chạy lệnh sau trong trình bao.

ttf2pt1 Rockford 

Lệnh sẽ tạo Rockford.afm trong thư mục shell hiện hành.

Thay đổi vỏ của mình vào các makefont thư mục trong thư mục cài đặt FPDF

cd /<...>/fpdf/font/makefont 

Execute một php shell tương tác

php -a 

Chạy các lệnh sau trong vỏ PHP tương tác.

php > require("makefont.php"); 
php > MakeFont("/<font location>/Rockford.ttf", "/<font location>/Rockford.afm"); 
php > exit 

Bạn sẽ thấy hai tập tin mới, Rockford.phpRockford.z ​​ trong thư mục hiện hành. Sao chép hai tệp này vào thư mục 'phông chữ' trong thư mục cài đặt fpdf.

cp Rockford.z Rockford.php /<...>/fpdf/font/ 

Tại thời điểm này, việc cài đặt phông chữ mới vào FPDF được thực hiện.

Để sử dụng phông chữ của bạn khi tạo tệp PDF, trước tiên bạn phải nhập phông chữ như sau.

$fpdf->AddFont('Rockford', '', 'Rockford.php'); 

Sau đó, bạn có thể sử dụng phông chữ khi cần trong tập lệnh. Ví dụ: để đặt phông chữ thành Rockford kích thước 8, bạn sẽ viết câu lệnh sau.

$fpdf->SetFont('Rockford', '', 8);