Administration Manual for
GlyphGate 5.0

Content

  1. Introduction
  2. Configuration files
    1. glyphgate.cfg
    2. Fonts.cfg
    3. User_agents.cfg
    4. Encodings.cfg
  3. Setting up Fonts
    1. General section
    2. Font smoothing section
    3. Aliases section
    4. Core fonts section
    5. Fallback fonts section
    6. Skip fonts section
    7. ScreenType fonts section
    8. Font Sizes
    9. Small text section
    10. Adjust size section
  4. E-Commerce configurations
  5. General configurations
    1. Caching files
    2. Mirror sites
    3. Restricting GlyphGate to certain folders
    4. Default processing mode
    5. Validator settings
    6. Optimizing performance
    7. Multilingual text input
  6. Web Server Connectors
    1. Apache 1.3/2.0
    2. IIS
    3. iPlanet
  7. FontEnabler plugin
    1. Downloading
    2. Installing
    3. Uninstalling
  8. Trouble shooting

Copyright 2001-2005 Em2 Solutions AB. All rights reserved.

Introduction

GlyphGate is a font savvy web server that makes it possible to show text, fonts and languages reliably in browsers on most platforms. The server is installed as an extension to Microsoft IIS, Apache Web Server, and NSAPI based web servers (e.g. iPlanet) and is available on quite a few platforms.

This documentation explains how to configure your GlyphGate Web Server for best performance, how to install fonts for use by GlyphGate and also contains an extensive trouble shooting section with answers to commonly encountered problems.

Some of the features described in this manual are not available in all editions.

Administration site

Most of the settings described in this document can be controlled from the GlyphGate admin site. Please refer to the Admin Site Manual for more details.

Configuration files

GlyphGate is controlled by four different configuration files. These files are:

glyphgate.cfg. This is the main configuration file. It resides in the /config directory. This file contains settings for cache behavior and different file paths, among them the paths to the other configuration files.

Fonts.cfg. This file contains information about the fonts that are available to GlyphGate. Such information includes whether fonts should be rendered smooth or sharp, name aliases to use and a list of fallback fonts to use to support languages.

User_agents.cfg. This file contains information about different browsers and their capabilities. We suggest that you leave this file untouched. New versions of this file will be available through Em2 Solutions when they become available.

Encodings.cfg. This file defines language groups supported by GlyphGate. Advanced users supporting complex language groups may want to update this file with the correct settings for these languages. Please contact us for instructions on how to do this.

The configuration files are plain text files that may be edited with any suitable text editor. Each file contains comments that explains the purpose of each setting in the file.

Setting up Fonts

Before using a GlyphGate web server, you need to install a suitable set of fonts to use in your web pages. You do this by copying the appropriate font files to a dedicated GlyphGate fonts directory. This is the directory pointed to by the FontPath setting in fonts.cfg. The fonts put in this directory are available to GlyphGate only.

System installed fonts are supported as well.

Once the fonts are installed, there are a number of settings that you can alter to affect how the fonts are used by GlyphGate. These settings are found in the fonts.cfg configuration file (see below for a description of the settings in this file).

Please note that you have to restart your web server and empty the GlyphGate server page caches after installing or changing any of the fonts settings, to ensure that the new fonts are used by all (including already processed) web pages on the server. You empty the caches by removing all directories under the "/cache" directory (typically c:\program files\em2-solutions\GlyphGate\cache or /usr/local/glyphgate/cache).

General The first section in the font configuration file is named [General]. It contains a few settings, including FontPath. This setting is used to specify where the used font files are stored. The FontLanguage setting is used to specify the font name language for fonts with names translated into several languages. For example, a Japanese font may be called Ryumin or リュウミン depending on if this setting is set to 1032 (US English) or 1041 (Japanese). The numbers to use here are so called LCIDs, for example these numbers. All fonts do not contain localized names. For a list of the names that are recognized by GlyphGate, have a look at the GlyphGate fonts folder at http://localhost/gg-fonts/.

