【问题标题】:How to show backslash in a japanese locale如何在日语语言环境中显示反斜杠
【发布时间】:2012-02-24 15:22:40
【问题描述】:

在我的应用程序中,我使用了反斜杠作为基于文本的活动指示符的一部分(典型的 /-\ 序列。我删除了 | 因为它具有不同的宽度)。一切都很好,直到我看到我的应用程序在日本电脑上运行。反斜杠被替换为日文字符。

我怎样才能避免这种情况?

【问题讨论】:

标签: delphi character-encoding delphi-2009


【解决方案1】:

按住 Ctrl + ` 它应该会改变。

【讨论】:

    【解决方案2】:

    如果用户计算机上的 Unicode 字体支持它,您还可以尝试以下 Unicode 块之一的字符:

    http://en.wikipedia.org/wiki/Arrow_%28symbol%29

    http://en.wikipedia.org/wiki/Box_drawing_characters

    http://en.wikipedia.org/wiki/Unicode_Geometric_Shapes

    http://en.wikipedia.org/wiki/Miscellaneous_Technical_%28Unicode%29

    http://en.wikipedia.org/wiki/Miscellaneous_Symbols

    (仅适用于 VCL,对于控制台应用程序,问题在于 shell 的字符集/代码页)

    但这听起来很有希望(字体部分除外,可能会失控):

    Delphi 2009 中的 Writeln 仍然使用 ANSI(请参阅 System TTextRec),但您 可以使用 UTF8Encode 并将控制台的输出代码页更改为 UTF8 通过调用 SetConsoleOutputCP(CP_UTF8)。你还需要一个好的字体 实际显示 Unicode 字符。

    (来自https://stackoverflow.com/a/268202/80901

    【讨论】:

      【解决方案3】:

      您可以将 .oOo 用作序列。句号,小o,大写O,小o。

      应该适用于任何语言。

      【讨论】:

        【解决方案4】:

        没有使用较新版本的 Delphi 迁移到 Unicode,您必须找到一组可以制作合适动画的低 ASCII 字符。
        我建议使用数字序列 [0-9] 或 [1-3] 来保留您的 3 个字符序列。这应该适用于所有日语代码集。

        【讨论】:

          【解决方案5】:

          在您的 delphi 应用程序中,您可以选择将 Unicode 代码点呈现为反斜杠的字体。但是,大多数标准字体(包括 Windows 中的许多字体)在日语语言环境中会故意显示日元标记而不是反斜杠,这是用户所期望的。

          如果您想真正确定所显示的内容,请使用您自己的字体(Windows 未附带的字体)并将其与您的应用程序一起安装。

          【讨论】:

          • 我接受这个解决方案是因为它回答了我实际提出的问题,并且因为它似乎是保证我的客户看到我所看到的最简单的方法。我最终用这里建议的一系列图像替换了我的 ascii 动画:stackoverflow.com/a/9104518/759899,因为它看起来很简单。
          【解决方案6】:

          你只需要忍受这个。在日本电脑上编辑 shell 脚本之类的东西看起来很奇怪,但你已经习惯了。特别是如果您的应用程序通过 SSH 会话或其他方式远程运行,您可能无法控制将用于呈现它的字体。

          你最好的选择可能是使用更花哨的字符,如╱─╲或类似的东西,并希望用户有一种可以显示它的字体。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2015-05-22
            • 2017-07-17
            • 1970-01-01
            • 2020-07-10
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多