DCM4CHE 无法显示日文字符

DCM4CHE cannot display Japnese Character

我正在使用 dcm4che 作为我的 PACS,我正在插入一个包含日文字符患者姓名的 DICOM 文件。 但是dcm4chee web based url 不支持日文字符并且显示患者姓名为乱码(如问号和方块)。

对于 DCM4CHE,我使用 postgresql 作为数据库。在数据库属性中,它显示 'Encoding as UTF8'、'Collation as English_India.1252' 和 'Character Type as English_India.1252'。我的数据库是否支持日语字符? 我是数据库的新手,我们将不胜感激。

编辑: 此问题与 PACS 无关。我获得了一个带有日本章程的有效 DICOM 文件(他们使用的特定字符集为 \ISO 2022 IR 87 )并将其发送到 PACS。它在 PACS 中正确显示。所以问题出在我的 DICOM 文件上。我还将特定字符集插入为“\ISO 2022 IR 87”。但我仍然收到乱码的日文字符。

我正在使用 MergeCom Dicom 实用程序并使用 'MC_Set_Value_From_String' API 来插入日文字符串。我错过了什么吗?使用 'MC_Set_Value_From_String' 不能插入日语字符吗? 我正在考虑使用 API MC_Set_Value_From_UnicodeString.

UTF-8 支持所有 unicode 代码点,包括日文。所以不太可能是数据库的问题。

特定字符集(0008,0005)标签的内容是什么? dicom 的默认字符编码是 ASCII。 dicom 规范中有一个 section 提供了使用日语的示例。

我可以解决这个问题。

问题与编码有关。对于 Unicode 转换,我使用的是代码页为 UTF-8 的 windows API "WideCharToMultiByte"。这没有正确转换日文字符,已通过使用代码页 50222 修复。 您可以从下方 link 找到所有完整的代码页。 https://msdn.microsoft.com/en-us/library/dd317756(VS.85).aspx