3

.Net 2.0 で混合形式のテキストを描画する方法はありますか? 私は似たようなものを探しています

System.Drawing.Graphics.DrawString()

この方法に関する私の問題は、テキスト全体に対して 1 つの書式スタイルしか許可されないことです。しかし、さまざまな書式スタイルを持つテキストを描画する必要があります (たとえば、テキストの一部に下線を引き、別の部分を太字にするなど)。

どうもありがとう!
オリバー

4

2 に答える 2

1

私はWPF in Actionという本から答えを引き出しています- あなたには2つの選択肢があるようです:

  • カスタム コントロールを作成し、フォントを指定するための独自のマークアップを定義します。これが大変な作業であることは別として、テキストの幅を測定するための、悪名高い不正確な方法に頼らなければなりません (次の単語をどこに置くべきかを判断できるようにするためです)。

  • RTF コントロールを使用します。これは非常に重く、エディット コントロールではなくテキストのように見せるために多くの時間を費やすことになり、希望どおりのテキストを得るには RTF を使用する必要があります。

したがって、.NET 2.0 -- WinForms に行き詰まっている場合、答えは RTF コントロール (別名RichTextBox ) だと思います。まあ、あなた自身のコントロールを書きたくない限り... :-)

この本では、さまざまなラベルやテキスト ボックス コントロールを使用し、それらを手動で (またはプログラムで) 配置し、異なるフォント値を設定することなどについても言及しています。

編集

上記の回答はそのままにしておきます。これがあなたへの私の新しい答えです:

GDI+ を調べる -- GDI+ を紹介する C# コーナーのチュートリアルへのリンクは次のとおりです

そして、ビットマップ/イメージで GDI+ を使用する方法を示すリンクがあります: http://ondotnet.com/pub/a/dotnet/2003/05/05/gdiplus.html

幸運を!

また、GDI+ はかなり重いトピックなので、これに関する本を手に入れたいと思うかもしれません。GDI+ に関する学習のほとんどは、Pro .NET 2.0 Windows Forms and Custom Controls in C# (私の経験では良い本です) という本で行いました。より直接的に GDI+ を対象とした本を探します。

于 2010-05-03T13:39:32.907 に答える