像[1]這樣的許多地方聲稱,它們在http://www-106.ibm.com/developerworks/views/java/downloads.jsp
處找到,但鏈接已損壞。我在哪裏可以找到IMB CDRA GCGID到Unicode字符數據轉換表?
[1] https://github.com/pentaho/pentaho-reporting/tree/master/libraries/libfonts/encodings/VENDORS/IBM
像[1]這樣的許多地方聲稱,它們在http://www-106.ibm.com/developerworks/views/java/downloads.jsp
處找到,但鏈接已損壞。我在哪裏可以找到IMB CDRA GCGID到Unicode字符數據轉換表?
[1] https://github.com/pentaho/pentaho-reporting/tree/master/libraries/libfonts/encodings/VENDORS/IBM
IMB CDRA是從大型機時代人物命名,讓人聯想到的Unicode的不同之處在於,我不認爲它應該是編碼的基礎,更多的是標準的用於參考字符以一種獨立於編碼的方式...除了某些PDF文件包含其cmaps中字符的CDRA名稱(稱爲GCGID
s)(可能看起來像/SP080000
),我們希望看到相應的U+002C
(或COMMA
),並且if我們希望將這些PDF中文本的內部編碼轉換爲Unicode,因此我們需要一個轉換表。
你可以在這裏找到人類可讀的轉換表:https://www-01.ibm.com/software/globalization/gcgid/gcgid.html
機讀表都很難找到,主要是因爲廣發鏈接最近打破。這是新的鏈接:http://download.boulder.ibm.com/ibmdl/pub/software/dw/java/cdctables.zip
請注意,這是一個非常緩慢的76MiB下載。另外要注意的是,這些表並不像人們可讀的那樣簡單:不是一個GCGID到GCUID表(GCUID是IBM的一個Unicode表示),而是有數千個表在相同的編碼對之間進行轉換語言(或單語言encondings和Unicode之間),他們也列出GCGIDs爲有他們的字符:
**************************************************************************
* Name: Mapping table from ISO 10646 to IBM CP 856.
[..]
*CP UCS GCGID SYNONYM ISO 10646 NAME
[..]
1E 001E ...RS... (CC) Record Separator
1F 001F ...US... (CC) Unit Separator
20 0020 SP010000 SPACE
21 0021 SP020000 EXCLAMATION MARK
22 0022 SP040000 QUOTATION MARK
23 0023 SM010000 NUMBER SIGN
[..]
只有這樣,才能得到機器可讀的映射將遍歷所有的數千名轉換表X和Unicode並收集所有GCGID-UCN對,如我在此處所做的:
https://gist.github.com/SonOfLilit/2a144d525b32978fd3ae1adddd27d621
如果鏈接發生變化,我可以通過點擊鏈接到https://www-01.ibm.com/software/globalization/cdra/appendix_j.html來找到它,導致https://www.ibm.com/developerworks/views/java/downloads.jsp應該包含它但不包含它,然後過濾「所有區域」並搜索「字符數據轉換表「。