Sunteți pe pagina 1din 3

03/15/94

Notes on how to use the Type 1 Installer under Win32.


-----------------------------------------------------

INTRODUCTION

The Type 1 Installer exists in many different forms. This text


describes the use of it as a Win32 DLL. The DLL acts as a compiler
that parses an Adobe type 1 font format file and a metrics file (PFB
+ PFM), and then produces a TrueType font file.

The DLL will interact with the event log and the registry, under
certain conditions. The registry is always queried at the start of
the conversion to verify if the copyright holder has agreed to have
their font converted. The event log is used if an error occurs and if
the "Log events" entry in the registry is not zero. The required
entries in the registry is described in "t1instal.ini". Use
regini.exe to load these settings.

USING THE DLL

There are two functions in the interface of the DLL. Use


"t1instal.h" to get the prototypes for these functions, and to get
the definitions of the values they return.

IsType1A
This function determines if a file is a valid Printer Font
Metrics files (pfm), and returns the face name of the font. This
function will only return TRUE if there is a valid PFB file in
the same directory or in the parent directory.

ConvertTypefaceA
This function takes the name of a PFM, a PFB and a TTF file as
parameters, that are used in the conversion.

This function will call a supplied callback function during the


conversion. The caller may thus display messages to the user
about the progress of the conversion. This function is called
with an integer that indicates the rate of the progress
(typically in the range 0-100), and a caller supplied argument.

BUILDING THE DLL

The DLL can be compiled with a number of features turned on or off.


Define or undefine the following symbols when compiling the code to
get the desired result:
name Usage
---- -----
DOT Replaces the period character in the converted
font. Used to tag converted fonts such that
they can be distinguished from the original
fonts.

NOMSGBOX Causes the DLL to use stdio to report errors.

NOCOPYRIGHTS Disables the copyright checking.

SHOWCOPYRIGHT This casues the converter to store the


encrypted copyright strings in the event log,
without converting the font. Put this string
in the appropriate place in the registry to
enable the conversion of fonts from the
fonts vendor of that font.

RELATIVESTEMS Enables a hint conversion features. Must be


turned on.

SYMETRICS_REDUCTION Enables a hint conversion feature. Should not


be turned on.

NOANSIWINMAC Causes glyhs that are not part of the Windows


ANSI and MacIntosh character set to be
filterd out. Turn this on if the OS is not
supporting UNICODE, to get smaller fonts.

By default, only the RELATIVESTEMS should be defined.

SETTING UP THE REGISTRY

Remove the comments from the t1instal.ini file and use regini utility
to place new keys in registry for use.

regini t1instal.ini

----------------------------------------------------------------------
-------------------------------------------------
The message logging mechanism in the Type 1 Installer.

Messages are recorded/displayed based on the severity of an error and based on the
state of the "log events" key in the registry. There are three types of messages:
- Errors : A problem that cased the conversion to abort.
- Warnings : A non-fatal problem that the converter resolved.
- Information : Information that may be useful to trace the execution of the
conversion, such as the name of the font and the vendor.
If an error occurs then a pop-up is presented to the user with the appropriate
message. Note that this will always happened, regardless of the "log events" key.
These strings are defined in the string table in the dll's resource file
(t1instal.rc).

The "log events" key is used for PSS and for debugging . It should not be used by
the users. It should only be turned on when attempting to determine the cause of a
failed conversion. This key causes all messages to be stored such that they are
accessible by the Event Viewer. These strings are defined in the dll's message file
(t1msg.mc). Note that warnings are being displayed in pop-up dialogs, in addition
to errors, when "log events" is non zero.

The motivation for this approach is that PSS may need to be able to remotely
resolve a problem that a customer has when converting a type 1 font. PSS will be
able to do this by instructing the user to turn on the "log events" feature and get
immediate feed-back when an error or a warning pops up a message. A computer that
is connected to a network can be accessed directly through the Event Viewer by the
PSS engineer.

S-ar putea să vă placă și