<!DOCTYPE html
  PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<!--
Copyright (c) 2006 UGS Corp.

All Rights Reserved.

This software and related documentation are proprietary to UGS Corp.
-->
<html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>Character Fonts</title>
      <script language="javaScript">
        abridged="false";
        displayConditions=new Array();
      </script>
      <link type="text/css" href="../css/main_styles.css" rel="stylesheet">
   </head>
   <body class="bodydocs" onload="top.pageLoader()" bgcolor="#FFFFFF">
      <div class="title_topic3" id="xps10_pagetitle">Character Fonts</div>
      <hr noshade="true">
      <p class="para_topic"> Use this option to define the parameters for a new character font. Font parameters determine the font box that defines the limits for a particular character font. You must design each character of a font to fit within the boundaries of the font box.</p>
      <div class="title_division"> Choosing a Line Font File</div>
      <p class="para_division"> Use this option to load a new line font file. Options under this category include:</p>
      <table border="0" cellpadding="2" cellspacing="3" align="center">
         <tr>
            <td bgcolor="#c0c0c0" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> Option</p>
            </td>
            <td bgcolor="#c0c0c0" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> Description</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="50%">
               <p class="para_td"> Use Existing File</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="50%">
               <p class="para_td"> Displays a file selection dialog, letting you specify the font file you want to load.</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="50%">
               <p class="para_td"> Use NX Default</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="50%">
               <p class="para_td"> Loads the unigraphics.fdf default file.</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="50%">
               <p class="para_td"> Use Customer Default</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="50%">
               <p class="para_td"> Loads the .fdf file specified as the customer default.</p>
            </td>
         </tr>
      </table><br><p class="para_division"> To display the font you load, verify that the Software Line Font Display mode is in effect (Preferences&rarr;Visualization&rarr;Line).</p>
      <div class="title_division">Create Character Font</div>
      <p class="para_division"> This option allows you to create and edit a user-defined character style or font. You can define any number of character fonts for subsequent use as text in drafting aids and dimensions.</p>
      <div class="title_division"> Font Source Files</div>
      <p class="para_division"> When you define a character font using the Character Fonts option, the system creates a &quot;font source file&quot;. The font source file contains the defining data for a font.</p>
      <div class="title_division"> ugfontc Utility</div>
      <table border="0">
         <tr>
            <td valign="top" align="left"><img align="left" src="../graphics/note.gif" alt="Note" title="Note"></td>
            <td valign="bottom" align="left" width="100%">
               <div class="para_note">
                  <p class="para_note_body">  For NX to use a font defined in a font source file you must translate it into a &quot;font binary file&quot;. You can translate font source files into font binary files using the ugfontc utility.</p>
                  <p class="para_note_body"></p>
               </div>
            </td>
         </tr>
      </table>
      <p class="para_division"> You can then place the font binary file that is output by the ugfontc utility into the character font directory.</p>
      <div class="title_division">Character Fonts Dialog</div>
      <p class="para_division"> When you select the Character Fonts option, the system displays the Character Fonts dialog.</p>
      <table border="0" cellpadding="2" cellspacing="3" align="center">
         <tr>
            <td bgcolor="#c0c0c0" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> Option</p>
            </td>
            <td bgcolor="#c0c0c0" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> Description</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="36%">
               <p class="para_td"> Create Character Font</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="64%">
               <p class="para_td"> Defines the font parameters for a new character font.</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="36%">
               <p class="para_td"> Edit Character Font</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="64%">
               <p class="para_td"> Modifies line and character spacing of a character font.</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="36%">
               <p class="para_td"> Create/Edit Character</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="64%">
               <p class="para_td"> Adds individual characters of a font to a font's source file.</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="36%">
               <p class="para_td"> Translate Kanji</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="64%">
               <p class="para_td"> This option creates the Kanji font file (23.ugf) and saves the file in the directory pointed to by the UGII_KANJI_FILE environment variable. You must have system privileges to use this option.</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="36%">
               <p class="para_td"> Font to Replace</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="64%">
               <p class="para_td"> Allows parts that have been created with one font to be displayed in another font.</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="36%">
               <p class="para_td"> Add Font</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top" width="64%">
               <p class="para_td"> Allows you to add a font to the current part. Select the font to add. Click the OK or Apply button to add the font. The font displays as the first unused font number in the Replace Font List Box.</p>
               <table border="0">
                  <tr>
                     <td valign="top" align="left"><img align="left" src="../graphics/note.gif" alt="Note" title="Note"></td>
                     <td valign="bottom" align="left" width="100%">
                        <div class="para_note">
                           <p class="para_note_body">When you select a font in the Font to Replace list box, the name of the Add Font list box changes to Replace Font with</p>
                        </div>
                     </td>
                  </tr>
               </table>
            </td>
         </tr>
      </table><br><p class="para_division"></p>
      <p class="para_division"> You can use the Character Fonts dialog to create and edit custom fonts.</p>
      <p class="para_division"> To create a new font you must first specify the font parameters using the Create Character Font option. These parameters include the font name, the relative size for both uppercase and lowercase characters (controlled using a font box), and the spacing between individual characters and lines of characters.</p>
      <p class="para_division"> Once you have specified the font parameters, you can add characters to the font using the Create/Edit Character option.</p>
      <p class="para_division"> If you need to change the character or line spacing after creating the font parameters, use the Edit Character Font option.</p>
      <div class="title_division">Font Name</div>
      <p class="para_division"> The first parameter you must specify is the font name. You can use up to 26 characters in the font name.</p>
      <div class="title_division">Font Box</div>
      <p class="para_division"> If the font source file does not already exist, you can define the boundaries of the font box. The font box is used as a template to create individual characters. You must design each character of the font to fit within the boundaries of the font box. By creating the characters inside the font box, you assure that all of the uppercase and lowercase characters are of uniform size.</p>
      <table border="0">
         <tr>
            <td valign="top" align="left"><img align="left" src="../graphics/note.gif" alt="Note" title="Note"></td>
            <td valign="bottom" align="left" width="100%">
               <div class="para_note">
                  <p class="para_note_body"> Create font boxes only in the Top view. Creation in any other view has unpredictable results on the character font.</p>
               </div>
            </td>
         </tr>
      </table>
      <p class="para_division"> A font box is composed of dashed line objects created as a group. Creating a font box requires you to determine the placement of four horizontal lines: the  <em>cap line</em>, the  <em>drop line</em>, the  <em>waist line</em>, and the  <em>base line</em>.
      </p>
      <p class="para_division">  <img align="bottom" src="graphics/fil_util_charfonts_76.gif" border="0">  
      </p>
      <p class="para_division"> Font Box</p>
      <p class="para_division"> The font parameters associated with a font box define the height and width of the character font as well as the spacing between characters and the spacing between lines of text.</p>
      <p class="para_division"> The area of the box between the base line and the cap line is used to create upper case characters. The area between the base line and the waist line is used to create lowercase characters. The extension of lowercase characters, such as &quot;g&quot; and &quot;p&quot;, should be created between the base line and the drop line.</p>
      <p align="center"><img align="bottom" src="graphics/fil_util_charfonts_75.gif"></p>
      <p class="para_division"> Uppercase and Lowercase Letter Orientation</p>
      <p class="para_division"> The system creates a font source file containing all of this information.</p>
      <div class="title_division"> Creating the Font Box</div>
      <p class="para_division"> If the font source file does not already exist, you can define the boundaries of the font box. Define a font box in much the same way as a rectangle: use two points to define two diagonal corners of the font box.</p>
      <p align="center"><img align="bottom" src="graphics/fil_util_charfonts_74.gif"></p>
      <p class="para_division"> Font Box Boundary</p>
      <p class="para_division"> The top of the font box is known as the <em> cap line</em>, the bottom is known as the  <em>drop line</em>.
      </p>
      <p class="para_division"> Following the Cue prompts, indicate the location of coordinates or points for the font box boundaries.</p>
      <p class="para_division"> Next, add two additional lines to the font box. These lines are known as the  <em>base line</em> and the  <em>waist line</em>. Both of these reference lines are horizontal and are displayed between the left and right sides of the font box.
      </p>
      <div class="title_division">Adding the Base Line</div>
      <p class="para_division"> The base line should be used as a base for all characters, both upper and lower case.</p>
      <p class="para_division"> The base line determines the character size of the font. The character size is the distance from the base line to the cap line.</p>
      <p class="para_division"> The base line also determines the origin of the font box. The origin is where the base line intersects the left side of the font box. This point should be used as the character origin for all the characters defined in the font box.</p>
      <div class="title_division">Adding the Waist Line</div>
      <p class="para_division"> The waist line should be used as an aid in defining lower case characters.</p>
      <p class="para_division"> Cue: INDICATE WAIST LINE - Indicate Point or Enter Coordinates</p>
      <p class="para_division"> All lower case characters should be defined between the waist line and the drop line. The main body of lower case letters should lie between the base line and the waist line. The  <em>tails</em> of lower case characters, such as g and p, should lie between the base line and the drop line.
      </p>
      <p align="center"><img align="bottom" src="graphics/fil_util_charfonts_73.gif"></p>
      <p class="para_division"> Font Box - Waist and Base Lines</p>
      <p class="para_division"> To define the waist and base lines, specify points through which horizontal lines are drawn. You specify the points using the  <em>Point Constructor.</em></p>
      <p class="para_division"> The points defined must lie between the cap line and drop line, but do not have to lie inside the box. The lines will pass through the defined points but will only be displayed between the left and right sides of the font box.</p>
      <div class="title_division"> Width Type-Character Spacing</div>
      <p class="para_division"> The next parameter you specify is the space between characters.</p>
      <p class="para_division"> To do this, select a method of spacing (width control) and enter the spacing distance. How the spacing distance is applied depends on the type of width control you select.</p>
      <div class="title_division">About Character Size</div>
      <p class="para_division"> When creating a dimension or text in a drafting aid, use Preferences&rarr;Lettering to specify a numeric character size. This size directly corresponds to the distance between the Base line and the Cap line. So, in order for upper case letters to be the full character size, they must be created to extend the full distance between the Base and Cap lines.</p>
      <p class="para_division"> There are three types of width control available for a character font:</p>
      <ul>
         <li>
            <p class="para_item"> fixed</p>
         </li>
         <li>
            <p class="para_item"> variable</p>
         </li>
         <li>
            <p class="para_item"> overlap</p>
         </li>
      </ul>
      <p class="para_division">  <em>Fixed</em> sets the spacing relative to the font box boundary; the actual width of the character is not considered. The character spacing in this case is the distance from the right side of the font box of one character to the left side of the font box of the next.
      </p>
      <p align="center"><img align="bottom" src="graphics/fil_util_charfonts_72.gif"></p>
      <p class="para_division"> Fixed Width Character Spacing</p>
      <p class="para_division">  <em>Variable</em> allows the character spacing to be defined as a multiple of the actual character width. In this case, the width of the font box is not important.
      </p>
      <table border="0">
         <tr>
            <td valign="top" align="left"><img align="left" src="../graphics/note.gif" alt="Note" title="Note"></td>
            <td valign="bottom" align="left" width="100%">
               <div class="para_note">
                  <p class="para_note_body">  When using Variable, the width of each character is defined at the time of its creation.</p>
                  <p class="para_note_body"></p>
               </div>
            </td>
         </tr>
      </table>
      <p class="para_division">  <img align="bottom" src="graphics/fil_util_charfonts_71.gif" border="0">   
      </p>
      <p class="para_division"> Variable Width Character Spacing</p>
      <p class="para_division">  <em>Overlap</em> requires that an overlap angle be entered. The angle refers to the angle that the characters will make with the sides of the font box.
      </p>
      <p class="para_division"> Consider a line drawn from the center of the cap line to the font box origin. The angle formed by this line and the left side of the font box is the maximum allowable overlap angle.</p>
      <p align="center"><img align="bottom" src="graphics/fil_util_charfonts_70.gif"></p>
      <p class="para_division"> Maximum Overlap Angle</p>
      <p class="para_division"> After you enter the desired overlap angle, the system displays six overlap lines beneath the font box. Overlap lines are numbered from one to six.</p>
      <p align="center"><img align="bottom" src="graphics/fil_util_charfonts_69.gif"></p>
      <p class="para_division"> Overlap Lines</p>
      <p class="para_division"> These lines are numbered one to six to correspond with a menu that is displayed when a character is being created. The overlap lines are named as follows:</p>
      <ol type="1" start="1">
         <li>
            <p class="para_item"> VERTICAL CAP LINE</p>
         </li>
         <li>
            <p class="para_item"> RIGHT INCLINED CAP LINE</p>
         </li>
         <li>
            <p class="para_item"> LEFT INCLINED CAP LINE</p>
         </li>
         <li>
            <p class="para_item"> VERTICAL WAIST LINE</p>
         </li>
         <li>
            <p class="para_item"> RIGHT INCLINED WAIST LINE</p>
         </li>
         <li>
            <p class="para_item"> LEFT INCLINED WAIST LINE</p>
         </li>
      </ol>
      <p class="para_division"> When a character font is created using the overlap width option, each character is assigned a leading and trailing overlap line.</p>
      <div class="title_division">Character Spacing</div>
      <p class="para_division"> The character spacing is the distance from the trailing overlap line of one character to the leading overlap line of the next. This option allows characters to be spaced according to their shape as well as their width.</p>
      <p align="center"><img align="bottom" src="graphics/fil_util_charfonts_68.gif"></p>
      <p class="para_division"> Character Spacing</p>
      <p class="para_division"> Overlap lines are further discussed under the Create/Edit Character option.</p>
      <p class="para_division"> The values entered are relative to the character size of the font box. The character size is the distance from the base line to the cap line. For example, if the font character size is 1.250, a character spacing of .500 will result in an actual space of .625.</p>
      <div class="title_division"> Line Spacing</div>
      <p class="para_division"> The line spacing is determined in the same manner for fixed, variable and overlap width types. It is the distance between the base line of the font box on one line and the cap line of the font box on the line below.</p>
      <p align="center"><img align="bottom" src="graphics/fil_util_charfonts_67.gif"></p>
      <p class="para_division"> Character Font Line Spacing</p>
      <p class="para_division"> After you select the width type, enter the character and line spacing distances into the system.</p><pre class="indent">Cue: Spacing as Multiple - Of Character Size</pre><p class="para_division">Once the spacing for the character font has been entered, the system attempts to create and file a font source file.</p>
      <table border="0">
         <tr>
            <td valign="top" align="left"><img align="left" src="../graphics/note.gif" alt="Note" title="Note"></td>
            <td valign="bottom" align="left" width="100%">
               <div class="para_note">
                  <p class="para_note_body">The lines and text that make up a font box cannot be recreated from the data in the source file. It is suggested that after the font box is created, it be filed with the part or saved to be used as a pattern. In this way it can be retrieved anytime for use in creating characters.</p>
               </div>
            </td>
         </tr>
      </table>
      <div class="title_division">About the Font Source File</div>
      <p class="para_division"> The font source file contains the following information: the character height and width, the spacing between characters, the spacing between lines, and the width type and location of base and waist lines.</p>
      <p class="para_division"> The following section explains how the source file codes this information.</p>
      <div class="title_division">Characters and Their Meaning</div>
      <p class="para_division"> Certain characters in a font source have special significance:</p>
      <table border="0" cellpadding="2" cellspacing="3" align="center">
         <tr>
            <td bgcolor="#c0c0c0" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> Character</p>
            </td>
            <td bgcolor="#c0c0c0" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> Meaning</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> Asterisk *</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> Text following an asterisk is a comment. One exception: an asterisk in single quotes, *, following the character indicator CHAR, does not signal a comment.</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> Dollar Sign $</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> The termination of the character information is denoted by a dollar sign followed by a comma. A dollar sign can also be the first character in a keystroke (character name). For example, $E, is a valid character name.</p>
            </td>
         </tr>
         <tr>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> CHAR</p>
            </td>
            <td bgcolor="#f4f4f4" colspan="1" rowspan="1" valign="top">
               <p class="para_td"> Specifies the keystroke that the following information defines.</p>
            </td>
         </tr>
      </table><br><p class="para_division"></p>
      <div class="title_division">Font Box Grid Size</div>
      <p class="para_division"> When the font box boundary is defined, the longer of the two dimensions - height or width - is assigned the value of 16383. This establishes the character grid size. This grid is used in the definition of all the character parameters as well as in the definition of the character.</p>
      <p class="para_division">  <img align="bottom" src="graphics/fil_util_charfonts_66a.gif" border="0">   
      </p>
      <p class="para_division"> Font Box - Height Larger than Width</p>
      <p class="para_division"> The height is divided by 16383 to obtain the character grid size. The other parameters are defined in terms of their ratio to the height. Keep in mind, the example is a 2&quot; x 1&quot; box.</p>
      <div class="title_division">Output</div>
      <p class="para_division"> The font box pictured above will generate the following font parameters:</p>
      <table border="0">
         <tr>
            <td valign="top" align="left"><img align="left" src="../graphics/note.gif" alt="Note" title="Note"></td>
            <td valign="bottom" align="left" width="100%">
               <div class="para_note">
                  <p class="para_note_body">The lines of source code are laid out as follows:</p>
               </div>
            </td>
         </tr>
      </table><pre class="indent"> 10 *Character Font Source20 16383, 12605, 3671, 10564,30 3,40 9, 20, 10,50 1.125000, .125000, .0001221,60 $</pre><pre class="indent">Line 20- 16383, 12605, 3671, 10564,</pre><p class="para_division"> The first number, 16383, represents the height of the box, and 12605 is the width. The next number, 3671, is the distance between the base of the box and the base line. The last number, 10564, is the distance between the base of the box and the waist line. Remember that the unit of measurement is determined by dividing the total height by 16383.</p>
      <p class="para_division"> Line 30-3,</p>
      <p class="para_division"> This number indicates which width type was defined for the character font. A 1 indicates fixed width, a 2 indicates variable width and a 3 indicates overlap width.</p><pre class="indent">Line 40- 9, 20, 10,</pre><p class="para_division">These three numbers are the overlap shifts and will be used only when the overlap width type is selected. If the width type is fixed or variable, all of these values will be zero. These three values are used to adjust the spacing between adjoining characters. These shifts are numbered 1, 2, and 3, starting from the left. In this example, overlap shift 1 is 9 units, shift 2 is 20 units, and shift 3 is 10 units.</p>
      <p class="para_division"> Refer to the discussion starting on page for a more detailed explanation of overlap shifts.</p><pre class="indent"> Line 50-1.125000, .125000, .0001221,</pre><p class="para_division">The first number, 1.125000, is the line spacing and the second number is the character spacing. Both are in multiples of the character size. The third number, .0001221, is the character font grid size. In this case, the font box created is 2 inches high by 1 inch wide. The grid size, .0001221, is the result of dividing 2 by 16383.</p><pre class="indent">Line 60-$,</pre><p class="para_division"> A dollar sign followed by a comma marks the end of the font parameter data.   </p>
   </body>
</html>