summaryrefslogtreecommitdiff
path: root/support/dktools/dk3font.ctr
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /support/dktools/dk3font.ctr
Initial commit
Diffstat (limited to 'support/dktools/dk3font.ctr')
-rw-r--r--support/dktools/dk3font.ctr996
1 files changed, 996 insertions, 0 deletions
diff --git a/support/dktools/dk3font.ctr b/support/dktools/dk3font.ctr
new file mode 100644
index 0000000000..d0544037df
--- /dev/null
+++ b/support/dktools/dk3font.ctr
@@ -0,0 +1,996 @@
+%% options
+
+copyright owner = Dirk Krause
+copyright year = 2012-xxxx
+license = bsd
+
+
+
+%% header
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/** Retrieve PS font name for font without leading slash.
+ @param fontno Font number.
+ @return Pointer to name on success, NULL on error.
+*/
+char const *
+dk3font_get_ps_font_name(int fontno);
+
+/** Retrieve GS font name for font.
+ @param fontno Font number.
+ @return Pointer to name on success, NULL on error.
+*/
+char const *
+dk3font_get_gs_font_name(int fontno);
+
+/** Retrieve TeX/LaTeX font name.
+ @param fontno Font number.
+ @return Pointer to name on success, NULL on error.
+*/
+char const *
+dk3font_get_tex_font_name(int fontno);
+
+/** Get TeX/LaTeX font family name.
+ @param fontno Font number.
+ @return Pointer to family name on success, NULL on error.
+*/
+char const *
+dk3font_get_tex_family_name(int fontno);
+
+/** Get old GS font file name without leading path and without suffix.
+ Typically you need to append ".pfb".
+ @param fontno Font number.
+ @return Pointer to name on success, NULL on error.
+*/
+char const *
+dk3font_get_gs_old_file(int fontno);
+
+/** Get new GS font file name without leading path and without suffix.
+ @param fontno Font number.
+ @return Pointer to name on success, NULL on error.
+*/
+char const *
+dk3font_get_gs_new_file(int fontno);
+
+/** Retrieve font feature set.
+ @param fontno Font number.
+ @return Font feature set.
+*/
+int
+dk3font_get_features(int fontno);
+
+/** Retrieve SVG font feature set.
+ @param fontno Font number.
+ @return Font feature set.
+*/
+int
+dk3font_get_svg_features(int fontno);
+
+/** Retrieve PS font family name.
+ @param fontno Font number.
+ @return Family name on success, NULL on error.
+*/
+char const *
+dk3font_get_ps_family(int fontno);
+
+/** Retrieve list of replacement family names.
+ @param fontno Font number.
+ @return NULL-terminated array of names.
+*/
+char const * const *
+dk3font_get_replacement_families(int fontno);
+
+/** Retrieve SVG font family name.
+ @param fontno Font number.
+ @return Family name on success, NULL on error.
+*/
+char const *
+dk3font_get_svg_family(int fontno);
+
+/** Retrieve SVG font ID.
+ @param fontno Font number.
+ @return Font ID on success, NULL on error.
+*/
+char const *
+dk3font_get_svg_fontid(int fontno);
+
+/** Retrieve SVG font weight.
+ @param fontno Font number.
+ @return The weight as numeric value.
+*/
+int
+dk3font_get_svg_font_weight(int fontno);
+
+/** Find font base URI.
+ @param app Application structure.
+ @param buf Destination buffer.
+ @param bs Size of @arg buf (number of dkChar).
+ @return 1 on success, 0 on error.
+*/
+int
+dk3font_gs_base_web(dk3_app_t *app, dkChar *buf, size_t bs);
+
+/** Find local font base directory.
+ @param app Application structure.
+ @param buf Destination buffer.
+ @param bs Size of @arg buf (number of dkChar).
+ @return 1 on success, 0 on error.
+*/
+int
+dk3font_gs_base_local(dk3_app_t *app, dkChar *buf, size_t bs);
+
+#ifdef __cplusplus
+}
+#endif
+
+
+
+%% module
+
+#include "dk3all.h"
+#include "dk3font.h"
+
+
+
+$!trace-include
+
+
+
+/*
+ PLACES TO SEARCH FOR PFB FILES:
+ ===============================
+
+ Linux
+ -----
+ /usr/share/ghostscript/_version_/Resource/Font/_newname_
+ /usr/share/fonts/default/Type1/_oldname_.pfb
+
+ Windows
+ -------
+ _windowsdirectory_/Fonts
+ Ghostscript font directories
+*/
+
+
+
+/** Additional system font families usable as replacements.
+*/
+static char const * const dk3font_times_family_names[] = {
+$!string-table
+Times New Roman
+Bodoni MT
+$!end
+};
+
+
+
+/** Additional system font families usable as replacements.
+*/
+static char const * const dk3font_avantgarde_family_names[] = {
+$!string-table
+Trebuchet MS
+Verdana
+$!end
+};
+
+
+
+/** Additional system font families usable as replacements.
+*/
+static char const * const dk3font_bookman_light_family_names[] = {
+$!string-table
+Bookman Old Style
+Times New Roman
+$!end
+};
+
+
+
+/** Additional system font families usable as replacements.
+*/
+static char const * const dk3font_courier_family_names[] = {
+$!string-table
+Courier New
+$!end
+};
+
+
+
+/** Additional system font families usable as replacements.
+*/
+static char const * const dk3font_helvetica_family_names[] = {
+$!string-table
+Arial
+Gill Sans MT
+Lucida Sans
+Tahoma
+$!end
+};
+
+
+
+/** Additional system font families usable as replacements.
+*/
+static char const * const dk3font_helvetica_narrow_family_names[] = {
+$!string-table
+Arial Narrow
+Arial
+$!end
+};
+
+
+
+/** Additional system font families usable as replacements.
+*/
+static char const * const dk3font_ncschoolbook_family_names[] = {
+$!string-table
+Century Schoolbook
+Times New Roman
+$!end
+};
+
+
+
+/** Additional system font families usable as replacements.
+*/
+static char const * const dk3font_palatino_family_names[] = {
+$!string-table
+Palatino Linotype
+Times New Roman
+$!end
+};
+
+
+
+/** Additional system font families usable as replacements.
+*/
+static char const * const dk3font_symbol_family_names[] = {
+$!string-table
+Symbol
+$!end
+};
+
+
+
+/** Additional system font families usable as replacements.
+*/
+static char const * const dk3font_zapfchancery_family_names[] = {
+$!string-table
+Edwardian Script ITC
+Blackadder ITC
+$!end
+};
+
+
+
+/** Additional system font families usable as replacements.
+*/
+static char const * const dk3font_zapfdingbats_family_names[] = {
+$!string-table
+WingDings
+$!end
+};
+
+
+
+/** Font information.
+*/
+static dk3_font_t const dk3font_data[] = {
+ { /* 0 */
+ "Times-Roman",
+ "ptmr",
+ "ptm",
+ "NimbusRomNo9L-Regu",
+ "n021003l",
+ "NimbusRomNo9L-Regu",
+ "Times",
+ "Nimbus Roman No9 L",
+ "NimbusRomanNo9L-Regu",
+ dk3font_times_family_names,
+ DK3_FONT_ROMAN,
+ DK3_FONT_ROMAN,
+ 400
+ },
+ { /* 1 */
+ "Times-Italic",
+ "ptmri",
+ "ptm",
+ "NimbusRomNo9L-ReguItal",
+ "n021023l",
+ "NimbusRomNo9L-ReguItal",
+ "Times",
+ "Nimbus Roman No9 L",
+ "NimbusRomNo9L-ReguItal",
+ dk3font_times_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ 400
+ },
+ { /* 2 */
+ "Times-Bold",
+ "ptmb",
+ "ptm",
+ "NimbusRomNo9L-Medi",
+ "n021004l",
+ "NimbusRomNo9L-Medi",
+ "Times",
+ "Nimbus Roman No9 L",
+ "NimbusRomNo9L-Medi",
+ dk3font_times_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_BOLD),
+ DK3_FONT_ROMAN,
+ 500
+ },
+ { /* 3 */
+ "Times-BoldItalic",
+ "ptmbi",
+ "ptm",
+ "NimbusRomNo9L-MediItal",
+ "n021024l",
+ "NimbusRomNo9L-MediItal",
+ "Times",
+ "Nimbus Roman No9 L",
+ "NimbusRomNo9L-MediItal",
+ dk3font_times_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC | DK3_FONT_BOLD),
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ 500
+ },
+ { /* 4 */
+ "AvantGarde-Book",
+ "pagk",
+ "pag",
+ "URWGothicL-Book",
+ "a010013l",
+ "URWGothicL-Book",
+ "AvantGarde",
+ "URW Gothic L",
+ "URWGothicL-Book",
+ dk3font_avantgarde_family_names,
+ DK3_FONT_SANS_SERIF,
+ DK3_FONT_SANS_SERIF,
+ 400
+ },
+ { /* 5 */
+ "AvantGarde-BookOblique",
+ "pagko",
+ "pag",
+ "URWGothicL-BookObli",
+ "a010033l",
+ "URWGothicL-BookObli",
+ "AvantGarde",
+ "URW Gothic L",
+ "URWGothicL-BookObli",
+ dk3font_avantgarde_family_names,
+ (DK3_FONT_SANS_SERIF | DK3_FONT_ITALIC),
+ (DK3_FONT_SANS_SERIF | DK3_FONT_OBLIQUE),
+ 400
+ },
+ { /* 6 */
+ "AvantGarde-Demi",
+ "pagd",
+ "pag",
+ "URWGothicL-Demi",
+ "a010015l",
+ "URWGothicL-Demi",
+ "AvantGarde",
+ "URW Gothic L",
+ "URWGothicL-Demi",
+ dk3font_avantgarde_family_names,
+ (DK3_FONT_SANS_SERIF | DK3_FONT_BOLD),
+ DK3_FONT_SANS_SERIF,
+ 600
+ },
+ { /* 7 */
+ "AvantGarde-DemiOblique",
+ "pagdo",
+ "pag",
+ "URWGothicL-DemiObli",
+ "a010035l",
+ "URWGothicL-DemiObli",
+ "AvantGarde",
+ "URW Gothic L",
+ "URWGothicL-DemiObli",
+ dk3font_avantgarde_family_names,
+ (DK3_FONT_SANS_SERIF | DK3_FONT_ITALIC | DK3_FONT_BOLD),
+ (DK3_FONT_SANS_SERIF | DK3_FONT_OBLIQUE | DK3_FONT_BOLD),
+ 600
+ },
+ { /* 8 */
+ "Bookman-Light",
+ "pbkl",
+ "pbk",
+ "URWBookmanL-Ligh",
+ "b018012l",
+ "URWBookmanL-Ligh",
+ "Bookman",
+ "URW Bookman L",
+ "URWBookmanL-Ligh",
+ dk3font_bookman_light_family_names,
+ DK3_FONT_ROMAN,
+ DK3_FONT_ROMAN,
+ 400
+ },
+ { /* 9 */
+ "Bookman-LightItalic",
+ "pbkli",
+ "pbk",
+ "URWBookmanL-LighItal",
+ "b018032l",
+ "URWBookmanL-LighItal",
+ "Bookman",
+ "URW Bookman L",
+ "URWBookmanL-LighItal",
+ dk3font_bookman_light_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ 400
+ },
+ { /* 10 */
+ "Bookman-Demi",
+ "pbkd",
+ "pbk",
+ "URWBookmanL-DemiBold", /* 2.2.22: URWBookmanL-Demi */
+ "b018015l",
+ "URWBookmanL-DemiBold",
+ "Bookman",
+ "URW Bookman L",
+ "URWBookmanL-DemiBold",
+ dk3font_bookman_light_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_BOLD),
+ DK3_FONT_ROMAN,
+ 600
+ },
+ { /* 11 */
+ "Bookman-DemiItalic",
+ "pbkdi",
+ "pbk",
+ "URWBookmanL-DemiBoldItal", /* 2.2.22: URWBookmanL-DemiItal */
+ "b018035l",
+ "URWBookmanL-DemiBoldItal",
+ "Bookman",
+ "URW Bookman L",
+ "URWBookmanL-DemiBoldItal",
+ dk3font_bookman_light_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC | DK3_FONT_BOLD),
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ 600
+ },
+ { /* 12 */
+ "Courier",
+ "pcrr",
+ "pcr",
+ "NimbusMonL-Regu",
+ "n022003l",
+ "NimbusMonL-Regu",
+ "Courier",
+ "Nimbus Mono L",
+ "NimbusMonL-Regu",
+ dk3font_courier_family_names,
+ DK3_FONT_TYPEWRITER,
+ DK3_FONT_TYPEWRITER,
+ 400
+ },
+ { /* 13 */
+ "Courier-Oblique",
+ "pcrro",
+ "pcr",
+ "NimbusMonL-ReguObli",
+ "n022023l",
+ "NimbusMonL-ReguObli",
+ "Courier",
+ "Nimbus Mono L",
+ "NimbusMonL-ReguObli",
+ dk3font_courier_family_names,
+ (DK3_FONT_TYPEWRITER | DK3_FONT_ITALIC),
+ (DK3_FONT_TYPEWRITER | DK3_FONT_OBLIQUE),
+ 400
+ },
+ { /* 14 */
+ "Courier-Bold",
+ "pcrb",
+ "pcr",
+ "NimbusMonL-Bold",
+ "n022004l",
+ "NimbusMonL-Bold",
+ "Courier",
+ "Nimbus Mono L",
+ "NimbusMonL-Bold",
+ dk3font_courier_family_names,
+ (DK3_FONT_TYPEWRITER | DK3_FONT_BOLD),
+ DK3_FONT_TYPEWRITER,
+ 700
+ },
+ { /* 15 */
+ "Courier-BoldOblique",
+ "pcrbo",
+ "pcr",
+ "NimbusMonL-BoldObli",
+ "n022024l",
+ "NimbusMonL-BoldObli",
+ "Courier",
+ "Nimbus Mono L",
+ "NimbusMonL-BoldObli",
+ dk3font_courier_family_names,
+ (DK3_FONT_TYPEWRITER | DK3_FONT_ITALIC | DK3_FONT_BOLD),
+ (DK3_FONT_TYPEWRITER | DK3_FONT_OBLIQUE),
+ 700
+ },
+ { /* 16 */
+ "Helvetica",
+ "phvr",
+ "phv",
+ "NimbusSanL-Regu",
+ "n019003l",
+ "NimbusSanL-Regu",
+ "Helvetica",
+ "Nimbus Sans L",
+ "NimbusSansL-Regu",
+ dk3font_helvetica_family_names,
+ DK3_FONT_SANS_SERIF,
+ DK3_FONT_SANS_SERIF,
+ 400
+ },
+ { /* 17 */
+ "Helvetica-Oblique",
+ "phvro",
+ "phv",
+ "NimbusSanL-ReguItal",
+ "n019023l",
+ "NimbusSanL-ReguItal",
+ "Helvetica",
+ "Nimbus Sans L",
+ "NimbusSanL-ReguItal",
+ dk3font_helvetica_family_names,
+ (DK3_FONT_SANS_SERIF | DK3_FONT_OBLIQUE),
+ (DK3_FONT_SANS_SERIF | DK3_FONT_ITALIC),
+ 400
+ },
+ { /* 18 */
+ "Helvetica-Bold",
+ "phvb",
+ "phv",
+ "NimbusSanL-Bold",
+ "n019004l",
+ "NimbusSanL-Bold",
+ "Helvetica",
+ "Nimbus Sans L",
+ "NimbusSanL-Bold",
+ dk3font_helvetica_family_names,
+ (DK3_FONT_SANS_SERIF | DK3_FONT_BOLD),
+ DK3_FONT_SANS_SERIF,
+ 700
+ },
+ { /* 19 */
+ "Helvetica-BoldOblique",
+ "phvbo",
+ "phv",
+ "NimbusSanL-BoldItal",
+ "n019024l",
+ "NimbusSanL-BoldItal",
+ "Helvetica",
+ "Nimbus Sans L",
+ "NimbusSanL-BoldItal",
+ dk3font_helvetica_family_names,
+ (DK3_FONT_SANS_SERIF | DK3_FONT_OBLIQUE | DK3_FONT_BOLD),
+ (DK3_FONT_SANS_SERIF | DK3_FONT_ITALIC),
+ 700
+ },
+ { /* 20 */
+ "Helvetica-Narrow",
+ "phvrrn",
+ "phv",
+ "NimbusSanL-ReguCond",
+ "n019043l",
+ "NimbusSanL-ReguCond",
+ "Helvetica Narrow",
+ "Nimbus Sans L",
+ "NimbusSanL-ReguCond",
+ dk3font_helvetica_narrow_family_names,
+ DK3_FONT_SANS_SERIF,
+ DK3_FONT_SANS_SERIF,
+ 400
+ },
+ { /* 21 */
+ "Helvetica-Narrow-Oblique",
+ "phvron",
+ "phv",
+ "NimbusSanL-ReguCondItal",
+ "n019063l",
+ "NimbusSanL-ReguCondItal",
+ "Helvetica Narrow",
+ "Nimbus Sans L",
+ "NimbusSanL-ReguCondItal",
+ dk3font_helvetica_narrow_family_names,
+ (DK3_FONT_SANS_SERIF | DK3_FONT_OBLIQUE),
+ (DK3_FONT_SANS_SERIF | DK3_FONT_ITALIC),
+ 400
+ },
+ { /* 22 */
+ "Helvetica-Narrow-Bold",
+ "phvbrn",
+ "phv",
+ "NimbusSanL-BoldCond",
+ "n019044l",
+ "NimbusSanL-BoldCond",
+ "Helvetica Narrow",
+ "Nimbus Sans L",
+ "NimbusSanL-BoldCond",
+ dk3font_helvetica_narrow_family_names,
+ (DK3_FONT_SANS_SERIF | DK3_FONT_BOLD),
+ DK3_FONT_SANS_SERIF,
+ 700
+ },
+ { /* 23 */
+ "Helvetica-Narrow-BoldOblique",
+ "phvbon",
+ "phv",
+ "NimbusSanL-BoldCondItal",
+ "n019064l",
+ "NimbusSanL-BoldCondItal",
+ "Helvetica Narrow",
+ "Nimbus Sans L",
+ "NimbusSanL-BoldCondItal",
+ dk3font_helvetica_narrow_family_names,
+ (DK3_FONT_SANS_SERIF | DK3_FONT_OBLIQUE | DK3_FONT_BOLD),
+ (DK3_FONT_SANS_SERIF | DK3_FONT_ITALIC),
+ 700
+ },
+ { /* 24 */
+ "NewCenturySchlbk-Roman",
+ "pncr",
+ "pnc",
+ "CenturySchL-Roma",
+ "c059013l",
+ "CenturySchL-Roma",
+ "New Century Schoolbook",
+ "Century Schoolbook L",
+ "CenturySchL-Roma",
+ dk3font_ncschoolbook_family_names,
+ DK3_FONT_ROMAN,
+ DK3_FONT_ROMAN,
+ 400
+ },
+ { /* 25 */
+ "NewCenturySchlbk-Italic",
+ "pncri",
+ "pnc",
+ "CenturySchL-RomaItal",
+ "c059033l",
+ "CenturySchL-Ital",
+ "New Century Schoolbook",
+ "Century Schoolbook L",
+ "CenturySchL-Ital",
+ dk3font_ncschoolbook_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ 400
+ },
+ { /* 26 */
+ "NewCenturySchlbk-Bold",
+ "pncb",
+ "pnc",
+ "CenturySchL-Bold",
+ "c059016l",
+ "CenturySchL-Bold",
+ "New Century Schoolbook",
+ "Century Schoolbook L",
+ "CenturySchL-Bold",
+ dk3font_ncschoolbook_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_BOLD),
+ DK3_FONT_ROMAN,
+ 700
+ },
+ { /* 27 */
+ "NewCenturySchlbk-BoldItalic",
+ "pncbi",
+ "pnc",
+ "CenturySchL-BoldItal",
+ "c059036l",
+ "CenturySchL-BoldItal",
+ "New Century Schoolbook",
+ "Century Schoolbook L",
+ "CenturySchL-BoldItal",
+ dk3font_ncschoolbook_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC | DK3_FONT_BOLD),
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ 700
+ },
+ { /* 28 */
+ "Palatino-Roman",
+ "pplr",
+ "ppl",
+ "URWPalladioL-Roma",
+ "p052003l",
+ "URWPalladioL-Roma",
+ "Palatino",
+ "URW Palladio L",
+ "URWPalladioL-Roma",
+ dk3font_palatino_family_names,
+ DK3_FONT_ROMAN,
+ DK3_FONT_ROMAN,
+ 400
+ },
+ { /* 29 */
+ "Palatino-Italic",
+ "pplri",
+ "ppl",
+ "URWPalladioL-Ital",
+ "p052023l",
+ "URWPalladioL-Ital",
+ "Palatino",
+ "URW Palladio L",
+ "URWPalladioL-Ital",
+ dk3font_palatino_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ 400
+ },
+ { /* 30 */
+ "Palatino-Bold",
+ "pplb",
+ "ppl",
+ "URWPalladioL-Bold",
+ "p052004l",
+ "URWPalladioL-Bold",
+ "Palatino",
+ "URW Palladio L",
+ "URWPalladioL-Bold",
+ dk3font_palatino_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_BOLD),
+ DK3_FONT_ROMAN,
+ 700
+ },
+ { /* 31 */
+ "Palatino-BoldItalic",
+ "pplbi",
+ "ppl",
+ "URWPalladioL-BoldItal",
+ "p052024l",
+ "URWPalladioL-BoldItal",
+ "Palatino",
+ "URW Palladio L",
+ "URWPalladioL-BoldItal",
+ dk3font_palatino_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC | DK3_FONT_BOLD),
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ 700
+ },
+ { /* 32 */
+ "Symbol",
+ "psyr",
+ "psy",
+ "StandardSymL",
+ "s050000l",
+ "StandardSymL",
+ "Symbol",
+ "Standard Symbols L",
+ "StandardSymL",
+ dk3font_symbol_family_names,
+ 0,
+ 0,
+ 400
+ },
+ { /* 33 */
+ "ZapfChancery-MediumItalic",
+ "pzcmi",
+ "pzc",
+ "URWChanceryL-MediItal",
+ "z003034l",
+ "URWChanceryL-MediItal",
+ "Zapf Chancery",
+ "URW Chancery L",
+ "URWChanceryL-MediItal",
+ dk3font_zapfchancery_family_names,
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ (DK3_FONT_ROMAN | DK3_FONT_ITALIC),
+ 500
+ },
+ { /* 34 */
+ "ZapfDingbats",
+ "pzdr",
+ "pzd",
+ "Dingbats",
+ "d050000l",
+ "Dingbats",
+ "DingBats",
+ "Dingbats",
+ "Dingbats",
+ dk3font_zapfdingbats_family_names,
+ 0,
+ 0,
+ 400
+ }
+};
+
+
+
+/** Preference names to search for GhostScript font files.
+*/
+static dkChar const * const dk3font_base_pref_names[] = {
+dkT("/fonts/ghostscript/web"),
+dkT("/fonts/ghostscript/local"),
+NULL
+};
+
+
+
+char const *
+dk3font_get_ps_font_name(int fontno)
+{
+ char const *back = NULL;
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].psFontName;
+ }
+ return back;
+}
+
+
+
+char const *
+dk3font_get_gs_font_name(int fontno)
+{
+ char const *back = NULL;
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].gsFontName;
+ }
+ return back;
+}
+
+
+
+char const *
+dk3font_get_tex_font_name(int fontno)
+{
+ char const *back = NULL;
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].texFontName;
+ }
+ return back;
+}
+
+
+
+char const *
+dk3font_get_tex_family_name(int fontno)
+{
+ char const *back = NULL;
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].texFamilyName;
+ }
+ return back;
+}
+
+
+
+char const *
+dk3font_get_gs_old_file(int fontno)
+{
+ char const *back = NULL;
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].gsFileOld;
+ }
+ return back;
+}
+
+
+
+char const *
+dk3font_get_gs_new_file(int fontno)
+{
+ char const *back = NULL;
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].gsFileNew;
+ }
+ return back;
+}
+
+
+
+int
+dk3font_get_features(int fontno)
+{
+ int back = 0;
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].features;
+ }
+ return back;
+}
+
+
+int
+dk3font_get_svg_features(int fontno)
+{
+ int back = 0;
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].svgFeatures;
+ }
+ return back;
+}
+
+
+
+char const *
+dk3font_get_ps_family(int fontno)
+{
+ char const *back = NULL;
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].psFamilyName;
+ }
+ return back;
+}
+
+
+
+char const *
+dk3font_get_svg_family(int fontno)
+{
+ char const *back = NULL;
+ $? "+ dk3font_get_svg_family"
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].svgFamilyName;
+ } $? "- dk3font_get_svg_family %!8s", TR_8STR(back)
+ return back;
+}
+
+
+
+char const *
+dk3font_get_svg_fontid(int fontno)
+{
+ char const *back = NULL;
+ $? "+ dk3font_get_svg_fontid"
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].svgFontId;
+ } $? "- dk3font_get_svg_fontid %!8s", TR_8STR(back)
+ return back;
+}
+
+
+
+int
+dk3font_get_svg_font_weight(int fontno)
+{
+ int back = 0;
+ if((fontno >= 0) && (fontno < 35)) {
+ back = dk3font_data[fontno].svgFontWeight;
+ }
+ return back;
+}
+
+
+
+int
+dk3font_gs_base_web(dk3_app_t *app, dkChar *buf, size_t bs)
+{
+ int back;
+ back = dk3app_get_dir_from_pref(app, dk3font_base_pref_names[0], buf, bs, 0);
+ return back;
+}
+
+
+
+int
+dk3font_gs_base_local(dk3_app_t *app, dkChar *buf, size_t bs)
+{
+ int back;
+ back = dk3app_get_dir_from_pref(app, dk3font_base_pref_names[1], buf, bs, 1);
+ return back;
+}
+
+
+
+char const * const *
+dk3font_get_replacement_families(int fontno)
+{
+ char const * const *back = NULL;
+ if((0 <= fontno) && (fontno < 35)) {
+ back = dk3font_data[fontno].replacements;
+ }
+ return back;
+}
+
+