Engineering Tip
Text in FactoryLink can be frustrating. This is not a functional issue with the software, it is a cosmetic issue dealing with the fonts as seen on the screens. Many applications have been upgraded with most of them needing no graphics changes.
Here is the technical background... FactoryLink will run using any graphics resolution without the need for graphics conversion (unlike Wonderware which requires a conversion to go from 800x600 to 1024x768 or any other combination). The way that this is possible is that FactoryLink stores the objects in a "global coordinate system" with 32767x32767 resolution. When the drawing is rendered, the system converts the global system to the actual pixels. As you can see, due to rounding, one object that is just less that half way between pixels will be rounded up and an object that is just over half will be rounded down. This makes what used to appear correctly now appear staggered.
For this reason, starting with FLECS 6.x, the grid was setup with snap on as default. This forces all objects that appear lined up to actually be lined up when the file is saved (the global coordinates will be on the same boundaries.) If graphics are developed with the snap on, most objects will stay in relative position with each other on the screen.
Text is different. Text has a number of important attributes: font name, font size (point size), text color, background color, underline, bold, etc. Because it can have a background color, there must be a colored region defined around the text to represent the background. This region is called the "bounding box." All text is, therefore, bounded by this region. There is another attribute of text called clipping (a check box on the text attributes). Clipping is designed to stop text from getting outside of the bounding box. All animated text is forced to put the clip attribute on so that an input field has an end (or you could type across the screen an off of the drawing!)
Clipping can be turned off for static text (i.e. titles of things on the screen). This is suggested, but it can lead to the text "spilling" over onto an object next to it (the direction depends on the alignment of the text object (left, center, right).
The bounding box is determined when you type the text for the first time. This box is calculated by calls to the graphical subsystem of the computer. The calculation takes the point size of the text, (which is ~ the text height in pixels) and then a call is made to the Windows rendering system. The question is asked, "what is the average width of text of this point size using this font name". This average along with the point size of the text, gives the size of the bounding box. As you can see, this works for "average" text, but words with a lot of MMMMMs or IIIIIIs will look a bit funny, so we suggest that you use XXXXs for input fields.
An input field will allow you to type as many characters as the number of XXXs typed at development time. For this reason, you will see some output animated fields using IIIIIs so that the character count is maximized within the bounding box. The technique of using IIIs is best for large output fields like the alarm banner line so that more than 80 characters can be displayed.
This bounding box is recalculated whenever the F8 key in the Application Editor is pressed. This usually corrects any text clipping that may occur at runtime. You may want to recalculate the text box when you are viewing the text exactly the same as at runtime. To do this, press F7 first to view the drawing in the window at runtime, and then press F8 to recalculate the text boxes for the entire screen.
Microsoft makes windows very easy to personalize. They include the ability to load an almost infinite number of fonts. FLECS will load the font requested if it exists. If it does not exist, it will load the system font (guaranteed to be loaded). This will cause a lot of problems because the system font is not a TrueType font. It is a bitmap font with a finite number of point sizes. This means that you asked for a 17 point comic font and you get a 16 point system font (and the bounding box is much taller than it needs to be because it is expecting a 17point font). For this reason, it is recommended that most customers use Arial font although it is not the default font normally used by FLECS.
FLECS uses an interesting feature of MS Windows that allows for a font of one name to actually use a font of another name. This is called font remapping, and it maps HELV->ARIAL and TIMES->Times New Roman. The default font name in FLECS is HELV (left over from the OS/2 and UNIX days) and is mapped to Arial. If your WebClient computer did not get the fonts remapped, then HELV fonts get displayed as SYSTEM resulting in unsightly screens. For this reason, it is recommended that customers use Arial as the only font. Other fonts can be used if it is assured that they will always be loaded on any computer that will display these graphics.
Another interesting trick that MS Windows offers is the system wide font sizing option. This is found in the same MS panel as the pixel size of the screen (start->control panel->display->settings) under the heading of "Font Size". This feature allows system-wide font sizing from large to small and custom! This means that a drawing can be developed on a system with small fonts setup and then that application can be moved to an identical system with large fonts and they will all be clipped!
Fonts are tricky, but not impossible. You will notice that the demonstration applications are rarely clipped and the text usually correct. This is because the font is usually Arial or Helv->Arial. Static text is always non-clipped. Input/output text is at least 1 pixel away from objects around them. The demos avoid high-density text displays like grids where these somewhat-unpredictable calculations result in poor text appearance. Grids should be spaced such that the objects do not touch each other and a change from one pixel to another does not compromise the cosmetics of the drawing.