Fax enable your applications and deliver your forms by fax!
Fax enable your applications and deliver your forms by fax!
HELP!

Faximum Software Technical Support TechNote Library
http://www.faximum.com/technotes/171

Faximum TechNote #171

 

 

TITLE Changing the default font for ASCII attachments
KEYWORDS transmit asciitiff font error ascii default
PRODUCTS All
CATEGORY sending conversion
PROBLEM Customer wishes to change the default font used to render ASCII file attachments.
CAUSE N/A
SOLUTION Which ASCII Conversion Engine Am I Using?

The Faximum software uses one of two versions of the asciitiff conversion utility to convert ASCII files into TIFF (fax) format:

  • a version which uses bitmapped fonts (pkasciitiff)
  • a version which uses the X11 fontserver (fsasciitiff)

The method for specifying the default font depends on the version of asciitiff being used so the first step is to determine which version your system is using.

If you are running Faximum ELS or PLUS Release 2.1 then you are using pkasciitiff.

If you are running Faximum Client/Server (any release) then you are using fsasciitiff.

If you are running Faximum Fax Messaging Server (FMS) Release 2 or Faximum ELS, PLUS, or Mfax Release 2.2 or later then you might be using either pkasciitiff or fsasciitiff.

To determine which version of asciitiff you are running look in /opt/faximum/bin and see if asciitiff is linked to pkasciitiff or fsasciitiff.

Setting the Default Font for fsasciitiff

Selecting an Available Font

To obtain a list of all of the available scalable fonts on your server, sign on to the X display connected to your system and issue the following command:

xlsfonts | grep 0-0-0-0 > /tmp/fonts
If you get an "xlsfonts: not found" error you may have to look for the directory that contains this command (try /usr/bin/X11) and issue the command as follows:
/usr/bin/X11/xlsfonts | grep 0-0- > /tmp/fonts
Select one of the fonts in the /tmp/fonts list.

If your console is running the X11 server but you are connected using a remote terminal, you may be able to get xlsfonts to run remotely by defined the DISPLAY environment variable. For example:

DISPLAY=hostname:0.0
export DISPLAY
Where hostname is the network name for your system.

As an aside if you want to see the various fonts available on your system, run the "xfontsel" utility from your X11 display (see your system's documentation on this command for more details).

For an explanation of X11 Logical Font Descriptors (XLFDs), please see below.

For the default it is recommended that you use a monospace font. Monspace fonts have a -m- in the 11th field. For example:

-bitstream-prestige-medium-r-normal-*-0-0-85-85-m-0-iso8859-1

Configuring the Default fsasciitiff Font

Once you have selected a font, then edit your Faximum configuration file (the same file that you edited to install your serial number and activation key) and add the following two lines:

------------------------------------------------------------------------------
asciitiff-hires-ascii-font = 
  -bitstream-prestige-medium-r-normal-*-*-120-200-200-m-0-iso8859-1
asciitiff-lores-ascii-font = 
  -bitstream-prestige-medium-r-normal-*-*-120-200-200-m-0-iso8859-1
------------------------------------------------------------------------------
(Note that in order to make the above two lines fit on this page they have been broken immediately after the = sign. When you enter them into your configuration file, however, each parameter must be on a single line.
NOTE!  When you add the font names to the configuration file you
must make the following changes to the font specification (as
shown above):
  i)  you must change the 7th field to *
 ii)  you must change the 8th field to the size of the font
      you wish to use (120 = 12 point characters)
iii)  you must change the 9th and 10th fields to 200

Once that has been done, please run the test as shown below to make sure asciitiff now runs properly. If it does not, it may be that the font you have selected is available to your X display but not to the font server. Try a font in another family (i.e. with a different name in the 1st field) until you find a font that works.

To test the default font, perform the following:

cd /tmp
date > junk
/opt/FAXserver/bin/asciitiff -d junk
/opt/FAXserver/bin/asciitiff -l -d junk
	
