gpt4 book ai didi

c++ - 将盲文字符打印到cmd c++

转载 作者:行者123 更新时间:2023-11-28 05:59:41 25 4
gpt4 key购买 nike

对于一个程序,我需要将盲文字符输出到控制台。

我找到了一种使用如下代码输出 unicode 字符的方法:

#include <iostream>
#include "fcntl.h"
#include "io.h"

using namespace std;

int main() {
_setmode(_fileno(stdout), _O_U16TEXT);
wcout<<L"ĐĄßĞ"<<endl;
return 0;
}

并将 cmd 的字体更改为 Lucida Console。

但是,这种方式存在盲文不显示的问题。实际上,我什至无法将它们复制并粘贴到代码中,因为它们看起来是空白的。在 Linux 中一切正常(我可以看到、复制和粘贴这些字符),但我需要 Windows 应用程序。

我猜想有可能使用这个字符的代码,我试过这种方法,但没有成功。

有人可以帮我完成这个任务吗?

最佳答案

  1. 您需要安装支持 Unicode 的等宽字体。为了尝试这个,我使用了来自 http://www.wazu.jp/gallery/Fonts_Braille.html 的 FreeMono.ttf。 .

  2. 安装字体后,编辑注册表以将字体添加到控制台的字体列表中:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont。 Lucida Console 和 Consolas 应该有一个 000 条目。将另一个零添加到所需的每种字体的值名称。我添加了 000 并设置为 FreeMono

  3. 重新启动控制台,然后编辑其属性以选择字体。在 Windows 10 上,您可能必须在控制台属性中启用“传统模式”并在字体显示之前重新启动控制台。选择它后,您可以再次关闭传统模式。

这是我使用的代码:

#include <iostream>
#include "fcntl.h"
#include "io.h"

using namespace std;

int main() {
_setmode(_fileno(stdout), _O_U16TEXT);
wcout<<L"\u2876\u2877\u2878"<<endl;
return 0;
}

输出(截图):

Screenshot of functional Braille output

注意:我选择的字体不能很好地显示 ASCII,所以我不推荐它,但盲文很好。

关于c++ - 将盲文字符打印到cmd c++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33520197/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com