Font smoothing The Smooth fonts section in the fonts.cfg file defines how text set in specific fonts and specific styles should be rendered w.r.t. font antialising and hinting. Each entry in this section consists of the name of a font and a value which in turn consists of a style name and two numeric values. The first number is the pixel threshold size below which fonts should be rendered smooth but not hinted. This is typically below the size where text is expected to be legible (we are talking *really* tiny text). Above this size, but below the second number, the font should be hinted but not smooth, thus allowing for maximum contrast and legibility. Above the second size, the font will be rendered both hinted and smooth.

For example, the value "Georgia=Italic,6,7" would tell GlyphGate that text set in the Italic style variation of the font Georgia should be smooth at 0px-5px, hinted at 6px-6px, and both smooth and hinted above 6px.

The font name, and the threshold size may both be specified with an '*'. If it is used instead of a font name, then that entry will be used for all fonts that are not listed in this section. For example, "*=Italic,6,7" would define the smoothing behavior for all italic fonts. An '*' is used instead of a font threshold size to indicate that the corresponding value from the font should be used instead. For example, "Georgia=Regular,*,*" would allow for the default smoothing behavior, as defined by the typographer that designed the font, to be used.

The order of these entries are significant, where later entries override earlier entries in this list.

Aliases You may at times want to use aliases for font name, such as 'serif' instead of 'Times New Roman'. In the [Aliases] section you list the names under which a font may be accessed in a page. The actual font name should be placed to the left and all the alternate names should follow that name. The aliases will also be used in cases where a font will not be embedded for a browser, and provides a good way for the browser to pick a suitable substitute in case the preferred font is not available.

Core fonts Some fonts, such as Arial and Times New Roman, are available on many platforms. These are fonts that you may not want to embed in web pages, since most users will have them anyway. There are other cases where you want to prevent certain fonts from being embedded as well. Simply add them to this list.

Fallback fonts GlyphGate knows if a particular font can be used to render text of some specific language. If GlyphGate detects that a used font is not suitable for some text in a page (or if a font is not specified at all), then it will go through the list of fallback fonts and use the first font in this list that supports the particular language.

For example, if Devanagari (Indic) characters are used in a page without any specification of which font to use, then GlyphGate would embed the font Mangal with that page (assuming that Mangal is included in the fallback list).

Skip fonts Skip fonts work much like Core fonts, except they are never used as web fonts, even if they are listed as fallback fonts. These are fonts that are available on all platforms, regardless of used language.

ScreenType fonts The ScreenType section in the fonts configuration file is used to list all fonts that should be rendered with ScreenType turned on. This list may optionally contain the name '*' to enable ScreenType support for all fonts (see User Manual for further details on ScreenType).

Font Sizes Legacy browsers, such as Opera 5 and Netscape 4.7, have problems with font sizes. For example, they would show a 10.5pt font when they should show a 10pt font. GlyphGate will compensate for such errors to ensure that a size which is as close to the desired font as possible is used.

The "round-font-size" setting in glyphgate.cfg is used to ensure that the exact same size is used in *all* browsers. For example, if 10pt is specified, then GlyphGate would use 10.5pt in *ALL* browsers if this setting is set to true. The adjusted size would only be used in legacy browsers if this setting is false.

Small text This section controls if text of a given (small) size should be rendered with fonts (either images or web fonts). The assumption is that most fonts are not able to show text correctly below a given size. We let the browser show such text with suitable (bitmap?) system fonts. The Small text setting is not used for text where the CSS font-family property is defined as"!important" (see CSS spec).

Font size adjust The Adjust Size section in the fonts configuration file is used to minimize the relative difference in size of different fonts rendered at a given point size. The values listed here correspond to the CSS2 property "font-size-adjust" (see the CSS2 specification for more information).

E-Commerce configurations

(This section is only applicable to E-Commerce editions of GlyphGate)

To set which script types will be processed by GlyphGate you will need to edit your main GlyphGate configuration file. In the [config] section of this file, you can list which extensions that will be piped through GlyphGate by adding/modifying the line:

Scripts = <comma-separated-list of file name extensions to process>

If you want to enable GlyphGate for asp and perl scripts (files that ends with ".pl"), you would thus write:

Scripts = asp,pl

