From 4966ae0381423452adc6666fdf923cb5af0fb452 Mon Sep 17 00:00:00 2001
From: Martin Goik <goik@hdm-stuttgart.de>
Date: Sat, 16 Feb 2013 15:03:30 +0100
Subject: [PATCH] Integration from older lecture notes

---
 bin/figspecial2pdf | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 bin/figspecial2png | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 92 insertions(+)
 create mode 100755 bin/figspecial2pdf
 create mode 100755 bin/figspecial2png

diff --git a/bin/figspecial2pdf b/bin/figspecial2pdf
new file mode 100755
index 000000000..d50659d29
--- /dev/null
+++ b/bin/figspecial2pdf
@@ -0,0 +1,46 @@
+#!/usr/bin/perl
+# uses imagemagic, pdftex,...
+
+use strict;
+
+my $args= join(':', @ARGV);
+#print "figspecial2pdf $args \n";
+#system("pwd >> /tmp/figresult");
+
+my $argCount = $#ARGV;
+my $tmpDir = '/tmp/gendir';
+if (1 != $argCount) {
+  die "usage: figspecial2pdf figFile pdfFile" ;
+}
+
+my ($figFileName, $pdfResultFileName) = @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 {
+#  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");
+
+  if (1 == $argCount && 0 == $convertResult) {
+    &execCmd("convert " . $pdfGenerateFile  . " " . $pngGenerateFile);
+  }
+}
+
+&execCmd("ln -sf " . $pdfGenerateFile . ' ' . $pdfResultFileName);
+
+sub execCmd {
+    my ($cmd) = @_;
+#    system("echo ---'$cmd' >> /tmp/figresult");
+    return system("cd /tmp;$cmd 2>>/tmp/figresult");
+}
+
+;
diff --git a/bin/figspecial2png b/bin/figspecial2png
new file mode 100755
index 000000000..1a7d85339
--- /dev/null
+++ b/bin/figspecial2png
@@ -0,0 +1,46 @@
+#!/usr/bin/perl
+# uses imagemagic, pdftex,...
+
+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" ;
+}
+
+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 {
+#  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");
+
+  if (1 == $argCount && 0 == $convertResult) {
+    &execCmd("convert " . $pdfGenerateFile  . " " . $pngGenerateFile);
+  }
+}
+
+&execCmd("ln -sf " . $pngGenerateFile . ' ' . $pngResultFileName);
+
+sub execCmd {
+    my ($cmd) = @_;
+#    system("echo ---'$cmd' >> /tmp/figresult");
+    return system("cd /tmp;$cmd 2>>/tmp/figresult");
+}
+
+;
-- 
GitLab