projects
/
Printer-EVOLIS.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
document better protocol
[Printer-EVOLIS.git]
/
inkscape-render.pl
diff --git
a/inkscape-render.pl
b/inkscape-render.pl
index
3fd33bd
..
9df63e4
100755
(executable)
--- a/
inkscape-render.pl
+++ b/
inkscape-render.pl
@@
-6,6
+6,8
@@
use autodie;
my $card_svg = 'card/ffzg-2010.svg';
my $card_svg = 'card/ffzg-2010.svg';
+warn "# card template: $card_svg\n";
+
my ($nr,$ime,$prezime) = ( qw/
200900000042
Dobrica
my ($nr,$ime,$prezime) = ( qw/
200900000042
Dobrica
@@
-30,47
+32,51
@@
foreach my $existing ( glob $out . '*' ) {
unlink $existing;
}
unlink $existing;
}
-open(my $in, '<', $card_svg);
-open(my $print, '>', "$out.print.svg");
-open(my $screen, '>', "$out.screen.svg");
+open(my $svg_template, '<', $card_svg);
+open(my $svg, '>', "$out.svg");
-while(<$
in
>) {
+while(<$
svg_template
>) {
if ( m{($re)} ) {
warn "mapping $1\n";
s{($1)}{mapping($1)}e;
}
if ( m{($re)} ) {
warn "mapping $1\n";
s{($1)}{mapping($1)}e;
}
- if ( s{##print##}{none} ) {
- warn "print layer: $_\n";
- print $print $_;
- s{none}{inline};
- print $screen $_;
-
- } else {
- print $print $_;
- print $screen $_;
- }
+ print $svg $_;
}
}
-close($in);
-close($print);
-close($screen);
+close($svg_template);
+close($svg);
open(my $inkscape, '|-', 'inkscape --shell --without-gui');
sub inkscape_export {
my $part = shift;
open(my $inkscape, '|-', 'inkscape --shell --without-gui');
sub inkscape_export {
my $part = shift;
- print $inkscape "$out.print.svg --export-area-page --export-pdf $out.$part.pdf --export-id $part\n";
- print $inkscape "$out.screen.svg --export-png $out.png --export-dpi 300";
+
+ my $shell = "$out.svg --export-area-page --export-id $part";
+
+ print $inkscape "$shell --export-pdf $out.$part.pdf\n";
+ print $inkscape "$shell --export-png $out.$part.png --export-dpi 150\n";
}
inkscape_export 'print-front';
inkscape_export 'print-back';
}
inkscape_export 'print-front';
inkscape_export 'print-back';
+# export visible
+print $inkscape "$out.svg --export-png $out.png --export-dpi 300\n";
+
close($inkscape);
close($inkscape);
+foreach my $pdf ( glob "$out*.pdf" ) {
+ my $pbm = $pdf;
+ $pbm =~ s/pdf$/pbm/;
+ warn "# rendering $pdf => $pbm using ghostscript\n";
+ system "gs -dNOPAUSE -dBATCH -q -r300x300 -dDEVICEWIDTHPOINTS=243 -dDEVICEHEIGHTPOINTS=155 -sDEVICE=pbmraw -sOutputFile=$pbm -f $pdf";
+}
+
+system "pdftk $out.print-front.pdf $out.print-back.pdf cat output $out.print-duplex.pdf";
+
__END__
#system "inkscape --file $out.print.svg --export-pdf $out.pdf";
__END__
#system "inkscape --file $out.print.svg --export-pdf $out.pdf";