theCrag / website

theCrag.com: Add your voice and help guide the development of the world's largest collaborative rock climbing & bouldering platform
https://www.thecrag.com/
111 stars 8 forks source link

Drop in replacement for html 2 pdf step (weasyprint?) #704

Open brendanheywood opened 12 years ago

brendanheywood commented 12 years ago

Finally an open source project with proper CSS3 paged media support! yay!

http://weasyprint.org/features/

This will solve (in theory) all the typography and page layout isues I have with the current pdf'er but won't fix the topo svg stuff, but those can be fixed in the previous render stage using phantomjs.

The other issue we've had with the various options was proper CSS3 multi column support instead, so we can have blocks on the same page with different numbers of columns. Currently not supported in weasy but on their release schedule with a high priority:

http://redmine.kozea.fr/issues/675

So when the time is right to get back to this (maybe in 6 months?) we should have a full rendering pipeline of happiness.

Other projects I've looked at:

Adaptive layout specs:

Programatic libraries:

JS optimization + css3 then browser print:

This is useful: https://github.com/vivliostyle/vivliostyle#related-third-party-open-source-projects

Latex / Tex

Benefit of Tex is that it's a full turing language, but is hard to author directly. Ideally have a higher level abstraction for layout optimization.

Declarative transforms:

Constraint optimizing frameworks:

Linear:

http://marvl.infotech.monash.edu/webcola/

http://overconstrained.io/

https://github.com/slightlyoff/cassowary.js

Non linear / non devrivative frameworks:

https://en.wikipedia.org/wiki/NEWUOA

scd commented 12 years ago

I cannot do this until we have upgraded operating systems to the latest Debian. You saw the hassles we went through with upgrading your development server, and given the risks of total server failure I am opting to upgrade by getting a new server. The old server will run out of disk space in 6 to 12 months, so your suggested timing probably about right.

Unless I have to, I don't want to install new servers and I want to keep software stable until after Europe. So Feb 2013 is the earliest scheduled start time of this work.

brendanheywood commented 12 years ago

Yeah, I know. The issues seem like nags, but if I haven't put a milestone on it then I have no expectations about when or if it will be done. Making the issue is more about not losing the info

scd commented 12 years ago

Sorry about the tone, I absolutely agree with adding these issues. I was actually responding to your 6 months?

I've also created a long term issue for things we know we want to do but just cannot do yet.

brendanheywood commented 11 years ago

I know you had a look at the Qt / webkit based one which needed the upgrade: http://code.google.com/p/wkhtmltopdf/

But have you had a look at Weasy's dependencies? It may even work on prod as is?