If you want to disable script processing completely, just leave the value after '=' blank (don't remove the whole line, as this will instead cause the default extensions to be used).

To specify that files without a file name extension should be processed (e.g. compiled CGI applications) you may use the specal file name extension "cgi".

General configurations

There are a number of general configurations that may be changed to affect how GlyphGate behaves. These settings are all documented in the configuration file itself (glyphgate.cfg). You would typically not need to change these settings. However, below is a short description of the settings that you may want to tweak.

It is recommended that you empty the GlyphGate server page caches after changing any of these settings, to ensure that your settings are used when processing (including already processed) web pages on the server. You do this by removing all subdirectories from the "cache" directory found where GlyphGate is installed (typically c:\program files\em2-solutions\GlyphGate\ or /usr/local/glyphgate).

Caching files

GlyphGate typically serves cached files to the web browsers, to achieve high performance. The location of the site cache (containing processed documents in a per-site cache tree) is specified by the site-cache setting, while the location of the font data cache is specified by the font-cache setting.

If you reset the clock on the web server, then this cache may become out of sync with the original web pages on your server. To rectify this problem, you will have to manually empty the site cache and the font data cache (by simply removing all files and directories in these directories). Make sure that you have turned off your web server first though, and always flush these directories together.

You may also turn off the caching behavior by setting the server-cache setting to false. This will have a negative impact on the performance of your web server.

Cache quotas

GlyphGate supports the notion of quotas for the cache directories. You can specify a maximum cache size for the font data cache using the "font-cache-quota" setting, and a maximum site cache size using the "default-site-cache-quota" setting and the "[site-quota]" section. Please see the comments in "GlyphGate.cfg" for more information.

Mirror sites

If your site is accessed under an alias name, then you need to list these names in the [Mirror sites] section of glyphgate.cfg. The fonts installed on your site are bound to these names, thus preventing third parties from using font data created by this server.

When using GlyphGate on very large installation, it may prove cumbersome to update the mirror-sites setting with the URL of all the hosted sites. By setting the dynamic-hosts setting to true, GlyphGate will dynamically update this setting on demand. There are two caveats to consider; 1) there is a performance penalty as each web font that is server to a web site that is not included in the mirror-sites setting needs to be adjusted to include the used host name. 2) The mirror-sites setting in this file is never updated. Only the current value that is used by GlyphGate internally is updated.

Restricting GlyphGate to certain folders

If you do not want GlyphGate to process all pages on your site, you can restrict in which folders GlyphGate will process pages by editing the [folders] section of your glyphgate.cfg file.

Default processing mode

GlyphGate supports a few different processing modes for web pages (see the User Manual). By setting process-pages in glyphgate.cfg you can specify the default processing mode for all pages on the server.

Validator settings

GlyphGate contains a built-in HTML and CSS validator that will check that pages processed by GlyphGate are syntactically correct. If the validator finds errors or warnings in a page, then depending on the show-errors setting in glyphgate.cfg and the address from where the page is viewed, GlyphGate will insert a large yellow banner into the page. This is to visually indicate that the page has been found to contain issues that need to be addressed. The page will also be logged, so that the errors and warnings can later be examined using the validator report page (see the Admin Site Manual).

You can restrict the directories for which the validator is enabled by editing the [ReportErrorsFor] section of your glyphgate.cfg file. Please refer to the comments in this file for more information.

Progress message

Sometimes, when the GlyphGate server is processing a large web page for the first time, the user will temporarily be redirected to a page showing a "progress message" that the server is working. This progress page is actually a template that can be changed. Its location is determined by the progress setting in the main config file.

The template file is a normal HTML page with the following exceptions:

1. It should contain "placeholders" for four parameters: %d, %s, %s and %s (in that order). When the template is used, %d will be replaced by the refresh timeout and %s by the URL to the original page that is being processed. Have a look at the included "progress.tpl" file for an example.

2. All other "%"-characters should be quoted with another "%"-character (% -> %%).

Optimizing performance

Legacy and basic browsers that do not support font embedding are fed formatted text as graphics. This will at times cause pages to grow so large that users may not be able to download them. A threshold size is used to limit this behavior as follows. Only text above a threshold size, or text of a language that can not otherwise be rendered by the browser, is transmitted as graphics.

