--- gobook.perl 2011/01/06 00:14:18 1.3 +++ gobook.perl 2014/09/28 04:29:18 3.1 @@ -1,4 +1,5 @@ #! /usr/bin/perl -w +# $Id: gobook.perl,v 3.1 2014/09/28 04:29:18 philip Exp $ use XML::Simple; use strict; use PostScript::Simple; @@ -12,11 +13,12 @@ if ( defined $xml ){ $strips = XMLin($xml, KeyAttr => {strip => 'id'}); } -# create a new PostScript object -my $p = new PostScript::Simple(papersize => "A5", - colour => 1, - eps => 0, - units => "mm",); +# create a new PostScript object; + +my $p = new PostScript::Simple(papersize => "A5", + colour => 1, + eps => 0, + units => "mm"); # co-ords are horizontal, vertical. from bottom left corner. 148 x 210 @@ -53,7 +55,7 @@ $p->setcolour(60,28,0); $p->text(35,175, "Land-Out Guide"); $p->setfont("Helvetica", 17); $p->setcolour("white"); -$p->text(12,52, "2nd Edition 3rd Revision 2011"); +$p->text(12,52, "3rd Edition 2013"); $p->newpage; # Contents @@ -94,13 +96,13 @@ $p->text($t1,$v, "Photos by Gavin Wills. $v -= $ls; $p->text($t1,$v, "Text by Phil Plane and Gavin Wills. "); $v -= $ls; -$p->text($t1,$v, "Copyright GlideOmarama.com 2007."); +$p->text($t1,$v, "Copyright GlideOmarama.com 2013."); $v -= $ls; $p->text($t1,$v, "First Edition published November 2007. "); $v -= $ls; $p->text($t1,$v, "Second Edition published November 2008. "); $v -= $ls; -$p->text($t1,$v, "Second Edition 1st Revision published November 2009. "); +$p->text($t1,$v, "Third Edition published November 2013. "); $p->text(70,5, "(" . $pn++ . ")"); my $welcome = q{Produced for Omarama based glider pilots to assist safe emergency landings and satisfactory retrieves, this Guide and the associated South Island Gliding Maps (SIGMap) have been nearly 4 years in the making. Special thanks to Phil Plane, Chris Streat, Chris Rudge, Malcolm Walls and posthumously to Richard Halstead who started it all. @@ -512,6 +514,10 @@ foreach my $stripnum ( sort keys %{$stri $Text::Wrap::columns = 30; if ( $strips->{strip}->{$stripnum}->{comment} =~ /Danger/ ){ $p->setcolour("red"); + # Draw over image ... + $p->setlinewidth(4); + $p->arc( 70, 60, 20, 0, 360); + $p->line(50,40, 90,80); } my @para = split (/\n/,wrap('', '', $strips->{strip}->{$stripnum}->{comment})); while (my $ln = shift @para){ @@ -601,6 +607,9 @@ foreach my $stripname ( sort keys %strip # write the output to a file $p->output("gobook.ps"); +# use ghostscript to convert to pdf ... +`gs -q -dNOPAUSE -dSAFER -dBATCH -sDEVICE=pdfwrite -sOutputFile=gobook.pdf gobook.ps`; + exit 0; sub startpage {