#!/bin/sh # # normalizeschps - Normalize 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. # LINEWIDTH=120 usage() { cat <&2 usage: $0 [options] file ... -w points Postscript line width (default: $LINEWIDTH) EOF exit 1 } while true; do case "$1" in -w) [ -z "$2" ] && usage LINEWIDTH="$2" shift 2;; -*) usage;; *) break;; esac done for n in "$@"; do sed -i ' 1c%!PS-Adobe-3.0\ currentdict /DidNormalize known not { \ /setlinewidth { '$LINEWIDTH' 2 copy lt { exch } if pop \ setlinewidth } bind def \ /rectfill { rectstroke } bind def \ /DidNormalize true def \ } if \ gsave /%%DocumentMedia: A4.*/a-20 -10 translate /%%DocumentMedia: A3.*/{s/A3/A4/;a-20 -10 translate 0.70 dup scale } /%%DocumentMedia: A2.*/{s/A2/A4/;a-18 -12 translate 0.49 dup scale } $agrestore' "$n" done # /%%Orientation: Landscape/d' "$n"