summaryrefslogtreecommitdiffstats
path: root/source/t/xfig/xfig.3.2.4-urw-fonts.diff
diff options
context:
space:
mode:
Diffstat (limited to 'source/t/xfig/xfig.3.2.4-urw-fonts.diff')
-rw-r--r--source/t/xfig/xfig.3.2.4-urw-fonts.diff152
1 files changed, 152 insertions, 0 deletions
diff --git a/source/t/xfig/xfig.3.2.4-urw-fonts.diff b/source/t/xfig/xfig.3.2.4-urw-fonts.diff
new file mode 100644
index 000000000..396dead55
--- /dev/null
+++ b/source/t/xfig/xfig.3.2.4-urw-fonts.diff
@@ -0,0 +1,152 @@
+--- u_fonts.c
++++ u_fonts.c 2005-10-06 18:55:22.000000000 +0200
+@@ -21,7 +21,9 @@
+
+ /* X11 font names */
+
+-struct _xfstruct x_fontinfo[NUM_FONTS] = {
++struct _xfstruct x_fontinfo[NUM_FONTS];
++
++struct _xfstruct x_adobe_fontinfo[NUM_FONTS] = {
+ {"-*-times-medium-r-normal--", (struct xfont*) NULL},
+ {"-*-times-medium-i-normal--", (struct xfont*) NULL},
+ {"-*-times-bold-r-normal--", (struct xfont*) NULL},
+@@ -59,6 +61,44 @@
+ {"-*-itc zapf dingbats-*-*-*--", (struct xfont*) NULL},
+ };
+
++struct _xfstruct x_urw_fontinfo[NUM_FONTS] = {
++ {"-URW-*Nimbus Roman No9 L-medium-r-normal--", (struct xfont*) NULL}, /* Times-Roman */
++ {"-URW-*Nimbus Roman No9 L-medium-i-normal--", (struct xfont*) NULL}, /* Times-Italic */
++ {"-URW-*Nimbus Roman No9 L-bold-r-normal--", (struct xfont*) NULL}, /* Times-Bold */
++ {"-URW-*Nimbus Roman No9 L-bold-i-normal--", (struct xfont*) NULL}, /* Times-BoldItalic */
++ {"-URW-*Gothic L-medium-r-normal--", (struct xfont*) NULL}, /* AvantGarde-Book */
++ {"-URW-*Gothic L-medium-o-normal--", (struct xfont*) NULL}, /* AvantGarde-BookOblique */
++ {"-URW-*Gothic L-*bold-r-normal--", (struct xfont*) NULL}, /* AvantGarde-Demi */
++ {"-URW-*Gothic L-*bold-o-normal--", (struct xfont*) NULL}, /* AvantGarde-DemiOblique */
++ {"-URW-*Bookman L-medium-r-normal--", (struct xfont*) NULL}, /* Bookman-Light */
++ {"-URW-*Bookman L-medium-i-normal--", (struct xfont*) NULL}, /* Bookman-LightItalic */
++ {"-URW-*Bookman L-*bold-r-normal--", (struct xfont*) NULL}, /* Bookman-Demi */
++ {"-URW-*Bookman L-*bold-i-normal--", (struct xfont*) NULL}, /* Bookman-DemiItalic */
++ {"-URW-*Nimbus Mono L-medium-r-normal--", (struct xfont*) NULL}, /* Courier */
++ {"-URW-*Nimbus Mono L-medium-o-normal--", (struct xfont*) NULL}, /* Courier-Oblique */
++ {"-URW-*Nimbus Mono L-bold-r-normal--", (struct xfont*) NULL}, /* Courier-Bold */
++ {"-URW-*Nimbus Mono L-bold-o-normal--", (struct xfont*) NULL}, /* Courier-BoldOblique */
++ {"-URW-*Nimbus Sans L-medium-r-normal--", (struct xfont*) NULL}, /* Helvetica */
++ {"-URW-*Nimbus Sans L-medium-o-normal--", (struct xfont*) NULL}, /* Helvetica-Oblique */
++ {"-URW-*Nimbus Sans L-bold-r-normal--", (struct xfont*) NULL}, /* Helvetica-Bold */
++ {"-URW-*Nimbus Sans L-bold-o-normal--", (struct xfont*) NULL}, /* Helvetica-BoldOblique */
++ {"-URW-*Nimbus Sans L-medium-r-condensed--", (struct xfont*) NULL}, /* Helvetica-Narrow */
++ {"-URW-*Nimbus Sans L-medium-o-condensed--", (struct xfont*) NULL}, /* Helvetica-Narrow-Oblique */
++ {"-URW-*Nimbus Sans L-bold-r-condensed--", (struct xfont*) NULL}, /* Helvetica-Narrow-Bold */
++ {"-URW-*Nimbus Sans L-bold-o-condensed--", (struct xfont*) NULL}, /* Helvetica-Narrow-BoldOblique */
++ {"-URW-*Century Schoolbook L-medium-r-normal--", (struct xfont*) NULL}, /* NewCenturySchlbk-Roman */
++ {"-URW-*Century Schoolbook L-medium-i-normal--", (struct xfont*) NULL}, /* NewCenturySchlbk-Italic */
++ {"-URW-*Century Schoolbook L-bold-r-normal--", (struct xfont*) NULL}, /* NewCenturySchlbk-Bold */
++ {"-URW-*Century Schoolbook L-bold-i-normal--", (struct xfont*) NULL}, /* NewCenturySchlbk-BoldItalic */
++ {"-URW-*Palladio L-medium-r-normal--", (struct xfont*) NULL}, /* Palatino-Roman */
++ {"-URW-*Palladio L-medium-i-normal--", (struct xfont*) NULL}, /* Palatino-Italic */
++ {"-URW-*Palladio L-bold-r-normal--", (struct xfont*) NULL}, /* Palatino-Bold */
++ {"-URW-*Palladio L-bold-i-normal--", (struct xfont*) NULL}, /* Palatino-BoldItalic */
++ {"-URW-*Standard Symbols L-medium-r-normal--", (struct xfont*) NULL}, /* Symbol */
++ {"-URW-*Chancery L-medium-i-normal--", (struct xfont*) NULL}, /* ZapfChancery-MediumItalic */
++ {"-URW-*Dingbats-medium-r-normal--", (struct xfont*) NULL}, /* ZapfDingbats */
++};
++
+ /* Use the following font names for any font that doesn't exist in the table above.
+ * These come with the Open Group X distribution so they should be a common set.
+ *
+--- u_fonts.h
++++ u_fonts.h 2005-10-06 19:19:30.000000000 +0200
+@@ -32,9 +32,6 @@
+
+ extern int psfontnum();
+ extern int latexfontnum();
+-extern struct _xfstruct x_fontinfo[], x_backup_fontinfo[];
+-extern struct _fstruct ps_fontinfo[];
+-extern struct _fstruct latex_fontinfo[];
+
+ /* element of linked list for each font
+ The head of list is for the different font NAMES,
+@@ -61,5 +58,12 @@
+ * sizes */
+ };
+
++extern struct _xfstruct x_fontinfo[];
++extern struct _xfstruct x_urw_fontinfo[];
++extern struct _xfstruct x_adobe_fontinfo[];
++extern struct _xfstruct x_backup_fontinfo[];
++extern struct _fstruct ps_fontinfo[];
++extern struct _fstruct latex_fontinfo[];
++
+ int x_fontnum();
+ #endif /* U_FONTS_H */
+--- w_drawprim.c
++++ w_drawprim.c 2005-10-06 19:12:02.000000000 +0200
+@@ -99,6 +99,22 @@
+ appres.buttonFont, appres.normalFont);
+ button_font = XLoadQueryFont(tool_d, appres.normalFont);
+ }
++
++ /*
++ * Check for URW fonts, if not found use Adobe fonts
++ */
++ strcpy(template,x_urw_fontinfo[0].template);
++ strcat(template,"0-0-*-*-*-*-");
++ if (strstr(template,"ymbol") == NULL && strstr(template,"ingbats") == NULL)
++ strcat(template,"ISO8859-*");
++ else
++ strcat(template,"*-*");
++ if ((fontlist = XListFonts(tool_d, template, 1, &count)) == (char**)0)
++ memcpy(&x_fontinfo, &x_adobe_fontinfo, sizeof(struct _xfstruct) * NUM_FONTS);
++ else
++ memcpy(&x_fontinfo, &x_urw_fontinfo, sizeof(struct _xfstruct) * NUM_FONTS);
++ XFreeFontNames(fontlist);
++
+ /*
+ * Now initialize the font structure for the X fonts corresponding to the
+ * Postscript fonts for the canvas. OpenWindows can use any LaserWriter
+@@ -119,8 +135,8 @@
+ strcpy(template,x_fontinfo[0].template); /* nope, check for font size 0 */
+ strcat(template,"0-0-*-*-*-*-");
+ /* add ISO8859 (if not Symbol font or ZapfDingbats) to font name */
+- if (strstr(template,"symbol") == NULL &&
+- strstr(template,"zapf dingbats") == NULL)
++ if (strstr(template,"ymbol") == NULL &&
++ strstr(template,"ingbats") == NULL)
+ strcat(template,"ISO8859-*");
+ else
+ strcat(template,"*-*");
+@@ -139,8 +155,8 @@
+ strcpy(template,x_fontinfo[f].template);
+ strcat(template,"*-*-*-*-*-*-");
+ /* add ISO8859 (if not Symbol font or ZapfDingbats) to font name */
+- if (strstr(template,"symbol") == NULL &&
+- strstr(template,"zapf dingbats") == NULL)
++ if (strstr(template,"ymbol") == NULL &&
++ strstr(template,"ingbats") == NULL)
+ strcat(template,"ISO8859-*");
+ else
+ strcat(template,"*-*");
+@@ -287,8 +303,8 @@
+ /* attach pointsize to font name */
+ strcat(template,"%d-*-*-*-*-*-");
+ /* add ISO8859 (if not Symbol font or ZapfDingbats) to font name */
+- if (strstr(template,"symbol") == NULL &&
+- strstr(template,"zapf dingbats") == NULL)
++ if (strstr(template,"ymbol") == NULL &&
++ strstr(template,"ingbats") == NULL)
+ strcat(template,"ISO8859-*");
+ else
+ strcat(template,"*-*");
+@@ -299,8 +315,8 @@
+ strcpy(template,x_backup_fontinfo[fnum].template);
+ strcat(template,"%d-*-*-*-*-*-");
+ /* add ISO8859 (if not Symbol font or ZapfDingbats) to font name */
+- if (strstr(template,"symbol") == NULL &&
+- strstr(template,"zapf dingbats") == NULL)
++ if (strstr(template,"ymbol") == NULL &&
++ strstr(template,"ingbats") == NULL)
+ strcat(template,"ISO8859-*");
+ else
+ strcat(template,"*-*");