4.2 版本中 INI 檔案格式發生變化

Imatest 4.2.0 引進了一種新的 INI 格式。先前的 INI 檔案與新版本不相容,而 4.2 及更高版本中建立的 INI 檔案也與先前的版本不相容。

最關鍵的改動涉及轉義字元。在先前的版本中,儲存在 INI 檔案中的字串不會對任何字元進行轉義。從 4.2 版本開始,特殊字元必須正確轉義才能被正確讀取。這使得我們能夠處理 INI 檔案字串中的非 ACII 字元。有關這些改動的更多詳細信息,請參閱下方的“技術細節”部分。

首次啟動 4.2+ Master、IS 或 Studio 版本時,Imatest 會檢查是否有先前存在的 INI 檔案。具體來說,Imatest 會找 imatest.ini、rescharts.ini 和 multicharts.ini 這三個文件。如果找到其中任何一個,它們將合併為一個文件,並掃描其中所有需要轉義的字元。之後會建立一個新檔案:imatest-v2.ini。該檔案將成為所有後續 4.2+ 版本的預設 INI 檔案。請注意,此過程不適用於自訂 INI 檔案。

若要將自訂 INI 檔案更新為目前 INI 格式,請使用「INI 檔案設定」功能表中的「選擇 INI 檔案…」選項選擇該 INI 檔案。選擇 INI 檔案後,按一下「更新 INI 檔案」。這將創建一個新文件,格式如下:<您的用戶名>-v2.ini。與您選擇的 INI 檔案位於相同資料夾中的任何 rescharts.ini 或 multicharts.ini 檔案都會合併到新檔案中並進行更新。

重要 Imatest IT 說明

如果您正在使用 Imatest IT,請注意以下變更。 Imatest IT 從不修改 INI 文件,這是為了確保用於邊際敏感測試的 INI 文件不會在生產過程中被意外更改。因此,您不能將 4.2 之前的 INI 檔案與 Imatest IT 4.2 及更高版本一起使用,反之亦然。

若要更新與 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;]

嵌套數組允許使用三維及以上的數組。然而,Imatest 目前並沒有使用這些更高維度的陣列。