The attached patch helps.
However, I still get these errors on my Type1 directory:
[EMAIL PROTECTED] Type1]# mkfontscale -e /usr/X11R6/lib/X11/fonts/encodings -f 50 Unknown Type 1 weight "Compact" Couldn't determine weight for aqct____.pfb Unknown Type 1 weight "Poster" Couldn't determine weight for bdps____.pfb Unknown Type 1 weight "Poster" Couldn't determine weight for bdpsc___.pfb [EMAIL PROTECTED] Type1]#
Note that: Compact & Poster are NOT weights but rather, 'Additional Styles'. The XLFDs for these fonts have additional errors:
aqct____.pfb -adobe-antique olive-medium-r-normal--0-0-0-0-p-0-<encoding> bdps____.pfb -adobe-bodoni-medium-r-normal--0-0-0-0-p-0-<encoding> bdpsc___.pfb -adobe-bodoni-medium-r-normal--0-0-0-0-p-0-<encoding>
Correct (I hope):
aqct____.pfb -adobe-antique olive-medium-r-normal-compact-0-0-0-0-p-0-<encoding> bdps____.pfb -adobe-bodoni-medium-r-normal-poster-0-0-0-0-p-0-<encoding> bdpsc___.pfb -adobe-bodoni-medium-r-compressed-poster-0-0-0-0-p-0-<encoding>
This problem appears to be in FreeType. :-(
-- JRT
diff -Naur xc.old/programs/mkfontscale/mkfontscale.c
xc/programs/mkfontscale/mkfontscale.c
--- xc.old/programs/mkfontscale/mkfontscale.c 2003-07-07 08:34:29.000000000 -0700
+++ xc/programs/mkfontscale/mkfontscale.c 2003-07-14 13:45:05.000000000 -0700
@@ -407,13 +407,13 @@
return "thin";
if(strcmp(weight, "Light") == 0)
return "light";
- if(strcmp(weight, "Regular") == 0)
- return "medium";
+ if(strcmp(weight, "Book") == 0)
+ return "book";
if(strcmp(weight, "Normal") == 0)
return "medium";
- if(strcmp(weight, "Medium") == 0)
+ if(strcmp(weight, "Regular") == 0)
return "medium";
- if(strcmp(weight, "Book") == 0)
+ if(strcmp(weight, "Medium") == 0)
return "medium";
if(strcmp(weight, "Roman") == 0) /* Some URW++ fonts do that! */
return "medium";
@@ -421,11 +421,24 @@
return "semibold";
if(strcmp(weight, "DemiBold") == 0)
return "semibold";
- else if(strcmp(weight, "Bold") == 0)
+ if(strcmp(weight, "Demibold") == 0)
+ return "semibold";
+ if(strcmp(weight, "Semi") == 0)
+ return "semibold";
+ if(strcmp(weight, "SemiBold") == 0)
+ return "semibold";
+ if(strcmp(weight, "Semibold") == 0)
+ return "semibold";
+ if(strcmp(weight, "Bold") == 0)
return "bold";
- else if(strcmp(weight, "Black") == 0)
+ if(strcmp(weight, "ExtraBold") == 0)
+ return "extrabold";
+ if(strcmp(weight, "Extra Bold") == 0)
+ return "extrabold";
+ if(strcmp(weight, "Black") == 0)
return "black";
- else {
+
+ {
fprintf(stderr, "Unknown Type 1 weight \"%s\"\n", weight);
return NULL;
}

