造字VS瀏覽器(沒用)

 這是一個常見的問題,主要原因是瀏覽器在處理字型時,可能不會像記事本那樣直接、完整地去讀取作業系統中所有字型(包括使用者自造字 EUDC)的連結。

以下是一些可以嘗試的解決方法:

  1. 確認造字程式的「字型連結」設定 (最可能的原因)

    • 開啟造字程式 (EUDCEDIT.EXE):

      • 可以在「開始」功能表搜尋 造字Private Character Editor

      • 或者直接執行 C:\Windows\System32\eudcedit.exe

    • 檢查字型連結:

      • 在造字程式中,點擊「檔案」(File) -> 「字型連結」(Font Links...)。

      • 你會看到兩個選項:

        • 與所有字型連結 (Link with All Fonts): 這是預設選項。理論上,所有應用程式都應該能使用。但瀏覽器有時不遵守這個規則。

        • 與選定字型連結 (Link with Selected Font(s)): 這個選項通常更可靠,尤其是針對特定應用程式(如瀏覽器)。

    • 嘗試「與選定字型連結」:

      1. 選擇「與選定字型連結」。

      2. 在跳出的視窗中,選擇一個你常用的中文字型,例如「新細明體」(PMingLiU)、「微軟正黑體」(Microsoft JhengHei) 等。建議至少選擇一個你確定瀏覽器會使用的字型。可以多選幾個。

      3. 點擊「確定」儲存設定。

      4. 重新啟動電腦: 這是非常重要的一步,字型連結的變更通常需要重啟後才能完全生效。

  2. 在瀏覽器中指定字型 (配合方法1)

    • 如果你知道你將自造字連結到了哪個特定字型(例如「新細明體」),你可以嘗試在瀏覽器中(如果可能的話,例如透過 CSS)明確指定使用該字型來顯示包含自造字的內容。

    • 測試方法:

      1. 建立一個簡單的 HTML 檔案,例如 test.html

              <!DOCTYPE html>
        <html lang="zh-TW">
        <head>
            <meta charset="UTF-8">
            <title>EUDC Test</title>
            <style>
                body {
                    /* 將 '新細明體' 替換為你連結自造字的字型名稱 */
                    font-family: '新細明體', PMingLiU, sans-serif;
                    font-size: 24px;
                }
            </style>
        </head>
        <body>
            <p>這是一個測試,包含自造字: </p>
            <!-- 將   替換為你的自造字碼位 -->
            <!-- 自造字區段通常是 U+E000 至 U+F8FF -->
        </body>
        </html>
            
      2. 用瀏覽器開啟這個 test.html 檔案,看看自造字是否顯示。

      3. 如果不行,嘗試更換 font-family 中的字型名稱,例如 '微軟正黑體', 'Microsoft JhengHei UI', 'Microsoft JhengHei'

  3. 清除瀏覽器快取和字型快取

    • 有時候瀏覽器會快取字型資訊,導致更新後的自造字無法立即顯示。

    • 清除瀏覽器的一般快取(歷史記錄、Cookie、快取圖片和檔案)。

    • Windows 也有系統層級的字型快取,但通常重啟電腦會處理這個問題。

  4. 檢查登錄檔 (進階,請小心操作)

    • 自造字的資訊儲存在登錄檔中。可以檢查設定是否正確。

    • 路徑:HKEY_CURRENT_USER\EUDC

    • 在這個機碼下,會有對應字碼頁 (例如 950 代表 Big5) 的子機碼。

    • 在字碼頁子機碼內,SystemDefaultEUDCFont 應該指向你的 EUDC 字型檔案 (預設是 EUDC.TTE)。

    • 如果你選擇了「與選定字型連結」,這裡還會有其他項目,將特定字型名稱映射到 EUDC.TTE

    • 除非你很清楚你在做什麼,否則不建議直接修改登錄檔。

  5. 嘗試不同的瀏覽器

    • 看看問題是發生在所有瀏覽器(Edge, Chrome, Firefox 等)還是特定的瀏覽器。這有助於判斷問題的範圍。

  6. 確認自造字碼位

    • 確保你在瀏覽器中輸入或顯示的自造字碼位 (Unicode Private Use Area, 通常是 U+E000 到 U+F8FF) 與你在造字程式中編輯的碼位一致。

總結建議步驟:

  1. 優先嘗試方法 1: 在造字程式中,將自造字「與選定字型連結」(例如「新細明體」或「微軟正黑體」)。

  2. 儲存設定後,務必重新啟動電腦。

  3. 測試:

    • 先在記事本中測試。

    • 然後在瀏覽器中測試。如果直接在網址列或搜尋框輸入不顯示,嘗試使用上面提供的 HTML 範例,並修改 font-family 指向你連結的字型。

如果以上方法都無效,問題可能比較複雜,可能與特定的瀏覽器版本或 Windows 更新有關。但通常「與選定字型連結」並重啟是最有效的方法。

重要提醒:
使用者自造字 (EUDC) 是本機設定。這意味著只有在你自己的電腦上,並且正確設定後才能看到這些字。如果你將包含這些自造字的文件或網頁傳給其他人,他們如果沒有相同的自造字檔案和設定,是看不到這些特殊字元的(可能會顯示為方塊或問號)。

留言

這個網誌中的熱門文章

Offscreen Canvas

外部網頁新增 Google 日曆行程(URL模板)

計算 Canvas 文字最大字體