找回密码
 欢迎注册
搜索
热搜: 活动 交友 discuz
查看: 4277|回复: 3

[原创]AGFA的汉字编码方式

[复制链接]
发表于 2003-9-9 03:08:26 | 显示全部楼层 |阅读模式
AGFA的汉字编码方式
据AGFA自己讲,他们采用ISO-2022-GBK保存病人姓名、医院名、科室名等中文信息。
ISO-2022-GBK估计是AGFA对ISO-2022-CN的变种,应该不是标准的格式。
[ISO-2022-CN的知识]
ISO-2022-CN属於7-bit编码, 将ASCII指定给G0、中文字指定给G1或G2。中文字 分
成三类: GB 2312-80、CNS Plane 1(相当Big 5中的level 1: 常用字)、和CNS Plane
2(相当Big 5中的level 2: 次常用字), ESC sequence如下:
字集 放在G0-G3 指定给G0-G3用的ESC sequence 使用时用的ESC sequence
-----------------------------------------------------------------------------

ASCII G0 "ESC ( B", 或0x1B 28 42 SI, 或0x0F
GB2312-80 G1 "ESC $ ) A", 或0x1B 24 29 41 SO, 或0x0E
CNS Plane 1 G1 "ESC $ ) G", 或0x1B 24 29 47 同上
CNS Plane 2 G2 "ESC $ * H", 或0x1B 24 2A 48 SS2
----------------------------------------------------------------------------
-
ESC sequence都符合ISO 2022的规定。 要注意的是, 每个文件要结束在ASCII" 每
行必须以ASCII开始, 也要以ASCII结 束。就像"交换"在GB中是0x3d3b3b3b、在CNS
Plane 1中是0x47285f50, 所以一行 为"交换(GB)交换(CNS)"的hex为:
1B242941 0E 3d3b3b3b 1B242947 47285f50 0F 0A
^^^^^^^^ ^^ ^^^^^^^^ ^^^^^^^^ ^^^^^^^^ ^^ ^^
G1为GB 用G1的字 GB码 G1为CNS Plane 1 CNS码 用G0的字 换行
(ASCII)
[AGFA的汉字编码格式]
AGFA的所谓ISO-2022-GBK采用和ISO-2022-CN相似的编码方式,但做了如下改动:
1. 不使用SI(即0E), SO(即0F)
A. 在进入汉字的ESC sequence(1B 24 29 41)后没有添加SI(即0E)。
B. 在进入ASCII的ESC sequence(1B 28 42)后没有添加SO(即0F)。
2.汉字使用的是机器内码(每个字节的最高位为1) ,而不是国标码。
[DICOM数据字节数规定]
DICOM规定数据的字节数必须是偶数,所以如果编码后字节数是奇数,则需要补0(数
值)或补空格(字符串)。
[医院名/部门名编码格式]
医院名(00080080)和部门名(00081040)的编码一般只包括中文,格式为:
1B 24 29 41 <中文机器内码> 1B 28 42 [如需要,补一个空格]
例如:
1b  24  29  41  b7  c5  c9  e4  bf  c6  1b  28  42  20
是“放射科”的编码。
[病人姓名编码格式]
病人姓名或医生姓名(PN类数据)的编码包括拼音(或英文),也包括汉字。采用“=”
作为汉字前后的分割符号。格式如下:
[拼音或英文]3D 1B 24 29 41 <中文机器内码> 1B 28 42 3D [如需要,补一个空格
]
其中,在 1B 24 29 41 的前面和 1B 28 42后面各加了一个3D,即“=”。需要说明
的是,拼音(或英文)姓名格式根据DICOM一般为LastName^FirstName,AGFA把LastName和
FirstName都使用了全部拼音,例如zhao ru tang^zhao ru tang。
例如:3d  1b  24  29  41  cb  ce  d1  a7  c3  f4  1b  28  42  3d  20
本例中,没有保存拼音信息。

[部位/子部位编码格式]
部位(00081030)和子部位(0008103E)的编码里既包括:中文描述,“(”,英文,
“)”。注意两个括号都是全角的汉字。即:
例如:
1b  24  29  41  d0  d8  b2  bf  a3  a8  1b  28  42  63  68  65
  73  74  1b  24  29  41  a3  a9  1b  28  42  20
表示:
胸部(chest)
 楼主| 发表于 2003-9-9 03:12:01 | 显示全部楼层

[原创]AGFA的汉字编码方式

不好意思,忘了说明,上面的信息是我们根据所接收到的AGFA CR的图像信息所猜测
的,不是正式文档。希望能够抛砖引玉,大家共同讨论。如需正式文档,还需要问
AGFA要,各位如有,望不吝共享。
发表于 2003-9-9 17:47:40 | 显示全部楼层

[原创]AGFA的汉字编码方式

不如UTF-8,unicode目前是做的最好的,AGFA那些历史遗留问题肯定被UNICODE代替
发表于 2005-7-14 09:47:21 | 显示全部楼层

[原创]AGFA的汉字编码方式

标准是硬道理
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

快速回复 返回顶部 返回列表