The default setting for this threshold is 10.8pt. This will result in that the main text on pages will be left unprocessed by GlyphGate, while larger headlines (and other text that defines the look of a page) are transmitted as graphics. You may change this size to better suit your particular pages. The size may be specified with any absolute font CSS unit (pt, px, mm, cm etc).

Another thing you can do is optimize the output for specific languages. For example, a Japanese user may support text encoding schemes like SHIFT-JIS. Creating a page with this encoding results in a smaller page than using a more general encoding scheme like UTF-8 or using html literals. You may thus specify that GlyphGate should create pages that are optimized for specific languages, by including their ISO language code in used-languages setting.

An effective way of minimizing the amount of data that has to be sent to browsers is to use site fonts. An alternative to using site fonts is to use screen only fonts (see the User Manual).

Multilingual text input

When using font input fields GlyphGate has support for inputting text in a language not supported by the keyboard currently being used. This feature is referred to as SWIME (Simple Web Input Method Editor). See the User Manual for more information on how to use this.

SWIME uses a configuration file specified with the input-methods setting under the [file-paths] section of glyphgate.cfg. This is an XML file containing a set of "method" elements, one for each input method supported. The elements have the following structure:

<method name="jp">
	<version>1.0</version>
	<fullname>Japanese (Hiragana/Katakana)</fullname>
	<data>japanese.ime</data>
	<match>(x[0-9A-F]+)+:@([^:])*:</match>
	<case>sensitive</case>
</method>
name     - Short name of the input method. Used in the clint side GUI.
version  - The version of this input method.
fullname - Full name of the input method.
data     - Path to the data file, defining this input method.
match    - A regular expression that specifies the format of the data file (see below).
case     - Whether or not input is case sensitive. Set to "sensitive" or "insensitive".

The data file consists of a number of lines, each describing a set of one or more output code points and a list of one or more key press patterns that will generate the output code points. Consider the following example:

...
x3044:yi:
x3044x3047:ye:
x3045:lu:
x4E00:ichi:itsu:
...

This data states that a "y" followed by an "i" will be converted into Unicode code point 0x3044. A "y" followed by an "e" will be converted to the two code points 0x3044 and 0x3047. To get code point 0x4e00 one can write both "ichi" and "itsu".

It is possible to use a different format for the data (in fact, some of the methods supplied with GlyphGate do). One can accomplish this by changing the "match" parameter of the method definition. The important thing is that:

1. The lines begin with "<code-points>:".
2. The "match" parameter will match the "@" expression to the different key patterns that can generate the output code points.

Web Server Connectors

GlyphGate refines web content by extending the functionality of one or more web servers. The interaction between GlyphGate and a Web server is handled by a "Web Server Connection". GlyphGate provides such a connector for most popular web servers, including iPlanet, Apache and IIS.

These connectors are typically configured automatically by themselves through the GlyphGate administration web site. However, there are cases when the configuration is not possible, or when a non-standard configuration is desirable. The sectionons below describe how to configure each connector that is included with GlyphGate. Please see external documentation for information on how to configure connectors that are devloped by third parties. Also, please contact Em2 Solutions for information on how to license the "GlyphGate Web server connector SDK".

The GlyphGate web server connectors are installed in the "bin" directory where the other core components of GlyphGate is installed, and are typically called "wsc_*.so" or "wsc_*.dll".

The instructions below does not provide enough details for you to complete the configuration if you are not already quite familier with how to configure your web server. These instructions is only intended for novice administrators. Also, these instructions should not be used unless there is a really good reasons for not using the administration site. The administration site provides a much reliably and easier way to configur your web server. Please refer to the trouble shooting section before reading this section if you are not able to configure your web server with the administration site.

Please make sure that you back up your current web server settings before configuring your server to use GlyphGate, and that you restart your server once the settings have been applied.

Please note that the examples that are provided below assume that GlyphGate have been installed at "/usr/local/glyphgate". This may be "c:/program files/em2 solutions/glyphgate/" or whereever you chose to install GlyphGate.

Apache 1.3/2.0

