mirror of
git://projects.qi-hardware.com/eda-tools.git
synced 2024-12-23 19:02:59 +02:00
60 lines
1.3 KiB
Bash
Executable File
60 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# schps2pdf - Generate PDF files from Eeschema Postscript
|
|
#
|
|
# Written 2010 by Werner Almesberger
|
|
# Copyright 2010 Werner Almesberger
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
|
|
|
|
usage()
|
|
{
|
|
cat <<EOF 1>&2
|
|
usage: $0 [options] [-o file.pdf] [file.ps ...]
|
|
|
|
-t prefix make a table of content. Remove prefix from file names.
|
|
-T title make a table of content using the specified title. Each
|
|
sheet needs one -T option.
|
|
EOF
|
|
exit 1
|
|
}
|
|
|
|
|
|
toc=false
|
|
out=-
|
|
while true; do
|
|
case "$1" in
|
|
-o) [ -z "$2" ] && usage
|
|
out=$2
|
|
shift 2;;
|
|
-t) [ -z "$2" ] && usage
|
|
toc=true
|
|
prefix="$2"
|
|
shift 2;;
|
|
-T) [ -z "$2" ] && usage
|
|
toc=true
|
|
titles="$titles \"$2\""
|
|
shift 2;;
|
|
-*)
|
|
usage;;
|
|
*)
|
|
break;;
|
|
esac
|
|
done
|
|
|
|
in=${1:--}
|
|
shift
|
|
|
|
eval gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=\"$out\" -f \
|
|
`i=1; for n in "$in" "$@"; do \
|
|
i=\`expr $i + 1\`;
|
|
echo "<(sheet=\"\`basename \"$n\" .ps\`\";
|
|
set x $titles; eval t='\\${$i}';
|
|
$toc && echo '[ /Title ('\"\\${t:-\\${sheet#$prefix}}\"') /OUT pdfmark';
|
|
cat \"$n\";)"; done`
|