2011-06-21 5 views
1

私はWINDOWS CE5.0ベースのデバイス用のアプリケーションを開発しています。オリヤ語(インドネシア語)を完全に使用する必要があります。ビジュアルスタジオでENGLISHを標準言語として使用しているので、進め方を教えてください。フォントをWINDOWS CEデバイスのWINDOWS/FONTSフォルダにコピーしようとしましたが、フォントファイルが消えるデバイスを再起動すると、私はC#でアプリケーションを開発し、開発システムのラベルテキストをoriyaaに変更しました。開発システムはうまく見えますが、デバイスに展開すると、すべてのラベルテキストがENGLISHに表示されます。私は何が起きているのか知りませんか? ORIYA言語でLABEL.TEXTプロパティを設定する必要もあります。出来ますか?オリリアでのユーザー入力方法アプリ内のフォルダからフォントを読み込むことができますが、PrivateFontCollectionスマートデバイス開発でのORIYAフォントの使い方は?

を使用して行くことができますが、ブラウザによってどのような意味としてではなくFormsのために.....おかげで...

+0

ブラウザの意味は、アプリケーションまたはブラウザコントロールに表示されますか? – V4Vendetta

+0

は、私は私の答えを投稿した後、SOの関連質問を発見したこれらの関連http://stackoverflow.com/questions/6421729/how-to-use-oriya-language-font-in-net-windows-desktop-application – V4Vendetta

+0

ています: http://stackoverflow.com/questions/3104949/how-to-programatically-install-a-font-in-windows-ce – yms

答えて

1

非常にわからない助けてくださいとその後、あなたの必要性に従って AddFontFileまたはAddMemoryFontを使用しています。だから今のクライアントは、あなたが設定されているフォントのコントロールを見ることができると私は英語ベースのフォントと、次のアプローチを使用していた

0

かかわらず、その設置のか、それにその利用できるが、それは上で動作するかどうか、私にはわかりませんあなたの場合。このアプローチの元のソースは、いくつかの変更を加えてクリスTacke(SOユーザ@ctacke)からnice postあります。

[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); 
    } 
関連する問題