CodeZine(コードジン)

特集ページ一覧

Silverlight入門(2)-図形やテキストを扱うオブジェクト

図形、イメージ、テキストなどの描画や塗りつぶしのやり方

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2007/11/26 14:00
目次

テキスト

 テキストを表示するにはTextBlockオブジェクトを用います。Silverlightのテキスト表示は、本稿執筆時点のバージョン1.0では極めて貧弱な機能しか提供されていません。HTMLや文書編集を専門としたソフトウェアのような複雑な構造のテキスト表現は、不可能ではありませんがXAMLを手書きで記述する場合は非常に手間がかかります。文書処理を専門としたコントロールの登場は将来に期待するしかなく、TextBlockオブジェクトによる文書の表現は簡素なものに止めた方が無難です。

TextBlockオブジェクト
<TextBlock .../>

 TextBlockで表示するテキストを表す文字列はTextプロパティに設定します。

Textプロパティ
<object Text="string" .../>
<object>string<object> 

 stringには、表示するテキストを表す文字列を指定します。Textプロパティを設定する方法は2つあり、1つはText属性から文字列を指定する方法、もう1つはコンテンツ要素としてTextBlock要素内に直接文字列を指定する方法です。複雑な構造のテキストを表示する場合は後者の構文を利用することになります。

 表示されるテキストの大きさはFontSizeプロパティで調整できます。

FontSizeプロパティ
<object FontSize="Double" .../>

 デフォルトでは14.666ピクセルが設定されています。

 フォントの種類はFontFamilyプロパティから設定できます。

FontFamilyプロパティ
<object FontFamily="string" .../>

 当然、フォントはSilverlightに読み込まれている適切な名前でなければなりません。Silvelightはクロスプラットフォームを目的としているため、システムのフォントを利用しては環境に依存してしまいます。Silverlightプラグインは次の9つのフォントをサポートしています。通常は、これらのフォントのいずれかを選択します。

  • Arial
  • Arial Black
  • Comic Sans MS
  • Courier New
  • Georgia
  • Lucida Grande/Lucida Sans Unicode
  • Times New Roman
  • Trebuchet MS
  • Verdana

 ここで重要なのは、現時点では日本語のフォントをサポートしていないことです。外部のフォントを参照させることも可能ですが、日本語フォントはファイルサイズが大きいため現実的な選択肢ではありません。この問題は日本語フォントを含むSilverlight日本語版の登場を待つしかありません。

 テキストの塗りつぶし方法はForegroundプロパティで指定できます。表示されるテキストの色を変更したい場合に利用します。

Foregroundプロパティ
<object Foreground="Brush" .../>
<object>
 <object.Foreground>
  <Brush" .../>
 </object.Foreground>
</object> 

 図形のStrokeやFillプロパティと同じようにBrushオブジェクトを指定してテキストの内部をどのように塗りつぶすかを表します。

コード05 test.xaml
<TextBlock xmlns="http://schemas.microsoft.com/client/2007"
FontSize="30" FontFamily="Comic Sans MS" Foreground="Red"
>
Kitty on your lap </TextBlock>
実行結果
実行結果

 上記のコードは、Comix Sans MSフォントを用いて"Kitty on your lap"という文字列を表示します。FontSizeも変更しているため、デフォルトのサイズよりもやや大きめのテキストが表示されます。また、Foregroundプロパティを変更して赤色でテキストを表示します。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

バックナンバー

連載:Silverlight入門

著者プロフィール

  • 赤坂 玲音(アカサカ レオン)

    平成13年度「全国高校生・専門学校生プログラミングコンテスト 高校生プログラミングの部」にて最優秀賞を受賞。 2005 年度~ Microsoft Most Variable Professional Visual Developer - Visual C++。 プログラミング入門サイト Wis...

あなたにオススメ

All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5