Thread system() richtig benutzen
(6 answers)
Opened by cbxk1xg at 2013-02-16 16:59
Ich hab's jetzt hinbekommen. Es lag zum Teil am x-Server. Ich hab mir nach dieser Anleitung http://drupal.org/node/870058 ein Mini-Shell-Skript erstellt und rufe nun dieses Skript auf. Das schöne an dem Tool ist, dass es auch CSS und Bilder sauber rendert. Da kann momentan kein Perl-Modul mithalten. Das Modul WKHTMLTOPDF ist übrigens Mist.
Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 #!/usr/bin/perl use strict; use warnings; use CGI::Carp qw(fatalsToBrowser); use utf8; my $RootAndSubDir = $ENV{'SCRIPT_FILENAME'}; $RootAndSubDir =~ s-(.*?)\/index.pl-$1/-g; my $root = "$RootAndSubDir"; my $in = $root."source.html"; my $out = $root."test.pdf"; print "Content-type: text/html\n\n"; print "<h1>Generating PDF...</h1>"; unlink($out); my @cmd = ( $root."wkhtmltopdf", $in, $out ); print "<pre>"; system( @cmd ) == 0 or print "Command <<@cmd>> not successful: $!\n"; print "</pre>"; print qq|<br/><br/><a href="http://example.com/pdf/test.pdf" target ="_blank">download PDF</a>|; |