Wiem, że istnieje wiele postów dotyczących tego problemu.Ale ktoś może mi pomóc skonfigurować ten skrypt http://www.rustyparts.com/pdf.php do pracy na moim localhost.I właśnie spędził cały tydzień na ten problem.Mam pobrać imagemagic, ghostscript, activeperl ,. .., wszystko, ale nadal nie może dać prostego przykładu do pracy.Konwersja html na pdf w php?
Odpowiedz
Użyj wkhtmltopdf przez wywołanie systemowe. Aby uzyskać pomoc na temat instalacji, patrz: How to install wkhtmltopdf on a linux based (shared hosting) web server.
wkhtmltopdf jest programem wiersza poleceń który pozwala na tworzenie pdf z URL, lokalnego pliku html lub standardowego wejścia. To tworzy plik pdf podobny do rendere z silnikiem WebKit .
Zobacz próbkę z tej strony here.
testowane na Ubuntu kodu php (trzeba zmienić /tmp/
do katalogu tymczasowego na Windows):
$url = 'http://www.google.com';
$pdffile = tempnam('/tmp/', 'wkhtmltopdf_');
$handle = popen("wkhtmltopdf $url $pdffile 2>&1", "r");
while (!feof($handle))
fread($handle, 4096);
pclose($handle);
header('Content-type: application/pdf');
$file = fopen($pdffile, "r");
while(!feof($file))
print fread($file, 4096);
unlink($pdffile);
Istnieją również php bindings który eliminuje potrzebę korzystania z systemu nazywają siebie, co jest prostsza (i bezpieczniejsza!) opcja.
try {
$wkhtmltopdf = new Core_Wkhtmltopdf(array('path' => APPLICATION_PATH . '/../public/uploads/'));
$wkhtmltopdf->setTitle("Title");
$wkhtmltopdf->setHtml("Content");
$wkhtmltopdf->output(Wkhtmltopdf::MODE_DOWNLOAD, "file.pdf");
} catch (Exception $e) {
echo $e->getMessage();
}
Ohhh, inna biblioteka pdf php: (((ale muszę utworzyć system do eksportowania stron HTML do pdf, użytkownik kliknąć na link na stronie internetowej, a następnie plik PDF jest generowany? – user147
Uważaj na pojedyncze cytaty tam. chcecie zastąpienia zmiennych, te będą musiały być podwójnymi cytatami – ncuesta
ok, fajnie, wygląda świetnie, mogę korzystać z tej biblioteki na mojej stronie, nie jestem php guru, właśnie się uczę czegoś – user147
Prosty, ale potężny: http://html2pdf.fr/en/default
$html = file_get_contents("valid.html");
require_once("html2pdf.class.php");
$html2pdf = new HTML2PDF("P", "A4", "en", array(10, 10, 10, 10));
$html2pdf->setEncoding("ISO-8859-1");
$html2pdf->WriteHTML($html);
$html2pdf->Output("pdf/PDF.pdf", "F"); //output to file
$html2pdf->Output(); //output to browser
Ponadto, istnieje inna biblioteka, która generuje pliki PDF: TCPDF. Ładne i całkiem proste. Możesz znaleźć wiele przykładów w pobliżu.
DocRaptor.com to dobra opcja - używa Prince XML, więc jakość jest lepsza niż inne narzędzia, a jest to aplikacja internetowa, więc nic do pobrania. Działa również w dowolnym języku.
To coś w rodzaju nieobsługiwanej biblioteki ... jej ostatnia wersja pochodzi z 2006 roku! Rozważałbym nowszą i aktywną. – ncuesta
Jeśli zdecydujesz się nie kontynuować biblioteki, której aktualnie używasz, możesz znaleźć dobrą listę tutaj: http://stackoverflow.com/q/3178448/264628. Wygląda na to, że próbujesz wkhtmltopdf, ale istnieje również wiele czystych rozwiązań PHP. – BrianS