#!/usr/bin/perl
# Copyright (C) Dirk Husemann, Computer Science Department IV, 
# 	Friedrich-Alexander-Universitt Erlangen-Nrnberg, Germany, 1993
# All rights reserved.
# 
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in the
#    documentation and/or other materials provided with the distribution.
# 3. All advertising materials mentioning features or use of this software
#    must display the following acknowledgement:
#      This product includes software developed by the Dirk Husemann,
#      Friedrich-Alexander-Universitt Erlangen-Nrnberg, Germany
# 4. The name of the University may not be used to endorse or promote
#    products derived from this software without specific prior written
#    permission. 
# 
# THIS SOFTWARE IS PROVIDED BY THE UNIVERSITY ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE UNIVERSITY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 

require 'getopts.pl';

$usage = "$0 [-P] [-t newtag] fig-logo-file new-logo-ps-file";

$fig2dev = "/usr/X11/bin/fig2dev";
$tmpdir = "/tmp";

$nono = "F2ps";
$ouioui = "Hurz";

&Getopts('Pt:');

($#ARGV == 1) || die "$usage\n";

$figfile = $ARGV[0], $logofile = $ARGV[1];
(-e $figfile) || die "can't find fig input file $figfile\n";

if (!defined($opt_P)) {
    # first convert fig file to ps intermediary file
    ($tmpfile = "$tmpdir/.fig2cover.$$") && (unlink($tmpfile));
    system("$fig2dev -L ps $figfile > $tmpfile");
} else {
    $tmpfile = $figfile;
}
(defined($opt_t)) && ($ouioui = $opt_t);

open(PSFILE, "<$tmpfile") || die "can't open tmp input file $tmpfile\n";
open(LOGOFILE, ">$logofile") || 
    die "can't open cover output file $logofile\n";

printf LOGOFILE "%%!\n%%%% Logo created from $figfile\n";
while($tline = <PSFILE>) {
    chop $tline;
    $tline =~ s/$nono/$ouioui/g;
    printf LOGOFILE "%s\n", $tline;
}
close(LOGOFILE);
close(PSFILE);

exit 0;
