テキストを縦書きで出力できますか?

文書番号 : 33881     文書種別 : 使用方法     登録日 : 2012/11/21     最終更新日 : 2015/01/06
文書を印刷する
対象製品
ActiveReports for .NET 7.0J
詳細
レポート上に文字を縦書きで出力する方法は、レポートの形式によって異なります。
  1. セクションレポートの場合
  2. ページレポートの場合


セクションレポートの場合

以下1.および2.の手順を両方とも行うことで、文字列を縦書きで出力できます。
※複数行文字列の縦書きには対応していません。

  1. 文字列を縦方向に1行で出力するように調整する
    TextBoxやLabelコントロールのMultiLineプロパティを"True"に設定した上で、以下のいずれかの方法により、文字列を縦方向に1行で出力するように調整します。

    方法1)コントロールの幅を狭める
    方法2)Paddingプロパティを使用してコントロール内の余白を調整する
    方法3)1文字ごとに改行する

    方法3のように文字列自体に改行を含める場合、デザイナ上で直接編集したり、プロパティグリッドから編集することが可能です。
    または、以下のサンプルコードのように、コードから設定することもできます。

    ◆サンプルコード(VB.NET)
    Dim sTmp As String
    sTmp = "グ" + Environment.NewLine
    sTmp += "レ" + Environment.NewLine
    sTmp += "ー" + Environment.NewLine
    sTmp += "プ"
    Me.Label1.Text = sTmp

    ◆サンプルコード(C#)
    string sTmp;
    sTmp = "グ" + Environment.NewLine;
    sTmp += "レ" + Environment.NewLine;
    sTmp += "ー" + Environment.NewLine;
    sTmp += "プ";
    this.label1.Text = sTmp;

  2. 文字の方向を縦書き用に設定する
    TextBoxおよびLabelコントロールのVerticalTextプロパティ"True"に設定することで、特定文字(長音記号や括弧など)の描画が縦書き用に最適化されます。

    ただし、Excel、Text、RTFの各エクスポートについては、縦書きは無効になります。

    また、VerticalTextプロパティをTrueに設定した場合、ShrinkToFitプロパティによるフォントサイズの自動縮小は行われません。

    VerticalTextプロパティを使用した縦書きの概要や制限事項、対応文字一覧については、こちらの資料や、製品ヘルプの以下のトピック内の「縦書き」以降の項をご参照ください。

    PowerTools ActiveReports for .NET 7.0J
     - ActiveReportsユーザーガイド
      - 概念
       - セクションレポートの概念
        - セクションレポートのレポートコントロール
         - Label
         - TextBox(セクションレポート)



ページレポートの場合

TextBoxコントロールのWritingModeプロパティ"tb-rl"に設定してください。
文字列が縦書きで出力されます。(長音記号や括弧などの特定文字も縦書き用に最適化されます。)

なお、複数行文字列の縦書きに対応しており、文字列が上から下に向かって描画された後、コントロールの高さにあわせて、自動的に左側に改行されます。

また、以下のような制限事項が存在します。あらかじめご注意ください。
  • ShrinkToFitプロパティは無効になります。
  • HTML形式の描画拡張機能を使用してエクスポートした場合、横方向の中央揃えと左揃え(VerticalAlignのMiddleとBottomに相当)が有効になりません。
  • PDF形式とTEXT形式のエクスポートフィルタ機能を使用してエクスポートした場合、縦書きは無効になります。
  • PDF形式の描画拡張機能を使用してエクスポートした場合、複数行縦書きは正しく表示されません。
関連情報
キーワード
機能・仕様 HowTo デザイン・レイアウト