curtis
22小時前 5577f3ba7b9f0319c9b32d7080165207726d1f81
reassemble/scan/mermaid/initkscan.md
@@ -1,21 +1,17 @@
```mermaid
graph TD
    Start([Start initkscan]) --> DisableCB[ScanDuplexCB.Enabled := False]
    DisableCB --> CheckConfig{Scanner.IsConfigured?}
flowchart TD
    Start([開始]) --> DisableUI[將雙面掃描勾選框設為停用]
    DisableUI --> CheckConfig{掃描器是否已設定?}
    
    CheckConfig -- Yes --> TryOpen[try]
    CheckConfig -- 是 --> TryOpen[嘗試開啟掃描來源 (OpenSource)]
    CheckConfig -- 否 --> End([結束])
    
    subgraph Try_Detect
        TryOpen --> OpenSrc[Scanner.OpenSource]
        OpenSrc --> CheckDuplex{Scanner.DuplexCap > 0?}
        CheckDuplex -- Yes --> EnableCB[ScanDuplexCB.Enabled := True]
        CheckDuplex -- No --> CatchErr
        EnableCB --> CatchErr{發生異常?}
        CatchErr -- Yes --> DataLoadErr[DataLoading False, True] --> ExitInit
    end
    TryOpen --> CheckDuplex{硬體是否支援雙面?}
    CheckDuplex -- 是 (DuplexCap > 0) --> EnableUI[啟用雙面掃描勾選框]
    CheckDuplex -- 否 --> CloseSource[關閉掃描來源]
    
    Try_Detect --> CloseSrc[Scanner.CloseSource]
    CheckConfig -- No --> EndInit
    CloseSrc --> EndInit
    EndInit([End])
    EnableUI --> CloseSource
    CloseSource --> End
    TryOpen -- 異常 --> StopLoading[呼叫 DataLoading 停止載入提示] --> End
```