Although two different connectors are used for Apache 1.3 and Apache 2.0, they are both configured in the same way. The configuration consist of directives that are entered into the main Apache configuration file (typically called "httpd.conf").

  1. Add the following code to the end of the the Apache configuration file to use GlyphGate:
        LoadModule glyphgate_module "/usr/local/glyphgate/bin/GG_wsc_ap13.so"
        GlyphGateCfg "/usr/local/glyphgate/bin/glyphgate.cfg"
    

    The first statement loads the connector, while the second statement instructs GlyphGate where the main GlyphGate configuration file is located. Please note that forward slashes should be used even on Windows, where backward slashes are otherwise typically used in file paths.

  2. Add the following line for each virtual web site, by adding it immediatelly after each ServerName directive:
        Include "c:/program files/em2 solutions/glyphgate/bin/glyphgate_mod.conf"
    

    The glyphgate_mod.conf file contains directives to define virtual directories that are used by GlyphGate, as well as enable the CGI file extension for web font data. This is done by defining the content type "application/x-fairy-dust", associating it with ".fd" files, and by setting the handler for this content type to "fairy-dust". This file is created automatically by the Admin Site when you configure an Apache server to use GlyphGate. You may also create this file manually. It should contain the following entries:

    	# This is the apache configuration file for GlyphGate 3.5
    	#
    	# If you modify the contents of this file, it might break
    	# the install/uninstall scripts.
    	#
    
    	   Alias /glyphgate "C:/Program Files/Em2 Solutions/GlyphGate/htdocs"
    	   Alias /gg-fonts/ "C:/Program Files/Em2 Solutions/GlyphGate/fonts/cgi-bin/default.htm"
    	   Alias /gg-fonts "C:/Program Files/Em2 Solutions/GlyphGate/fonts/cgi-bin/default.htm"
    	   AddType application/x-fairy-dust .fd
    	   AddHandler fairy-dust .fd
    

    Note that the "/gg-fonts" and "/gg-fonts/" alias are optional.

IIS

IIS is configured through the "Internet Service Manager" which is found in the administration control panel on Windows. The IIS connector consist of two ISAPI filters, one ISAP extension and virtual directory. They are configured by following these steps:

  1. Add the "em2 POST Encoder" as a ISAPI filter for the entire web server. NOTE: This filter must not be installed on virtual web sites. It must be installed for the whole server. This filter is needed to re-encode POST text that are submitted from web pages to CGI applications. Although the HTML standard defines a mechanism for web page to indicate which text encoding format to use for form text (e.g. Big5 for Chinese text), some browsers do not fully support HTML, such as IE 6. This filter is used to re-endode incorrectly encoded text into the format that a CGI application expect. You may omit configuring this filter if your web server does not submitt non-ascii text.
  2. Add the "Em2 Solutions SGF" to "bin/gg_wsc_iis.dll" for each virtual web site where you want to use GlyphGate. This is the filter that refines web content.
  3. Add the ".fd" ISAPI extension to "bin/gg_wsc_iis.dll". Only GET and POST operation should be permitted for this file type.
  4. Add the virtual folder "/fd" for "htdocs/fd" and give it script execute permission. This is directory is a write protected and is needed for secure web servers where script (such as the .fd files used by GlyphGate) is not permitted in any other folders.
  5. Add the virtual folder "/glyphgate" for "htdocs" and give it read only permission. This is directory contains the FontEnabler plugin and the on-line documentation.

iPlanet

iPlanet may be configured either directly through the configuration files of your web site or through the iPlanet administration site. The instructions below details how to work directly with the configuration files for a specific web site. The configuration is completed by performing the following steps:

  1. At the end in magnus.conf, add these two lines:
        Init fn="load-modules" shlib="/usr/local/glyphgate/bin/GG_wsc_nes.so" \
           funcs="gg_init,gg_handler,gg_translate_handler" shlib_flags="(global|now)"
        Init fn="gg_init" LateInit=yes cfg="/usr/local/glyphgate/bin/glyphgate.cfg"
    
    These lines let iPlanet load GlyphGate and initialize it with the location of it's main configuration file.
  2. At the end in mime.types, add:
        type=application/x-fairy-dust exts=fd
    
    This line will define the data file type that GlyphGate uses for web font files.
  3. At the start of the default object in obj.conf, add:
        NameTrans fn="gg_translate_handler" from "/"
        NameTrans fn="pfx2dir" from="/glyphgate" dir="/usr/iplanet/glyphgate/htdocs" name="es-internal"
        Service method="(GET|POST)" type="application/x-fairy-dust" fn="gg_handler"
    
    These lines lets GlyphGate refine the content of all web pages on the server, as well as produce web fonts for them. The red text above should be change to replect the actual location of your htdocs folder.

