在 Windows CE 6 下,我使用 AddFontResource() 将 arialuni.ttf(Arial Unicode MS,版本 1.0.1)加载到系统字体列表中,以及我们支持的所有远东语言(日语、韩语、简体和繁体)中文)在文本使用该字体绘制到屏幕时正确显示。
相同的技术不会在 Windows Compact 7 的屏幕上产生远东字符。我得到的是空框而不是屏幕上出现的实际字符,这是我在字体不支持必要的字符集时看到的.
我在两个平台上使用相同的代码和相同的字体文件。我已经调试了代码以验证 a) 操作系统声称字体实际上是通过 AddFontResource() 加载到系统字体列表中的, b) 操作系统声称字体在实际绘制文本之前加载到屏幕设备上下文中,并且 c) 实际的远东字符在我交给 DrawText() 的缓冲区中。 这与在 CE6 下工作的完全相同。
奇怪的是,无论我是否加载 arialuni.ttf,我们支持的东欧语言(俄语、捷克语、保加利亚语)都能在 Windows Compact 7 上正确显示。注册表说默认系统字体是 Tahoma,但我不认为 Tahoma 支持基本的西欧语言以外的任何语言。它不在 CE6 下。
我宁愿不添加或使用其他字体。 Arialuni.ttf 几乎支持我们可能支持的所有语言,而且它已经是我们用于非西欧语言的唯一一种语言。
已经安装了其他几种 true-type 字体,因此该选项(而不是光栅字体)已经在我们的操作系统构建中。
感谢所有想法。
最佳答案
此版本的 arialuni.ttf 确实与 Windows Compact 7 兼容。
不清楚。 OS 图像的某些方面允许 CE6 下的字体映射器正确映射我们的请求,但在 CE7 下则不行。
没有。 CE7 内置的默认 tahoma.ttf 确实支持东欧字符集,但不支持远东字符集。
我们的程序调用 CreateFontIndirect() 来获取 GDI 字体资源的句柄,我们可以在将文本绘制到屏幕时将其选择到屏幕的设备上下文中。此调用使用我们用所需字体的属性填充的 LOGFONT 结构,在幕后,系统的字体映射器组件查看它知道的字体并返回它认为最匹配的字体。
最初,我们只指定了字符高度、粗细和字体系列名称。默认情况下,请求的字符集是 ANSI_CHARSET (0)。这总是返回我们对 CE6 平台上的 arialuni.ttf 字体的引用。不过,在我们的 CE7 平台上,字体映射器将请求映射到 tahoma.ttf 文件。
我修改了 LOGFONT 结构内容以包括请求日语字符集 (LOGFONT.lfCharSet = SHIFTJIS_CHARSET)。在这两个平台上,只有 arialuni.ttf 字体文件支持这种语言,因此两个字体映射器现在总是向我们返回对所需字体的引用。
此更改适用于 CE6 和 CE7 平台。西欧、东欧和远东语言现在都可以正确绘制,因为 arialuni.ttf 支持所有这些字符集以及更多。
目前还不清楚为什么 CE6 平台可以正确映射字体,而 CE7 平台却不能。我们控制设备中内置的字体,因此我们可以保证仅对 arialuni.ttf 提供日语字符支持的唯一性。这显然足以让字体映射器执行我们想要的操作。
关于windows - 远东语言文本不会在 Windows Compact 7 中绘制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37012380/
我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0
设置:狂欢ruby1.9.2高线(1.6.13)描述:我已经相当习惯在其他一些项目中使用highline,但已经有几个月没有使用它了。现在,在Ruby1.9.2上全新安装时,它似乎不允许在同一行回答提示。所以以前我会看到类似的东西:require"highline/import"ask"Whatisyourfavoritecolor?"并得到:Whatisyourfavoritecolor?|现在我看到类似的东西:Whatisyourfavoritecolor?|竖线(|)符号是我的终端光标。知道为什么会发生这种变化吗? 最佳答案
我在我的Rails项目中使用Pow和powifygem。现在我尝试升级我的ruby版本(从1.9.3到2.0.0,我使用RVM)当我切换ruby版本、安装所有gem依赖项时,我通过运行railss并访问localhost:3000确保该应用程序正常运行以前,我通过使用pow访问http://my_app.dev来浏览我的应用程序。升级后,由于错误Bundler::RubyVersionMismatch:YourRubyversionis1.9.3,butyourGemfilespecified2.0.0,此url不起作用我尝试过的:重新创建pow应用程序重启pow服务器更新战俘
这似乎非常适得其反,因为太多的gem会在window上破裂。我一直在处理很多mysql和ruby-mysqlgem问题(gem本身发生段错误,一个名为UnixSocket的类显然在Windows机器上不能正常工作,等等)。我只是在浪费时间吗?我应该转向不同的脚本语言吗? 最佳答案 我在Windows上使用Ruby的经验很少,但是当我开始使用Ruby时,我是在Windows上,我的总体印象是它不是Windows原生系统。因此,在主要使用Windows多年之后,开始使用Ruby促使我切换回原来的系统Unix,这次是Linux。Rub
之前在培训新生的时候,windows环境下配置opencv环境一直教的都是网上主流的vsstudio配置属性表,但是这个似乎对新生来说难度略高(虽然个人觉得完全是他们自己的问题),加之暑假之后对cmake实在是爱不释手,且这样配置确实十分简单(其实都不需要配置),故斗胆妄言vscode下配置CV之法。其实极为简单,图比较多所以很长。如果你看此文还配不好,你应该思考一下是不是自己的问题。闲话少说,直接开始。0.CMkae简介有的人到大二了都不知道cmake是什么,我不说是谁。CMake是一个开源免费并且跨平台的构建工具,可以用简单的语句来描述所有平台的编译过程。它能够根据当前所在平台输出对应的m
深度学习部署:Windows安装pycocotools报错解决方法1.pycocotools库的简介2.pycocotools安装的坑3.解决办法更多Ai资讯:公主号AiCharm本系列是作者在跑一些深度学习实例时,遇到的各种各样的问题及解决办法,希望能够帮助到大家。ERROR:Commanderroredoutwithexitstatus1:'D:\Anaconda3\python.exe'-u-c'importsys,setuptools,tokenize;sys.argv[0]='"'"'C:\\Users\\46653\\AppData\\Local\\Temp\\pip-instal
我遇到了一个非常奇怪的问题,我很难解决。在我看来,我有一个与data-remote="true"和data-method="delete"的链接。当我单击该链接时,我可以看到对我的Rails服务器的DELETE请求。返回的JS代码会更改此链接的属性,其中包括href和data-method。再次单击此链接后,我的服务器收到了对新href的请求,但使用的是旧的data-method,即使我已将其从DELETE到POST(它仍然发送一个DELETE请求)。但是,如果我刷新页面,HTML与"new"HTML相同(随返回的JS发生变化),但它实际上发送了正确的请求类型。这就是这个问题令我困惑的
我有可变数量的表格和可变数量的行,我想让它们一个接一个地显示,但如果表格不适合当前页面,请将其放在下一页,然后继续。我已将表格放入事务中,以便我可以回滚然后打印它(如果高度适合当前页面),但我如何获得表格高度?我现在有这段代码pdf.transactiondopdf.table@data,:font_size=>12,:border_style=>:grid,:horizontal_padding=>10,:vertical_padding=>3,:border_width=>2,:position=>:left,:row_colors=>["FFFFFF","DDDDDD"]pdf.
我在目录“C:\DocumentsandSettings\test.exe”中有一个文件,但是当我用单引号编写命令时`C:\DocumentsandSettings\test.exe(我无法在此框中显示),用于在Ruby中执行命令,我无法这样做,我收到的错误是找不到文件或目录。我尝试用“//”和“\”替换“\”,但似乎没有任何效果。我也使用过系统、IO.popen和exec命令,但所有的努力都是徒劳的。exec命令还使程序退出,这是我不想发生的。提前致谢。 最佳答案 反引号环境就像双引号,所以反斜杠用于转义。此外,Ruby会将空格解
我在安装“redcarpet”gem时遇到以下错误。它在我friend的机器上安装没有问题。(我想安装它来运行yard)ruby版本:1.9.3命令输出:D:\Learning\Common_POM_FW\SampleProjects>yard[error]:Missing'redcarpet'gemforMarkdownformatting.Installitwith`geminstallredcarpet`D:\Learning\Common_POM_FW\SampleProjects>geminstallredcarpetTemporarilyenhancingPATHtoinc