summaryrefslogtreecommitdiff
path: root/scripts/context/perl/pdftrimwhite.pl
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/context/perl/pdftrimwhite.pl')
-rw-r--r--scripts/context/perl/pdftrimwhite.pl40
1 files changed, 17 insertions, 23 deletions
diff --git a/scripts/context/perl/pdftrimwhite.pl b/scripts/context/perl/pdftrimwhite.pl
index e42a8fd49..08c1de5d7 100644
--- a/scripts/context/perl/pdftrimwhite.pl
+++ b/scripts/context/perl/pdftrimwhite.pl
@@ -180,6 +180,7 @@ my $thisisunix = $Config{'osname'} !~ /dos|mswin/i ;
my $figurefile = "" ;
my $resultfile = "" ;
+my $tempfile = "" ;
my $programname = "cropcrap" ;
@@ -224,7 +225,7 @@ my $width = my $height = my $llx = my $lly = my $urx = my $ury = 0 ;
#D help information.
sub PrintHelp
- { print "This is CropCrap\n\n" .
+ { print "This is PdfTrimWhite\n\n" .
"usage:\n\n" .
"cropcrap [switches] filename result\n\n" .
"switches:\n\n" .
@@ -246,6 +247,7 @@ sub GetItRight
{ PrintHelp() ; exit }
$figurefile = $ARGV[0] ; $figurefile =~ s/\.pdf$//oi ;
$resultfile = $ARGV[1] ; $resultfile =~ s/\.pdf$//oi ;
+ $tempfile = "pdftrimwhite-$resultfile" ;
if ($figurefile eq '')
{ PrintHelp() ; exit }
unless ($thisisunix)
@@ -257,7 +259,7 @@ sub GetItRight
exit }
if (($resultfile eq '')||($resultfile=~/(^\-|\.)/io))
{ $resultfile = $programname }
-$pipe = "2>&1" ;
+ $pipe = "2>&1" ;
if ($thisisunix)
{ $pipe = "2>&1" } }
@@ -376,7 +378,7 @@ sub PreparePlainTeX
\\figureheight=\\ht0\n" }
sub PrepareFirstPass
- { open (TEX, ">$resultfile.tex") ;
+ { open (TEX, ">$tempfile.tex") ;
if ($UsePlain)
{ print TEX
PreparePlainTeX .
@@ -406,7 +408,7 @@ sub SetupPlainTeX
{\\immediate\\pdfximage page $Page {$figurefile.pdf}\\pdfrefximage\\pdflastximage}\n" }
sub PrepareSecondPass
- { open (TEX, ">$resultfile.tex") ;
+ { open (TEX, ">$tempfile.tex") ;
if ($UsePlain)
{ print TEX
SetupPlainTeX .
@@ -438,30 +440,18 @@ sub FetchPaperSize
sub RunTeX
{ if ($UsePlain)
- { $result =
- `pdftex -prog=pdftex -fmt=plain -int=batchmode $resultfile` }
+ { $result = `pdftex -prog=pdftex -fmt=plain -int=batchmode $tempfile` }
else
- { $result =
- `texexec --batch --once --purge $resultfile` }
-# print $result if $Verbose ; $results .= "$result\n" ;
-# $result = `texutil --purge` ;
- print $result if $Verbose ; $results .= "$result\n" }
-
-sub MakePSFile
- { $result =
- `$pdfps -paperw $pwidth -paperh $pheight $resultfile.pdf $resultfile.ps` ;
+ { $result = `texexec --batch --once --purge $tempfile` }
print $result if $Verbose ; $results .= "$result\n" }
sub FindBoundingBox
- { $result =
-# `$gs -sDEVICE=bbox -dNOPAUSE -dBATCH $resultfile.ps $pipe` ;
- `$gs -sDEVICE=bbox -dNOPAUSE -dBATCH $resultfile.pdf $pipe` ;
+ { $result = `$gs -sDEVICE=bbox -dNOPAUSE -dBATCH $tempfile.pdf $pipe` ;
print $result if $Verbose ; $results .= "$result\n" }
sub IdentifyCropBox
{ RunTeX() ;
FetchPaperSize () ;
-# MakePSFile() ;
FindBoundingBox() }
#D Just to be sure, we check if there is some image data, so
@@ -495,6 +485,10 @@ sub FixCropBox
#D For error tracing we save the log information in a file.
+sub RenameResult
+ { unlink "$resultfile.pdf" ;
+ rename "$tempfile.pdf", "$resultfile.pdf" }
+
sub SaveLogInfo
{ open (LOG, ">$resultfile.log") ;
print LOG $results ;
@@ -504,10 +498,9 @@ sub SaveLogInfo
sub CleanUp
{ unless ($Verbose)
- { unlink "$resultfile.tex" ;
- unlink "$resultfile.tuo" ;
- unlink "$resultfile.tui" ;
- unlink "$resultfile.ps" ;
+ { unlink "$tempfile.tex" ;
+ unlink "$tempfile.tuo" ;
+ unlink "$tempfile.tui" ;
unlink "$figurefile.tmp" } }
#D Here it all comes together.
@@ -526,6 +519,7 @@ if (ValidatedCropBox())
{ PrepareSecondPass() ;
FixCropBox() }
+RenameResult() ;
SaveLogInfo() ;
CleanUp () ;