#!/usr/bin/perl
# Copyright (c), 2001-2002 Apostolos Syropoulos 
#                          apostolo@ocean1.ee.duth.gr
# This program generates all the driver files for the CB fonts by
# Claudio Beccari. Moreover, it creates the necessary commands to
# create PostScript Type 1 fonts with tex-trace by Peter Szabo.
# In addition, it geberates for each font traced a command that polishes
# the fonts by calling PfaEdit.
#
# Initialiaze arrays!
@std_sizes = ("0500", "0600", "0700", "0800", "0900", "1000",
              "1095", "1200", "1440", "1728", "2074", "2488",
              "2986", "3583");

@lstd_sizes = ("0700", "0800", "1000", "1200", "1382", "1659",
               "1991", "2389", "2866", "3440", "4128");

@std_names = ( "gmmn", "gmmo", "gmtr", "gmxn", "gmxo", "gomc",
               "gomi", "gomn", "gomo", "gomu", "goxc", "goxi",
               "goxn", "goxo", "goxu", "grbl", "grmc", "grmi",
               "grml", "grmn", "grmo", "grmu", "grxc", "grxi",
               "grxl", "grxn", "grxo", "grxu", "gsmc", "gsmi",
               "gsmn", "gsmo", "gsmu", "gsxc", "gsxi", "gsxn",
               "gsxo", "gsxu", "gttc", "gtti", "gttn", "gtto",
               "gttu");

@lstd_names = ( "glic", "glii", "glin", "glio", "gliu", "gljc",
                "gljn", "gljo", "glmc", "glmi", "glmn", "glmo",
                "glmu", "gltc", "gltn", "glto", "glwc", "glwi",
                "glwn", "glwo", "glwu", "glxc", "glxi", "glxn",
                "glxo", "glxu");
# Initial Unique ID for use with tex-trace.
our $UniqueID = 4900000;
# create batch file that will be used to create PostScript Type 1 fonts.
open(TYPE1, ">genpfbs")||die "Can't create file genpfbs\n";
open(CBGREEK, ">cbgreek.map")||die "Can't create map file\n";
print TYPE1 "#!/usr/bin/bash\n";
#
#Now generate driver files for standard fonts.
#
foreach $size (@std_sizes) {
  foreach $name (@std_names) {
    $font_name = "$name$size";
    $Font_name = "$name$size.mf";
    open(FONT, ">$Font_name") || die "Can't create file $Font_name\n";
    print FONT "%Generated by mkcbfonts\n";
    print FONT "input cbgreek;\n";
    close FONT;
    print TYPE1 "traceall.sh $font_name $font_name.pfb $UniqueID\n";
    print TYPE1 "pfaedit -script postproc.scr $font_name.pfb \n";
    $UniqueID++; 
    print CBGREEK "$font_name TeX-$font_name <$font_name.pfb\n";
  }
}
#
#Now generate driver files for ``slide'' fonts.
#
foreach $size (@lstd_sizes) {
  foreach $name (@lstd_names) {
    $font_name = "$name$size";
    $Font_name = "$name$size.mf";
    open(FONT, ">$Font_name") || die "Can't create file $Font_name\n";
    print FONT "%Generated by mkcbfonts\n";
    print FONT "input cbgreek;\n";
    close FONT;
    print TYPE1 "traceall.sh $font_name $font_name.pfb $UniqueID\n";
    print TYPE1 "pfaedit -script postproc.scr $font_name.pfb \n";
    $UniqueID++;
    print CBGREEK "$font_name TeX-$font_name <$font_name.pfb\n";
  }
}
__END__

