From ac4b80be810fc615b426557ad86f0cb8092f5304 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Thu, 3 Dec 2020 17:18:03 +0100 Subject: add files --- buch/splitpapers | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100755 buch/splitpapers (limited to 'buch/splitpapers') diff --git a/buch/splitpapers b/buch/splitpapers new file mode 100755 index 0000000..9ae5aae --- /dev/null +++ b/buch/splitpapers @@ -0,0 +1,45 @@ +#! /bin/bash +# +# splitpapers -- split PDF into one file per chapter +# +# (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +# +if [ ! -f buch.aux ] +then + echo "file buch.aux missing" + exit 1 +fi + +if [ ! -d separata ] +then + mkdir separata +fi + +awk 'BEGIN { + offsetpage = 10 + startpage = 0 + identifier = "" + chapterno = 0 +} +/newlabel{chapter:/ { + s = substr($0, 19, length($0) - 19) + i = match(s, "}{{") + newidentifier = substr(s, 1, i-1) + s = substr(s, i+3, length(s)-i-3) + i = match(s, "}{") + newchapterno = int(substr(s, 1, i)) + s = substr(s, i+2, length(s)-i-2) + i = match(s, "}{") + newpage = int(substr(s, 1, i)) + if (chapterno > 7) { + printf("pdfjam --outfile separata/%s.pdf buch.pdf %d-%d\n", identifier, startpage + offsetpage, newpage + offsetpage - 1) + } + startpage = newpage + chapterno = newchapterno + identifier = newidentifier +} +END { + printf("pdfjam --outfile separata/%s.pdf buch.pdf %d-\n", identifier, startpage + offsetpage) +}' buch.aux | bash + + -- cgit v1.2.1