[Catalyst] Re: PDF creation in Catalyst?
Ash Berlin
ash_cpan at firemirror.com
Wed Oct 22 21:17:40 BST 2008
On 22 Oct 2008, at 20:50, Aristotle Pagaltzis wrote:
> * Kirby Krueger <kirbykr at u.washington.edu> [2008-10-22 20:20]:
>> Can someone give me those few lines? :-)
>
> sub MyApp::Controller::Root::renderview :
> ActionClass('RenderView') {}
>
> sub MyApp::Controller::Root::end : Private {
> my $self = shift;
> my ( $c ) = @_;
> $c->forward( '/renderview' );
> if ( $c->req->param( 'pdf' ) ) {
> my @pdf_cmd = Text::ParseWords::shellwords( $c->config-
> >{ pdf_cmd } );
> $c->res->content_type( 'application/pdf' );
> $c->res->body( IPC::Filter::filter( $c->res->body,
> @pdf_cmd ) );
> }
> }
>
> And in `myapp.conf`:
>
> pdf_cmd prince -i html -s prince.css -o - -
>
> Yes, PrinceXML <http://www.princexml.com/> costs $$$, *however*,
> it renders HTML to PDF verbatim instead of requiring you to use
> completely different stuff like FOP or LaTeX – which is an
> especially big selling point if you’re looking to generate PDF
> from a CMS-ish thing where users can enter HTML content. It also
> supports pretty much all print-related CSS stuff, which includes
> control over line breaks and the like, and also provides
> proprietary CSS extensions to do things like page headers and
> footers, page numbering, and so on. For us, the effort we avoided
> of having to write PDF-specific code (the above lines are
> literally the only PDF-related code in the app) and then maintain
> it over more than made up for the price tag.
>
Sounds interesting - In fact so interesting i contemplated doing
something similar a few months ago before decided i didn't have time
due to major release in like 3 days time >_>
http://perlitist.com/static/talks/pdf_typesetting.pdf <-- I even wrote
a talk about it :)
(No i've not really got anywhere with the code since. I've spent about
a total of 6 hours on it since I gave that talk)
-ash
More information about the Catalyst
mailing list