FontEnabler plugin

GlyphGate uses a web browser plugin, referred to as the GlyphGate FontEnabler, to support web fonts in a wide range of browsers. These browsers all have a value for the "eot" property set in the user_agents.cfg file.

Downloading the FontEnabler

When surfing to a GlyphGate site for the first time, a user of a browser that is supported through the FontEnabler will be asked to download the FontEnabler installer.

Internet Explorer on Windows. For Internet Explorer on Windows the FontEnabler is implemented as and ActiveX control. Depending on your current security settings it will either be automatically downloaded or you will be presented with a question like:

Pressing "yes" will install the FontEnabler. Pressing "no" will give you the same installation procedure as for the other browsers (see below).

Other browsers. A small window will appear, prompting the user to download the FontEnabler installer.

If the user presses "cancel" at this point, she will be asked if she wants to view pages from this site with styled text shown as graphics or with styled text not formatted at all. Pressing "install" will download the FontEnabler installer to the user's desktop (or where she chose to save it). At the same time the user is prompted to run the FontEnabler installer before continuing browsing the site.

After having run the FontEnabler installer the user should click on the "click here after running the installer"-link. If the FontEnabler was successfully installed the small installation window will disappear and the user can continue to browse the site, with web fonts and all. For some browsers, however, it is required to restart the browser before web fonts will actually work.

Installing the FontEnabler

The FontEnabler installation program behaves a bit differently for the different platforms supported. See below for details.

Windows. On Windows, the FontEnabler is installed separately for each browser, often in a folder called "plugins" or "plug-ins". The plugin will be installed for all users on the machine.

When running the installer the user is first asked if he really wants to install the FontEnabler. From this dialog it is also possible to set the language to use during installation. This is done by clicking on the small button depicting the earth and select the language from the drop-down list that will emerge.

The main installer dialog shows which browsers have been found on the user's system. The user can select for which browsers the FontEnabler will be installed. By clicking on the "Other..." button it is possible to install the plugin to a different location than the ones automatically detected.

"Ok" installs the FontEnabler for the browsers checked, "cancel" aborts the installation.

OS X. On Mac OS X the FontEnabler is installed into the current user's "Library/Internet Plug-Ins" folder. This means that the FontEnabler will be available in all (supporting) browsers, but only for the current user. In fact, two versions of the FontEnabler are installed - one for "Mach-O"-based browsers (like Safari) and one for "CFM"-based browsers (like IE 5). The main installer screen on OS X looks like this:

"Install" installs the FontEnabler, "cancel" aborts the installation.

Mac OS. On Mac OS 9 the FontEnabler is, as on Windows, installed separately for each browser, often in a folder called "plugins" or "plug-ins". The plugin will be installed for all users on the machine.

After having confirmed that he wants to run the installer, the user is presented with the main installer dialog:

The installer will automatically determine which browsers the user has installed on the system. It will display the path to them one at a time in the center of the dialog. The "Search" button is used to cycle through them. "Quit" quits the installer, while "OK" will install the FontEnabler for the currently selected browser. If the user wishes to install the FontEnabler for a browser that was not automatically detected by the installer he may do so by clicking the "Browse..." button.

UNIX. On X11 systems the FontEnabler is installed for all supported browsers (for the current user only). It is saved in the "~/.mozilla/plugins" folder. Before the FontEnabler installer can be run on Linux and Solaris it needs to be unpacked and converted into an executable file. On Linux, it might look like this:

	[user@linux ~]$ gunzip FontEnabler-Linux-i686.bin.gz
	[user@linux ~]$ chmod +x FontEnabler-Linux-i686.bin
	[user@linux ~]$ ./FontEnabler-Linux-i686.bin

This will bring up the simple X11 installer GUI:

As expected, "OK" will install the FontEnabler while "Cancel" will abort the operation.

Uninstalling the FontEnabler

