Filled data fields shift slightly to right


 Product:MicroStation
 Version:08.11.XX.XX 
 Environment:N\A
 Area:Text
 Subarea:General

Problem Description

When I fill in an empty Data Field, its position will shift slightly to the right. This shift will vary based on the font used, and whether the horizontal justification is center or right.

Background

To reproduce this issue, you must be:
This shift is caused by an intentional change in V8i that addressed other defects, and makes text act more consistently regardless of font type, element content, and transform.
In addition Center justification of Data Fields is not an exact science to begin with; 'centering' is done with space characters instead of precisely measuring the glyphs and geometrically centering it. Compounding this is how RSC fonts implement space characters. The space character is optional in the definition of an RSC font. If the RSC font specifies a space character, all space characters will have the same width, and will actually give the best results.
However most of the RSC fonts, do not specify a space character. In this case MicroStation attempts to resolve by aesthetically making each space character the width of the most recent preceding non-space character. If none exist (e.g. leading spaces), the nominal width is used (based on the specified text size). This gives rise to the phenomenon that centering Data Fields will seem to vary based on the characters used (technically the last non-space character used).
Steps to Resolve

1.       If the data set does not actually have to be shared, either modify the existing data set during migration to V8i, or create a second data set and modify the elements.

 

To modify the elements:

 

a.       Open the file in V8i

b.      Start the move tool

c.       Set the snap mode to Origin

d.      Snap to the origin of the text element

e.      Move it back to the physical location that should be the origin (e.g. center or right edge)

 

2.       Text nodes store their origin point, while text elements do not (it must be re-computed during every edit). Thus, promoting a text element to a text node can prevent shifts due to range computation differences across versions. It should be noted, however, that some Enter Data Field tools across various versions of MicroStation cannot operate on text nodes, so this may be unacceptable in your workflows.

To promote a text element to a text node:

a.       Open the file in any version of V8

b.      Edit the text element, and add a second line of text (e.g. press <end><enter>a)

c.       Accept the changes

d.      Edit the text a second time, and remove the second line; editing the text should only potentially promote an element to a node, but never revert a node to an element.

See also

Other language sources

 Original Author:Carl Myhill