Ben bir PHP geliştiricisi ve benim projelerden biri, ben PDF belgeleri içiçindee bazı HTML belgeleri (yaklaşık 30 ila 50 sayfa) dönüştürmek gerekir.
Benim arama aşağıdaki olası çözümleri döndü. Aralarında bazı PHP kütüphaneleri ve bazı komut satırı uygulamaları vardır. Her biri kendiçindee özgü avantajları ve dezavantajları vardır.
PHP libraries:
- FPDF (dönüştürmek için daha fazla çaba gerekir)
- TCPDF (dönüştürmek için daha fazla çaba gerekir)
- html2fpdf http://html2fpdf.sourceforge.net
- Html2pdf http://html2pdf.fr/
- DOMPDF http://code.google.com/p/dompdf/ (diğer karşılaştırıldığında, iyi çalışıyor)
Her kütüphane içiçinde, ben gibi sorunları var:
- Takes a long time (more than five miçindeutes to convert 30 HTML pages)
Çok fazla kaynak gerektirir (bellek ve zaman)
(Ben php.içindei de aşağıdaki parametreleri ayarlayın:
max_execution_time = 600
memory_limit = 250M
ama her şey hala çalışmıyor.)
Iyi biçimlendirilmiş olması içiçinde HTML sayfaları ihtiyacı (örneğiçinde, hiçbir yakın eksik etiketleri)
All of these work when I try to convert simple HTML docs (five or fewer pages with little CSS)
Commve liçindee applications
Tüm komut satırı uygulamaları yukarıdaki kütüphaneleri ile karşılaştırıldığında mükemmel ve çok hızlı çalışır, ama ben konsolda onları doğrudan çalıştırdığınızda sadece. I exec()
veya system()
PHP ile bunları kullanmaya çalıştığınızda, onlar bana hataları verir.
PHP onları çalıştırdığınızda aşağıdaki komut satırı uygulamaları ve bunların hataları şunlardır:
html2pdf (http://www.tufat.com/s_html2ps_html2pdf.htm)
html2pdf:11380): Gtk-WARNING **: cannot open display: :0.0
No protocol specifiedwkhtmltopdf
Loadiçindeg page: 10%
Loadiçindeg page: 33%
Loadiçindeg page: 100%
Waitiçindeg for redirect
Outputtiçindeg pages
QPaiçindeter::begiçinde(): Returned false
QPaiçindeter::begiçinde(): Returned false
QPaiçindeter::save: Paiçindeter not active
QPaiçindeter::scale: Paiçindeter not active
QPaiçindeter::setRenderHiçindet: Paiçindeter must be active to set renderiçindeg hiçindets
QPaiçindeter::setBrush: Paiçindeter not active
QPaiçindeter::pen: Paiçindeter not active
QPaiçindeter::setPen: Paiçindeter not activeHtmlToPdf (http://www.ultrashvardırwvardır.com/html-to-pdf.htm)
Yani şimdi ben yardım arıyorum. Herkes cevap verebilir:
Which PHP library would work well içinde my case?
Why do these errors occur içinde commve liçindee applications?