There is no automatic uninstallation of the FontEnabler. However, it is pretty easy to remove the FontEnabler manually. Instructions for the different platforms follow:

Windows (IE). To uninstall the FontEnabler in IE on Windows, one needs to perform the following steps:

1. Start IE and select "Internet Options..." from the "Tools" menu.
2. Click the "Settings" button found under "Temporary Internet files" group.

3. Click the "View Objects..." button.

4. Select the "GlyphGate FontEnabler" and delete it from the list.

Windows (other browsers). For browsers other than IE the user will need to:

1. Open the explorer and locate the browser for which he wishes to remove the FontEnabler (usually something like "c:/Program Files/Netscape 7.1/").
2. Delete the file npxcgf.dll from the Plugins folder of the browser.

OS X. To uninstall the FontEnabler on OS X the user can either:

1. Open a Terminal window and type:

	osx:~ user$ cd ~/Library/Internet\ Plug-Ins/
	osx:~/Library/Internet Plug-Ins user$ rm -r FontEnabler*

2. Use the finder to open the "~/Library/Internet Plug-Ins" folder and delete the two files containing "FontEnabler" in the name.

Mac OS. Open the browser's folder using the finder and delete the file "FontEnabler for GlyphGate" from its "Plugins" or "Plug-ins" folder.

UNIX. Delete the FontEnabler from the "~/.mozilla/plugins" folder.

	[user@linux ~]$ cd ~/.mozilla/plugins/
	[user@linux plugins]$ rm FontEnabler\ for\ GlyphGate.so

Trouble shooting

Problem: I get the error message Failed to stop service when installing GlyphGate.

Cause: Your web server did not stop because a browser is still connected to it or has terminated without closing it's connection to it. Your server is thus hung, and can not be stopped.

Solution: Kill the web server (inetinfo.exe or apache.exe) process with the KILL.EXE dos command (found in the NT Resource kit) or restart your machine and install GlyphGate again once your web server is stopped.

Problem: I get error messages that cab files may be corrupt or infected.

Cause: A virus may have infected the installation files, or your PC may not be able to verify that the files are intact.

Solution: Download the GlyphGate installer again, and ensure that you have at least IE4 installed. NT users may need to have service pack 3 installed as well.

Problem: The software installed ok, but GlyphGate does not process my pages.

Cause: You current user license may not permit you to use GlyphGate in the way that it is being used. The trial version is only functional on the local network. The Single Site edition can only be used on the virtual site that was selected when GlyphGate was installed.

Solution: Please ensure that you follow the user license agreement.

Problem: I have installed GlyphGate, but are not sure if everything works ok or not?

Cause: User is confused?

Solution: A sample page is included with GlyphGate, called http://localhost/glyphgate/test.html. When opening this page, the page should include a paragraph that lists the version number of the web server and GlyphGate itself.

Problem: GlyphGate processes my pages, but my fonts are not shown.

Cause: The server is accessed with an alternate server name?

Solution: GlyphGate prevents font resources from being used by other servers to prevent fonts from being missused. This is done by binding the fonts to the name of your web server. If your server is accessed under an alternate name by users, such as 'www.acme.com' instead of 'server1.acme.com', then you need to include these alternate names in the main GlyphGate configuration file. Please see above for details on how to do this.

Problem: GlyphGate processes my pages, but my fonts are not shown.

Cause: The wrong font name is used?

Solution: Open up the GlyphGate fonts folder at http://localhost/gg-fonts and verify that you are using the right font name. A common misstake here is to use the descriptive face name that is shown in the Windows fonts folder. These names are not font names that can be used in applications.

Problem: Indic and Arabic text does not show correctly in web pages.

Cause: An incorrect version of the system dll usp10.dll is being used.

Solution: Indic and Arabic text is processed by Uniscribe on Windows. Versions prior to 1.407.0.1 contains defects that prevents paragraphs longer than 100 characters to be processed, as well as leaking system resources. Please ensure that you have a current version of Uniscribe. Uniscribe is currently being distributed with the Microsoft Internet Explorer, Microsoft VOLT, and Windows 2000. Please see the VOLT user community at MSN for instructions on how to update this system dll.

