我有一个程序,可以将Microsoft Word文件转换为XML文件。但是,当Word文件由从插入-〉符号窗口插入的符号组成时,字体类型“Symbol”程序无法正确转换它。因此,而不是获得适当的符号,我得到了“(“符号为他们每个人。即使当我尝试粘贴这些符号在这里,它出现这样的方式:我们使用Winwordcontrol.document.application.selection.range来选择行。这个类有Text,First或etc方法。它以字符串的形式返回我选择的行。当程序试图将选定的行转换为xml时,它返回“(”而不是插入的Word符号。其余的行都被正确转换。
enter image description here
我试图获取这些符号的Unicode,但它返回给我的是“(”符号的Unicode。
1条答案
按热度按时间hc2pp10m1#
Symbol字体中的
/
字符假装具有十进制代码点164(0xA 4),但Word以不同的方式保存它,即:另请参见MS Word: Getting the actual ASCII code of an inserted symbol。它也被复制为private use area中的Unicode字符(以F0和all开头)。
简单的解决方案,因为我不知道从XML中获取这些字符的正确方法:
1.不要使用Symbol或其他字体来表示符号;Unicode可以包含所有这些。
1.在代码中,使用自定义Map函数将F0字符Map回其Unicode等效项,然后在从Word接收的字符串中替换它们。
2的实现:
输出:
测试数学