2016-09-27 83 views
0

我有一个现有的DOORS模块,碰巧有一些富文本条目;这些条目在其中包含一些符号,如'卷曲'引号。我正在尝试升级一个导出LaTeX源文件的DXL宏,问题是这些高数字符号不被TexMaker的导入函数视为“标准UTF-8”(并且在任何情况下都可能不会被处理由Xelatex或其他转换器)。我不能简单地在DXL中使用UnicodeString函数,因为这些函数会打破富文本的其余部分,显然,字符标识符charOf(decimal_number_code)仅适用于基本字符集,即少于某些数字代码值。例如,charOf(8217)应该创建一个右弯单引号,但是当我沿着如何搜索字符串中的任何Unicode符号?

if (charOf(8217) == one_char) 

行尝试代码我从来没有得到匹配。我确实复制了DOORS模块的卷积报价,并通过在线unicode分析器验证它确实是Unicode十进制值8217。

那么,我在这里错过了什么?我只是希望能够检测到任何符号字符,正确识别它,然后将其替换为例如输出流中的\textquoteright

我的总体设置适用于较低的数字符,因为这个工程: (c是某一个字符的字符串拉)

thedeg = charOf(176) 
if(thedeg == c) 
     { 
      temp += "$\\degree$" 
     } 

回答

0

得到了DXL一些帮助在IBM forums编码专家过来。

竞标重要的东西(有一些有用的代码段有作为):

嘿,你是正确的,似乎intOf(焦炭)和charOf(INT)都做了一些 模256,因此,将除此之外的任何东西。尝试:

int i=8217; 
char c = addr_(i); 
print c; 

,然后允许与任何输入字符的c比较。