2013-03-14 49 views
13

Ben iyi, açık kaynak PDF jeneratör/PDF dosyası içine (stil vb) html dönüştürecektir kitaplığı için arıyorum.Google App Engine PDF dönüştürücü

Gereksinim:

  • Java veya Python olması ve Google App Engine üzerinde çalışan olmalı.
  • Açık, ücretsiz, açık olmalıdır.
  • Kullanımı/tüketilmesi kolay olmalı.

Evet, bunu kendim aramayı denedim - Google'da bulduğum çok sayıda "çözümü" denedim. Yok, henüz beni tatmin etmiyor. Pek çoğu eksik, buggy gibi görünüyor veya GAE'de iyi çalışmıyor. Bu yüzden, görüşler veya öneriler için StackOverflow topluluğuna itiraz edeceğimi düşündüm.

+6

Pisa https://pypi.python.org/pypi/pisa adresinde incelediniz mi? Aslında baktığınız araçlar/libslerden bahsetmek yardımcı olacaktır. –

+4

Denediğin şeyden bahset, aksi halde bu soru kapatılabilir. – Lipis

+0

Merhaba, JAVA uygulaması için çözüm buldunuz. Evet ise lütfen bana bildirin –

cevap

10

PDF/PDF için PDF'de Pion, Reportlab, pyPdf ve GAE üzerinde çalışan html5lib kullanan Python kitaplığını http://www.xhtml2pdf.com/ kullanıyorum. Ben gömülü görüntüleri ile çok güzel bir makale PDF'leri oluşturmak için kullanıyorum ve bir kez nasıl sayfa boyutunu elde etmek için anladım ben çok iyi bir kütüphane olduğunu bulduk.

Sen xhtml2pdf kütüphane gerekir ve bağımlılıkları var: https://github.com/chrisglass/xhtml2pdf

Ben bazı örnek Python kod birlikte attı ve bu pastebin koydu: http://pastebin.com/FFEZjNs3

sen sonunda elde pdf_data ikili olduğunu PDF dosya verileri. Pisa'ya verdiğiniz html_data gerçekten bir HTML belgesi içeren herhangi bir dizedir.

iyi biçimlendirilmiş PDF çıktısını almak için HTML dahil etmek önerilen bazı şeyler vardır. İşte kullandığım temel şablona benzeyen örnek bir HTML belgesi. Yazar, meta alanını ve @page CSS Not: Burada http://pastebin.com/q1wRm9nJ

uyumlu CSS ve HTML hakkında dokümanlar şunlardır: https://github.com/chrisglass/xhtml2pdf/blob/master/doc/usage.rst#supported-css-properties

harici resmin URL'sini kullanarak görüntüleri içerebilir veya kullanabilirsiniz dataUri ve xhtml2pdf bu "pisa.makeDataURI()" oluşturmak için bir işlevi vardır.

Bu yardımcı olur umarım.

+0

Mükemmel cevap, bu sadece ihtiyacım olan şeydi! – Fortes