use strict; use warnings; use OSM::osm 8.3; my $version = "1.00"; my $streetFileName; my $poiFileName; my $pdfFileName; my $texFileName; my $titleText; my $numColumns; my $streetFile; my $poiFile; my $texFile; ($streetFileName, $poiFileName, $titleText, $pdfFileName, $numColumns)= @ARGV; print "mwDir.pl: $streetFileName, $poiFileName, $titleText, $pdfFileName, $numColumns\n"; $texFileName = $pdfFileName; $texFileName =~ s/.pdf/.tex/; open($texFile, ">", $texFileName)or die("can't open tex output file"); print $texFile "\\documentclass[a4paper,12pt]{book}\n"; print $texFile "\\usepackage{multicol}\n"; print $texFile "\\usepackage[utf8]{inputenc}\n"; print $texFile "\\usepackage[top=2.5cm,bottom=2cm,left=3cm,right=2cm]{geometry}\n"; print $texFile "\\columnsep7mm\n"; print $texFile "\\begin{document}\n"; print $texFile "\\section*{$titleText}\n"; print $texFile "\n"; print $texFile "\\tiny\n"; print $texFile "Data CC-BY-SA www.openstreetmap.org\n"; print $texFile "\\normalsize\n\n"; # streets if($streetFileName ne "none"){ my $result = open($streetFile, "<", $streetFileName); if($result){ my $line; print $texFile "\\begin{multicols}{$numColumns}[\\subsubsection*{Streets}]\n"; print $texFile "\\tiny\n"; while($line = <$streetFile>){ $line = convertToLatex($line); my(@entry)= split /\t/, $line; print $texFile $entry[0]; print $texFile " \\dotfill "; print $texFile $entry[1], " \\\\\n"; } close($streetFile); print $texFile "\\normalsize\n"; print $texFile "\\end{multicols}\n"; } else{ print "WARNING: street file $streetFile could not be opened."; } } # POIs if($poiFileName ne "none"){ my $result = open($poiFile, "<", $poiFileName); if($result){ my $line; print $texFile "\\begin{multicols}{$numColumns}[\\subsubsection*{Points of interest}]\n"; print $texFile "\\tiny\n"; while($line = <$poiFile>){ $line = convertToLatex($line); my @entry = split /\t/, $line; print $texFile $entry[0]; print $texFile " \\dotfill "; print $texFile $entry[1], "\\\\\n"; } close($poiFile); print $texFile "\\normalsize\n"; print $texFile "\\end{multicols}\n"; } else{ print "WARNING: POI file $poiFile could not be opened."; } } print $texFile "\\end{document}\n"; close($texFile); print "directory tex file created.\n"; my $dviFileName = $pdfFileName; $dviFileName =~ s/.pdf/.dvi/; my $psFileName = $pdfFileName; $psFileName =~ s/.pdf/.ps/; `latex $texFileName`; print "directory dvi file created.\n"; `dvips -D600 $dviFileName -o`; print "directory ps file created.\n"; `ps2pdf $psFileName $pdfFileName`; print "directory pdf file created.\n"; `rm *.dvi`; `rm *.tex`; `rm *.ps`; `rm *.aux`; `rm *.log`; print "directory FINISHED.\n";