From 9aab3e2f0ef90dcc93f35da6dda8032ae44cc671 Mon Sep 17 00:00:00 2001 From: Martin Goik <goik@hdm-stuttgart.de> Date: Fri, 15 Jan 2016 19:14:37 +0100 Subject: [PATCH] pdftoppm is now required for fig --> png conversion --- Makefile | 4 ++- bin/figspecial2png | 65 +++++++++++++++++++++++++++------------------- 2 files changed, 41 insertions(+), 28 deletions(-) diff --git a/Makefile b/Makefile index 1d1429f27..05cf580dc 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,9 @@ SHELL = /bin/bash numCores=$(shell nproc --all) -EXECUTABLES = /usr/share/xmlmind/bin/xxetool rsync pdflatex convert figspecial2pdf figspecial2png figspecial2svg fig2dev fig2mpdf fig2pdf pdf2svg java avconv +EXECUTABLES = /usr/share/xmlmind/bin/xxetool rsync pdflatex convert figspecial2pdf figspecial2png figspecial2svg fig2dev fig2mpdf fig2pdf pdf2svg pdftoppm \ +java avconv + K := $(foreach exec,$(EXECUTABLES),\ $(if $(shell which $(exec)),some string,$(error "No $(exec) in PATH))) diff --git a/bin/figspecial2png b/bin/figspecial2png index aa62c0f9c..a4bd4a257 100755 --- a/bin/figspecial2png +++ b/bin/figspecial2png @@ -3,44 +3,55 @@ use strict; -my $args= join(':', @ARGV); -#print "figspecial2png $args \n"; -#system("pwd >> /tmp/figresult"); - my $argCount = $#ARGV; -my $tmpDir = '/tmp/gendir'; if (1 != $argCount) { - die "usage: figspecial2png figFile pngFile" ; + die "usage: figspecial2png figFile pngFile" ; +} else { + my ($figFileName, $pngResultFileName) = @ARGV; + my $figFileBasename = $figFileName; + $figFileBasename =~ s/\.fig$//; + system("fig2pdf --nogv $figFileName"); + system("pdftoppm -singlefile -png $figFileBasename.pdf > $pngResultFileName && rm -f $figFileBasename.pdf"); } -my ($figFileName, $pngResultFileName) = @ARGV; -my @pathComponents = split('/', $figFileName); -my ($figFileBasename) = $pathComponents[$#pathComponents]; -$figFileBasename =~ s/\.fig$//; -my ($figFileBasedir) = join('/', @pathComponents[0..$#pathComponents-1]); +#my $args= join(':', @ARGV); +#print "figspecial2png $args \n"; +#system("pwd >> /tmp/figresult"); -my $generateDir = $tmpDir . $figFileBasedir; -my $pngGenerateFile = $generateDir . '/' . $figFileBasename . '.png'; -my $pdfGenerateFile = $generateDir . '/' . $figFileBasename . '.pdf'; +#my $argCount = $#ARGV; +#my $tmpDir = '/tmp/gendir'; +#if (1 != $argCount) { +# die "usage: figspecial2png figFile pngFile" ; +#} -if ((-r $pngGenerateFile) && ((stat($pngGenerateFile))[9] > (stat($figFileName))[9])) { +#my ($figFileName, $pngResultFileName) = @ARGV; +#my @pathComponents = split('/', $figFileName); +#my ($figFileBasename) = $pathComponents[$#pathComponents]; +#$figFileBasename =~ s/\.fig$//; +#my ($figFileBasedir) = join('/', @pathComponents[0..$#pathComponents-1]); + +#my $generateDir = $tmpDir . $figFileBasedir; +#my $pngGenerateFile = $generateDir . '/' . $figFileBasename . '.png'; +#my $pdfGenerateFile = $generateDir . '/' . $figFileBasename . '.pdf'; + +#if ((-r $pngGenerateFile) && ((stat($pngGenerateFile))[9] > (stat($figFileName))[9])) { # print $pngGenerateFile , " exists and is newer than ", $figFileName, "\n"; -} else { +#} else { # print $pngGenerateFile , " does not exist or is older than $figFileName\n"; - &execCmd("mkdir -p " . $generateDir); - my $convertResult = &execCmd("fig2dev -L pstex $figFileName | epstopdf -f > $pdfGenerateFile"); +# &execCmd("mkdir -p " . $generateDir); +# my $convertResult = &execCmd("fig2dev -L pstex $figFileName | epstopdf -f > $pdfGenerateFile"); - if (1 == $argCount && 0 == $convertResult) { - &execCmd("convert " . $pdfGenerateFile . " " . $pngGenerateFile); - } -} +# if (1 == $argCount && 0 == $convertResult) { +# &execCmd("convert " . $pdfGenerateFile . " " . $pngGenerateFile); +# } +#} -&execCmd("cp " . $pngGenerateFile . ' ' . $pngResultFileName); +#&execCmd("cp " . $pngGenerateFile . ' ' . $pngResultFileName); -sub execCmd { - my ($cmd) = @_; +#sub execCmd { +# my ($cmd) = @_; # system("echo ---'$cmd' >> /tmp/figresult"); - return system("cd /tmp;$cmd 2>>/tmp/figresult"); -} +# return system("cd /tmp;$cmd 2>>/tmp/figresult"); +#} ; -- GitLab