| | |
| | | ```mermaid |
| | | flowchart TD |
| | | Start([開始 ImageReSize_FormID]) --> GetFormID[獲取 FormID] |
| | | GetFormID --> CheckID{FormID 為空?} |
| | | CheckID -- 是 --> End([結束]) |
| | | CheckID -- 否 --> QueryDB[查詢資料庫獲取表單高寬與定位類型] |
| | | Start([開始]) --> GetFormInfo[查詢 FORM_INF_List 取得高寬與定位類型] |
| | | GetFormInfo --> ValidParam{是否有定位點設定?} |
| | | |
| | | QueryDB --> Found{找到資料?} |
| | | Found -- 否 --> End |
| | | Found -- 是 --> CheckType{定位類型為 ANCHOR/FRAME\n且高寬資訊完整?} |
| | | ValidParam -- 是 --> LoadImg[載入影像檔 (補件模式則跳過)] |
| | | ValidParam -- 否 --> End([結束]) |
| | | |
| | | CheckType -- 否 --> End |
| | | CheckType -- 是 --> LoadImg[載入影像檔] |
| | | LoadImg --> FindAnchor[呼叫 FindPoint 尋找十字線或邊框定位點] |
| | | FindAnchor --> CalcResize[呼叫 CheckSize 計算偏移與縮放比例] |
| | | CalcResize --> PerformResize[呼叫 ImageResize 執行影像調整] |
| | | |
| | | LoadImg --> CheckSub{補件模式且圖檔已存在?} |
| | | CheckSub -- 是 --> End |
| | | CheckSub -- 否 --> FindPt1[執行定位點尋找 FindPoint] |
| | | PerformResize --> ResizeOk{縮放是否成功?} |
| | | ResizeOk -- 是 --> SaveImg[儲存影像, 記錄 MD5 與 ReSize.dat 日誌] |
| | | ResizeOk -- 否 (Error) --> LogErr[將錯誤資訊寫入 AnchorError.dat] |
| | | |
| | | FindPt1 --> CalcSize[計算偏移與縮放比例 CheckSize] |
| | | CalcSize --> Resize[執行影像縮放 ImageResize] |
| | | Resize --> FindPt2[縮放後重新定位 FindPoint] |
| | | |
| | | FindPt2 --> CheckSuccess{SizeStr 有效且非 ERROR?} |
| | | |
| | | CheckSuccess -- 是 --> CheckMD5{檢查 MD5 是否重複} |
| | | CheckMD5 --> SaveImg[儲存縮放後影像] |
| | | SaveImg --> LogResize[記錄縮放資訊到 ReSize.dat] |
| | | LogResize --> ClearName |
| | | |
| | | CheckSuccess -- 否 --> CheckError{SizeStr 為 ERROR?} |
| | | CheckError -- 是 --> LogError[記錄錯誤到 AnchorError.dat] |
| | | LogError --> ClearName |
| | | CheckError -- 否 --> ClearName |
| | | |
| | | ClearName[清除 FileName 快取] --> End |
| | | SaveImg --> ClearISB[清空顯示路徑] --> End |
| | | LogErr --> ClearISB |
| | | ``` |