Test Pseudo Translated Resource File
The ResMe String Extractor Enterprise version includes
the ability to automatically generate a pseudo translated "acid" version of your
Resource file that will perform a worst case translation on all strings within the
Resource file. This is an especially important test to run early in your development cycle
to help weed out localization problems before localization begins. Look at a sample
application with the normal Resource file versus the Acid
How It Works
A special Acid.res Resource file that is compatible with your project is generated along
with the true Resource file. Each character of all the resource strings in the Acid
Resource file has been converted into a "$" character to simulate
localization to the "$$$$" language. This gives the affect of having your
application translated into an unintelligible foreign language. There are three reasons
why this pseudo translation acid test is important:
Missed User Interface Strings
It is easy to arrest User Interface strings that should have been put in the Resource
file. When the acid resource file is used in your program, all user interface strings
should appear as "$". Any text that appears normal, i.e. still in English, has
been overlooked by the ResMe String Extractor and will not be translated into the target
language. There should be no intelligible text viewable in the application except for
externally supplied information such as file names, file data, database data, and any
system messages. (Windows 2000 and NT 5.0 is rumored to better handle system messages in
other languages, as in common dialogs.)
Intertwined User Interface and Program Control
The Acid.res file also helps detect translation code breakers. While it is undesirable, it
is common to have program control based on the contents of some user interface messages.
Any string comparison test based on user interface string will cause serious problems when
the application is localized to a foreign language. Consider how this application would
behave after the program was translated to double-byte Japanese. The Kanji characters
would never match any of the English string comparisons.
Select Case Form.Caption
If 0 = Instr(frmMain.Caption, "Help") Then
String Size Differences
In addition to the foreign appearance of the "$" strings, each Resource string's
length is increased by 30%. The reason for this is that a translated string will often be
longer than the original string. This is especially true when translating from English to
German. The Acid.res file will help give an idea of what kinds of space and size problems
can be introduced when an application is translated to a foreign language.
If you have read this explanation of the Acid test and
you have looked at both versions of this sample application, then maybe you notice the
difference in the size of the two applications? The application running the Acid test
appears to be slightly smaller than the normal one. Both applications function
identically except for a small discrepancy in width and height of the application at start
up. This is a subtle problem introduced by localizing to
a foreign language.
VisData Sample project with
'Normal' resource file.
VisData Sample project with
'Acid' resource file.