Kozea / WeasyPrint

The awesome document factory
https://weasyprint.org
BSD 3-Clause "New" or "Revised" License
7.19k stars 680 forks source link

Stable version user opinion survey #635

Closed liZe closed 5 years ago

liZe commented 6 years ago

It's time to make WeasyPrint great (again)!

We're about to release the first stable version of Weasyprint and we would like to know the users' opinions. Whether you're a former, regular or massive user of WeasyPrint, we'd like to have your answers to these questions:

(You'll find more about new features in the next milestone page).

Thank you!

Tontyna commented 6 years ago

Though my favourite writing mode is plain text (with lightweight markup), sooner or later there is always a fuelling demand for formatting and proper pagination of joined documents. Not to mention that paper protects against digital dark age.

Converting to nicely styled HTML is no problem at all. But...

...until I discovered WeasyPrint I imported the HTMLs into Word or OpenOffice and exported as PDF. Textprocessors are good when it comes to pagination but no script no regex no macro no template could prevent them from applying unwanted styles and doing other funny things, causing a lot of stupid manual reworking.

Since my css are not too complex, WeasyPrint's output is perfect.

The only thing I missed was its lack of automatic TOC generation -- no problem: it's Open Source and there's docs.python.org. Now I have a (rather ugly, but working) script which does what I need.

Ok, there is another obstacle, at least for Windows people: The installation. When I first read the list of prerequisites and that kittens will die because of me, I decided to give wkhtmltopdf a chance and even started learning LaTex. But OMG! No! So I finally followed the instructions, mumbling, grumbling, what an expense for only a little tool!, almost didn't cheat -- and no kitten died.

Browsers will eventually implement CSS Paged Media, but until then: I'll use WeasyPrint!

pothos commented 6 years ago

I convert pandoc markdown+html/css documents to PDF with WeasyPrint. The documents range from letters to scientific writings. I specially like it because of good native hyphens, and multi column support.

Unfortunately I sometimes need to fallback to wkhtmltopdf or chromium because of JS usage for mathjax (until I find a way to preprocess this with pandoc). Edit: Presentations are working with @page { size: 29.7cm 21cm; margin: 0; } @media print { h1 { page-break-before: always; } } and some styling instead of reveal.js. Hints for baking mathjax (which supports html/svg rendering) are very welcome. Edit2: Found https://github.com/lierdakil/mathjax-pandoc-filter but it requires inline SVG elements :( Thus must be patched: https://github.com/lierdakil/mathjax-pandoc-filter/issues/3

tokyovigilante commented 6 years ago

I've only just discovered WeasyPrint after dabbling with LaTeX years ago for scientific writing, but going back to Word after being disappointed with the complexity and (IMO) unattractive output.

I got interested in CSS typesetting for printed documents after discovering the CSS paged media model, and realising HTML/CSS could be a perfect solution for typesetting. My initial experiments with using a JS app to control Chrome Puppeteer as the PDF renderer, but, disappointed with the support for advanced paged media features, went looking for alternatives and found WeasyPrint.

I have not been disappointed with the quality of the output or the community, both of which are top-notch.

The real beauty of the system is that your input HTML can be as simple or as complex as you want, from simple hand-crafted documents to a full JS app generating the HTML and CSS to pass to the WeasyPrint renderer. The output is very high quality. The only other feature I'd like to see is a hyphenation system using the Knuth–Liang hyphenation algorithm.

Thanks again for great software!

BTW I've written a small Python script to watch a directory and re-render the PDF if the source files change, which is great for close to WYSIWYG editing but all the advantages of separating content and presentation. I'm happy to share if anyone is interested.

JohannesMunk commented 6 years ago

We discovered WeasyPrint quite exactly one year ago after getting fed up with the bad support of printCSS features in Chromium/QtWebEngine, that we previously used to generate PDFs from within our klar!studio.

Since then we have successfully deployed WP at two of our clients. We described one of the usecases in a whitepaper.

I am very happy about the projects activity and the support our issues recieved. To maintain a working HTML5 rendering engine is no small feat, but bears the fruits of an independant and agile project! Thanks a lot for this very useful and well maintained piece of software!

LukasKlement commented 6 years ago

We used WeasyPrint right from the outset of our latest product built with Django Rest Framework to render user-written and dynamically generated food and drink menus to downloadable/printable PDFs.

Why did you use WeasyPrint?

Why was it useful for you?

What were the main problems?

What best describes your choice of WeasyPrint?

sww314 commented 6 years ago

We just started using it with Django and Django Rest Framework applications to generate travel itineraries. The original implementation was done in ReportLab, but the code was impossible to maintain. The nice part is about WeasyPrint is that plugs in very well with the Django flow of doing things - collect your data in a serializer and render in a template.

Using WeasyPrint makes it much easier for us to move features from web app into the PDF version. The install was a bit tricky - it delayed our implementation for a while as the everything would just die when some dependency was missing.

We choose WeasyPrint over xhtml2pdf and are moving away from ReportLab. Better documentation and standards-based CSS/HTML as the source were key for us.

liZe commented 5 years ago

Thanks everyone!