2008-12-18 37 views
8

Tôi muốn hiển thị tài liệu trên trang web của mình. Máy chủ được lưu trữ trên máy Debian. Tôi đã nghĩ rằng tôi có thể cho phép tải lên các tài liệu hỗ trợ sau đó sử dụng ứng dụng Linux hoặc ứng dụng PHP để chuyển đổi tài liệu thành PDF và hiển thị trong một trang HTML. Có bất kỳ API hoặc nhị phân nào cho phép tôi thực hiện việc này không?Làm thế nào để chuyển đổi tài liệu sang PDF trên một ngăn xếp Linux/PHP?

Trả lời

3

Nếu đó là tài liệu văn phòng, một tùy chọn sẽ là sử dụng openoffice ở chế độ không đầu. Xem ở đây để xem tập lệnh python cho biết cách thực hiện: http://www.oooninja.com/2008/02/batch-command-line-file-conversion-with.html

Nếu đó là bất kỳ loại tài liệu nào khác (ví dụ: tài liệu XML của riêng bạn), thì bạn sẽ cần làm thêm một chút. Tôi đã có một số thành công khi sử dụng XSL để xác định bản dịch sang định dạng docbook, sau đó sử dụng các công cụ docbook để tạo PDF (và các định dạng khác). Bạn cũng có thể sử dụng XSL để chuyển thẳng sang PDF nếu bạn cần kiểm soát chính xác hơn cách mọi thứ trông như thế nào.

0

Một phương pháp khác là để tạo ra một tập tin HTML chứa những gì bạn cần trong pdf. Sau đó, sử dụng htmldoc để chuyển đổi nó sang PDF.

http://www.easysw.com/htmldoc/

Nó thực sự là dễ dàng hơn nhiều so với trực tiếp thao tác các đối tượng trong một doc PDF.

1

Bạn có thể tạo máy in dạng PDF và gửi bất kỳ số tài liệu nào tới máy in qua lpr.

function lpr($STR,$PRN,$TITLE) { 

    $prn=(isset($PRN) && strlen($PRN))?"$PRN":C_DEFAULTPRN ; 
    $title=(isset($TITLE))?"$TITLE":"stdin" . rand() ; 
    $CMDLINE="lpr -P $prn -T $title"; 
    $pipe=popen("$CMDLINE" , 'w'); 
    if (!$pipe) {print "pipe failed."; return ""; } 
    fwrite($pipe,$STR); 
    pclose($pipe); 

    } // lpr() 

//open document... 
//read into $source 
lpr($source, "PDF", $title); //print to device 
exit(); 

Ngoài ra HTMLDOC có thể chuyển đổi HTML của bạn thành PDF.

1

Một dự án tương đối mới, được gọi là phpLiveDocx có thể chuyển đổi DOC sang PDF (ngoài một số định dạng khác). Đây là một dịch vụ dựa trên SOAP và có thể được sử dụng hoàn toàn miễn phí. Đối với mẫu mã để chuyển đổi một DOC sang PDF sử dụng phpLiveDocx, hãy nhìn vào bài viết trên blog gần đây này:

http://www.phplivedocx.org/2009/02/06/convert-doc-to-pdf-in-php/

Tất nhiên, vì nó được dựa trên SOAP, nó có thể được sử dụng trên tất cả các hệ điều hành có hỗ trợ PHP :-)

Các vấn đề liên quan