0

パンゴシャープでテキストを書く必要がありますが、文字数によっては幅をスケーリングします。

これは私が現在持っているものです:

var layout = new Pango.Layout (Core.PangoContext);
layout.FontDescription = Pango.FontDescription.FromString (
  "'Courier New' CLM  20");
layout.SetMarkup (@"<span  color='black'>12</span>");
Area.GdkWindow.DrawLayout (Core.Area.Style.TextGC (
  StateType.Normal), 50, 50, layout);

それを達成するためのヒントを見つけることができませんでした。Pango で XY スケールのみを見つけましたが、X または Y だけのスケールはありません。

4

1 に答える 1

0

最後に解決策を見つけました:

(cc=カイロコンテクスト)

layout.FontDescription = Pango.FontDescription.FromString ("Courier New CLM  " + FontSize);
layout.SetText (Position.ToString ());
cc.Scale (1, 1);
cc.MoveTo (NoteCenterX, NoteCenterY - 12);

cc.Scale (ScaleX, 1);
Pango.CairoHelper.ShowLayout (cc, layout);
cc.Scale (1 / ScaleX, 1);
于 2012-05-06T21:29:48.097 に答える