Imatest 4.2.0では、新しいINIファイル形式が導入されました。以前のINIファイルは新しいバージョンと互換性がなく、4.2以降で作成されたINIファイルは以前のバージョンと互換性がありません。
最も重要な変更点は、エスケープ文字に関するものです。以前のバージョンでは、INIファイルに保存される文字列内の文字はエスケープされていませんでした。バージョン4.2以降では、特殊文字を正しく読み込むためには、正しくエスケープする必要があります。これにより、INIファイル文字列内の非ACII文字も処理できるようになります。これらの変更点の詳細については、以下の「技術詳細」セクションを参照してください。
4.2+ Master、IS、またはStudioを初めて起動すると、Imatestは以前に作成されたINIファイルをチェックします。具体的には、imatest.ini、rescharts.ini、およびmulticharts.iniを検索します。これらのファイルのいずれかが見つかった場合、それらは1つのファイルに結合され、エスケープする必要のある文字がスキャンされます。新しいファイル「imatest-v2.ini」が作成されます。これは、今後の4.2+のすべての使用におけるデフォルトのINIファイルになります。このプロセスは、カスタムINIファイルには適用されないことに注意してください。
カスタム INI ファイルを最新の INI 形式に更新するには、[INI ファイル設定] メニューの [INI ファイルを選択...] オプションを使用して INI ファイルを選択します。INI ファイルを選択したら、[INI ファイルを更新] をクリックします。これにより、次の形式の新しいファイルが作成されます: <your-name>-v2.ini 選択した INI ファイルと同じフォルダーにある rescharts.ini または multicharts.ini ファイルは、新しいファイルにマージされ、更新されます。
Imatest ITに関する重要なお知らせ
Imatest IT をご利用の場合は、これらの変更点に特にご注意ください。Imatest IT は INI ファイルを変更しません。これは、マージンに敏感なテストに使用される INI ファイルが、本番環境で誤って変更されることを防ぐための意図的な設計です。この設計のため、Imatest IT 4.2 以降では 4.2 より前のバージョンの INI ファイルを使用できず、また、Imatest IT 4.2 より前のバージョンでは 4.2 以降のバージョンの INI ファイルを使用できません。
Imatest ITで使用するINIファイルを更新するには、上記の手順に従ってINIファイルを更新してください。
技術詳細
このセクションでは、実際のフォーマットに加えられた具体的な変更点を列挙します。
INIファイルバージョン
新しいINIバージョンに関連して、新しいINIキーが導入されました。INIファイルのバージョン管理を容易にするため、以下のキーが追加されました。
IniFileVersion = #
ここで「#」はバージョン番号(4.2の場合は2)を表します。この値は絶対に変更しないでください(この行を削除すると、次回の実行時に置き換えられます)。この値を変更すると、クラッシュする可能性が高くなります。
脱走したキャラクター
Imatest 4.2.0 より前のバージョンでは、Imatest INI ファイル内の特殊文字はエスケープされませんでした。4.2.0 以降では、他の意味を持つ可能性のある特殊文字 (主にバックスラッシュ) は、正しく読み取るためにエスケープする必要があります。たとえば、4.2 より前のバージョンの INI ファイルには、次の行が含まれている可能性があります。
save_dir = C:\imatest\my_images\Results
バージョン4.2以降では、この行は次のように表示されます。
save_dir = C:\\imatest\\my_images\\Results
Unicode文字
以前のバージョンの Imatest では、INI ファイルは非 ASCII 文字を処理できませんでした。そのため、ファイル名やパスに非ラテン文字を含めることができませんでした。新しい INI フォーマットでは、Unicode 文字を保存できます。これは、標準のUnicode 文字コードに特殊な文字を付加することで実現されます。たとえば、「ファイル名」は次のように表されます。
\u6587\u4ef6\u540d
配列
以前のバージョンでは、INIファイル配列はすべてのデータ型に対して必ずしも完全に堅牢ではありませんでした。新しいフォーマットでは、より複雑な配列に対応できます。
バージョン4.2以前:
roi_mult: 10 10 20 20; 100 100 0 0;
4.2+:
roi_mult: [ 10 10 20 20; 100 100 0 0;]
ネストされた配列を使用すると、3次元以上の配列を作成できます。ただし、Imatestでは現在、このような高次元配列は使用されていません。