2012年9月23日日曜日

c# 最近しったこと。

■コンボボックスのイベントで、SelectedIndexChangedだと、呼ばれすぎて困るんだけどSelectionChangeCommittedだと呼ばれないときがあって困るとき。

http://gpsoft.dip.jp/hiki/?VC.NET+%A1%C1+%A5%B3%A5%F3%A5%DC%A5%DC%A5%C3%A5%AF%A5%B9%A4%CE%C1%AA%C2%F2%CA%D1%B9%B9%A4%F2%CA%E1%C2%AA%A4%B9%A4%EB


■TTCの場合に、Glyphtypefaceを作るとき
#に何番目のフォントかを指定する。

            Uri u = new UriBuilder("file", "", -1, フォントファイルのパス, #1).Uri;
            GlyphTypeface typeface = new GlyphTypeface(u);

ttcの数を取得するようなAPIはいまのところわかってない状況。


■typefaceからfontのfamilynameを取得する
カルチャというものの指定が必要なので、とりあえず、現在のカルチャを指定して、
それだとうまく取れないフォントがおおいので、取得できないときはen-USで取得。


IDictionary dictfacename = typeface.FamilyNames;
string FamilyName = dictfacename[CultureInfo.CurrentCulture];
if (String.IsNullOrEmpty(FamilyName))
{
    CultureInfo tmpCurrentCulture = new CultureInfo("en-US", false);
    FamilyName = dictfacename[tmpCurrentCulture];
}
0 件のコメント:
コメントを投稿