今天的故事顺着上一次的说,没啥技术问题,就是好玩。
有个客户说,他做了一个包含“英越(越南)中”三国语言的项目,越南语在组态和模拟时都正常,下到面板里就乱了,里面有不少字符显示方块。
拿到项目以后,发现客户把越南语组态在法语在线语言下面了,问他为什么,他说越南语跟法语同源,应该没问题。于是测试,果然跟他说的一样,显示方块。
跟同事们一说,同事们也好奇,凑过来一看,说:这可跟法语差远了。知识就是力量,自控的技术支持认识法语也很重要。
于是要求客户把越南字符移到越南在线语言下。
问题解决。
这是为什么呢?这是因为 WinCC flexible 还不是完全的Unicode软件。如果是(比如跟IE一样,只要设了Unicode,只要网页本身是Unicode,就无论什么文字都能正常显示。),WinCC flexible 就完全不需要有那么多语言可选。为什么不开发成完全的Unicode软件呢?我不是研发,我不知道。但是咱们可以推测一下:
会不会是Windows CE的问题呢?不是。Windows CE是完全支持Unicode的。
那么最有可能的原因是什么呢?WinCC flexible 也支持不少Protool时代的老面板,还要考虑老面板项目移植到新面板的问题,因此编译器可能要与老软件或面板的体系兼容,而没有设计成全Unicode系统。
总结一下多语面板项目组态要点:
尽量在Windows相应默认语言下编辑或操作相应语言的文字。因为输入法、导入的文本源、或者某些转换工具不是Unicode的。
WinCC flexible的在线语言已经几乎全了,使用什么语言的字符,就放在什么在线语言下。除了英语。