首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在智能设备开发中使用奥里雅字体?

如何在智能设备开发中使用奥里雅字体?
EN

Stack Overflow用户
提问于 2011-06-21 17:59:30
回答 2查看 578关注 0票数 1

我正在开发一个基于WINDOWS CE5.0的设备的应用程序。它要求完全使用奥里亚语(印度地区语言)。由于visual studio使用英语作为标准语言,请告诉我如何继续?我试图复制WINDOWS CE设备的WINDOWS/FONTS文件夹中的字体,但当我重新启动设备时,该字体文件消失了。我用c#开发了应用程序,并在开发系统中将标签文本转换为oriyaa。它在开发系统上看起来很好,但当我将它部署到设备中时,所有标签文本都以英语显示。我不知道发生了什么?我还需要在奥里亚语中设置LABEL.TEXT属性。有可能吗?如何在奥里亚语中接受用户输入?请帮帮忙……谢谢..。

EN

回答 2

Stack Overflow用户

发布于 2011-06-21 15:42:16

我不太清楚您所说的浏览器是什么意思,但是对于Forms,您可以开始使用PrivateFontCollection

您可以从应用程序的文件夹中加载字体,然后根据需要使用AddFontFileAddMemoryFont。因此,现在客户端可以看到您设置的字体中的控件,并且无论是否已安装,它都可用

票数 1
EN

Stack Overflow用户

发布于 2011-06-21 22:24:05

我已经对基于英语的字体使用了以下方法,但我不确定它是否适用于您的情况。这种方法的原始源代码是Chris Tacke (所以nice post @ctacke)提供的一个经过一些修改的用户。

代码语言:javascript
复制
    [DllImport("coredll.dll")]
    private static extern int AddFontResource(string lpszFilename);
    [DllImport("coredll.dll", SetLastError = true)]
    private static extern int SendMessage(IntPtr hWnd, int wMsg, IntPtr wParam, IntPtr lParam);
    static IntPtr HWND_BROADCAST = (IntPtr)0xFFFF;
    const int WM_Fontchange = 0x001D;

    private static void RegisterFont(string aFontPath, string aTargetFontPath)
    {
        IntPtr thir = (IntPtr)0;
        IntPtr fourth = (IntPtr)0;
        try
        {
            if (!System.IO.File.Exists(aTargetFontPath))
                System.IO.File.Copy(aFontPath, aFontTargetPath);
        }
        catch { throw; }
        int _Loaded = AddFontResource(aFontTargetPath);
        if (_Loaded != 0)
            SendMessage(HWND_BROADCAST, WM_Fontchange, thir, fourth);
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6423482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档