【问题标题】:How to add Ⓒ symbol in resource file to support in Japanese Windows OS.如何在资源文件中添加Ⓒ符号以支持日文 Windows 操作系统。
【发布时间】:2017-02-15 14:26:28
【问题描述】:

我需要在我的资源文件 (.rc) 中添加版权符号Ⓒ。当我在“.rc”文件中添加这个符号并在日文操作系统上运行应用程序时,它会显示?符号代替。 下面是我的代码行。

LTEXT "Ⓒ 2017 Comapny Inc. All rights reserved.",IDC_COPYRIGHT,7,30,211,8

我尝试在日语语言环境机器上编辑此符号,但问题仍未解决。 Ⓒ 符号转换为 ?保存 .rc 文件时的符号。 在日本机器上,我看到上面的代码如下:

LTEXT "? 2017 Comapny Inc. All rights reserved.",IDC_COPYRIGHT,7,30,211,8

 请分享您的想法如何做到这一点 

【问题讨论】:

  • 你为什么不用Unicode?​​span>
  • 生命太短暂,无法让您解释您告诉文本编辑器使用哪种文本编码、文件是否有 BOM 以及字符串如何在屏幕上呈现。请改用(C) 2017
  • 或者只是说版权。如果您的应用程序已本地化,翻译人员将知道如何处理它。标志性符号并非总是如此。此外,自 2000 年以来,法律上没有理由使用“保留所有权利”。 en.wikipedia.org/wiki/All_rights_reserved
  • @HansPassant 将该文件保存为 Unicode(代码页 1200)并不是很多工作。在 Visual Studio 中,无论如何这是处理非 ascii 字符的唯一明智方法,否则当您将该文件复制到设置为使用英语的 PC 时,您会感到非常惊讶。

标签: c++ winapi unicode


【解决方案1】:

日语 Windows 语言环境的 ANSI 代码页是 932(类似于 Shift-JIS)。此编码不包括版权符号(U+00A9 ©),也不包括您上面提到的字符(带圆圈的字母 C,U+24D2 ,这可能不是您想要的)。如果您在代码页 932 中编译资源文件,则必须使用纯 ASCII (c)

或者,如果您可以将 RC 文件转换为支持 Unicode 的编码,您可以使用任何您喜欢的字符。这可能是 UTF-16LE(记事本错误地描述为“Unicode”的编码),或者如果您包含 #pragma code_page(65001),则为 UTF-8(但您必须确保不在资源编辑器中进行编辑,否则会搞砸) .

【讨论】:

  • 为了获得更多乐趣,您可以在资源文件中包含多个#pragma code_page()。不同的部分会以不同的方式解码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-25
  • 2012-02-04
  • 1970-01-01
  • 1970-01-01
  • 2016-08-30
  • 2011-03-19
相关资源
最近更新 更多