If the default font is o.k., the you will see something like:
------------------------------------------------------------------------------
fxfsinit: calling FSOpenServer("imagine:7000")
default font is -agfa-courier-normal-r-normal-*-*-120-200-200-m-*-hp-roman8
fxfsnewfont -agfa-courier-normal-r-normal-*-*-120-200-200-m-*-hp-roman8 (ascii)
getfont: FSOpenBitmapFont("-agfa-courier-normal-r-normal-*-*-120-200-200-m-*-hp-
roman8")
fxfsnewfont: font width=21 height=36
junk: [1fxfsglyphblt: c=T x=41 w=3 xpos=21 ascent=19
fxfsglyphblt: c=h x=62 w=3 xpos=42 ascent=21
....(more lines deleted)....
------------------------------------------------------------------------------

If the default font is not available, you will see something like:
------------------------------------------------------------------------------
fxfsinit: calling FSOpenServer("imagine:7000")
default font is -*-badfont-normal-r-normal-*-*-120-200-200-m-*-hp-roman8
fxfsnewfont -*-badfont-normal-r-normal-*-*-120-200-200-m-*-hp-roman8 (ascii)
getfont: FSOpenBitmapFont("-*-badfont-normal-r-normal-*-*-120-200-200-m-*-hp-rom
an8")
FS Error:  BadName, named font does not exist
  Request Major code 15 ()
  Request Minor code 0
  ResourceID 0x4000cc40
  Error Serial #1
  Current Serial #1
------------------------------------------------------------------------------

X11 Logical Font Descriptions (XLFD)

An XLFD consists of thirteen components, for example:

	  -bitstream-prestige-medium-r-normal-*-0-0-85-85-m-*-iso8859-1
Each of these components specifies an independent aspect of a font. In order, the components are:
   1. foundry name          the organisation that "invented" the font
			    examples: bitstream, adobe

2. family name the name of the font family example: prestige, courier, helvetica

3. weight tbe thickness of the strokes example: bold, medium, normal

4. angle/slant tbe code for the angle of the characters (italic, oblique, roman, ...); example: i, o, r

5. width name tbe width of the characters example: normal, condensed

6. other style info other information on the character style example: sans

7. pixel size tbe height of the characters in pixels example: 20, 24

8. point size tbe height of the characters in decipoints example: 100, 120

9. x resolution tbe number of pixels per inch horizontally example: 75, 200

10. y resolution tbe number of pixels per inch vertically example: 75, 200

11. character spacing tbe code for the character spacing (monospace, proportionally space, ...) example: m, p

12. character width ten times the average character width in pixels example: 90, 149

13. character set the name of the character set encoding example: iso8859-1, jisz0208.1983-0

XLFD Wild Cards

With some older X11 systems it was acceptable to drop components that were not of interest by merely placing two hyphens in a row, for example:
-bitstream-prestige-medium-r-normal--0-0-85-85-m-0-iso8859-1
Some newer X11 systems will not accept this syntax and so it is strongly recommended that fields for which any value will be accepted be replaced with an asterisk, for example:
-bitstream-prestige-medium-r-normal-*-0-0-85-85-m-0-iso8859-1

Setting the Default Font for pkasciitiff

Selecting an Available Font

To obtain a list of all of the available bitmapped fonts on your server, list the contents of the /opt/faximum/font subdirectories:

ls -R /opt/faximum/font

Font files are named with the font name followed by the size of font. For example cmb.12.

When selecting a font makes sure that the font and size you select is available in both the 204x196 (used for fine resolution faxes) and the 204x98 (used for standard resolution faxes) directories.

Specifying a Default Font

Edit the /opt/faximum/convert/ascii file and change the line that looks similar to the following:

asciitiff -q $RESOLUTION $CONVARGS -o $OFILE $IFILE
and add an argument of the form -f fontname. For example (assuming you wanted to set the font fax.10 as your default):
asciitiff -f fax.10 -q $RESOLUTION $CONVARGS -o $OFILE $IFILE

SEE ALSO

REVISED Tue Jan 27 23:29:23 PST 2004

Faximum Software Inc., (604) 925-3600, Fax: (604) 926-8182
201 - 1571 Bellevue Avenue West Vancouver, BC Canada V7V 1A6
Email: sales@faximum.com or webmaster@www.faximum.com