Problem: My fonts are not being embedded with pages.

Cause: The used fonts are broken.

Solution: Please note that GlyphGate verifies that fonts that are being used do not contain defects that may cause web browsers to crash. You may use the freely available tool Microsoft WEFT to determine if your font is ok or not.

Problem: My fonts do not display correctly on Windows 98.

Cause: An Indic font was installed on Windows 95, Windows98 or a Windows Me machine. The Windows 9x platform was not designed to deal with Unicode fonts that are not covered by a Windows code page. This includes Indic fonts in particular. Installing such a font on a Win9x machines causes all non-Latin text to incorrectly be rendered with that font, thus resulting in boxes.

Solution: Uninstall the non-functional font.

Problem: My fonts are rendered as graphics and not as text in my web pages.

Cause: The font is either not of the appropriate file format or it's owner does not permit it to be embedded. GlyphGate will render text as graphics in these cases.

Solution: Acquire a version of the font that permits it to be embedded in documents and is of format that can be embedded, such as OpenType fonts.

Problem: Text in my web pages is all jagged and does not look good.

Cause: Font smoothing has not been configured for the used font.

Solution: Font smoothing may be configured on a per font, size and style basis. Please see above for instructions on how to control font smoothing.

Problem: Text in my web pages looks blurred and is not legible.

Cause: Font smoothing has not been configured for the used font.

Solution: Font smoothing may be configured on a per font, size and style basis. Please see above for instructions on how to control font smoothing.

Problem: Text in my web pages looks either blurred or jagged. Neither looks good.

Cause: The used font was not designed to be used at the used font size.

Solution: Most fonts are available under different names from different font vendors. Look for an alternate font that was designed to be used at screen resolution (a.k.a hinted, or hand tuned for screen use).

Problem: Text in my native language does not show up correctly in my web pages.

Cause: A suitable font for the particular language is not available to GlyphGate.

Solution: Acquire a suitable font, and update your font configuration file to use that font for your language. Please see the above for instructions on how to do this.

Problem: I am using a browser which does not seem to be supported by GlyphGate.

Cause: Our browser database may not include the particular browser.

Solution: Please notify us about the browser at support at glyphgate.com

Problem: GlyphGate Administration Site is not able to configure web server to use GlyphGate.

Cause: Insufficient access rights.

Solution: Make sure that the administrator user on the server ("root" on Unix, and "SYSTEM" on Windows) is permitted to make changes to the web server's configuration files. You may temporarily lower the access rights when using the GlyphGate site if you are not able or willing to permanently change the access rights to the configuration files in question. For a list of affected configuration files, please see the "Web Server Connectors" section in this document.

Problem: GlyphGate Administration Site is not able to configure web server to use GlyphGate.

Cause: Unsupported web server configuration.

Solution: If your web server uses a configuration format that is not compatible with GlyphGate, then you may manually configure your web server to use GlyphGate. To do so, please read the "Web Server Connectors" section in this document.

Problem: GlyphGate Administration Site does not list all web servers.

Cause: Misconfiguration.

Solution: The "servers.cfg" and/or "daemons.txt" configuration file may need to be updated in order to recognize non-standard web server installation, and/or installation of web servers that are compatible with support web server APIs, such as ISAPI, Apache 1.3 modules, Apache 2.0 modules or iPlanet NSAPI. Please contact Em2 Solutions for further information. You may also be able to manually configure a web server that is compatible with any of the server APIs mentioned above, by following the instructions found in the "Web Server Connectors" section in this document.

Problem: GlyphGate Administration Site does not list all web servers.

Cause: Unsupported web server.

Solution: Web servers that are not currently supported by GlyphGate may be supported by licensing the "GlyphGate Web Connector SDK" and building a connector for the web server in question. Please contact Em2 Solutions for further information.

Problem: Some pages does not show up correctly in some browser.

Cause: Unknown.

Solution: Please contact us and we will investigate to see if this is caused by a defect in GlyphGate.

Problem: I am experiencing a problem not listed here.

Cause: Unknown.

Solution: Please contact us at support at glyphgate.com and we will investigate.


For further assistance, please contact us at Em2 Solutions. Support for this software is available free of charge through e-mail at support at glyphgate.com .