[]
        
(Showing Draft Content)

セルの配置とインデント

セル内のテキストの配置またはインデントを設定できます。hAlignvAlignメソッドを使用して、テキストの配置を垂直方向および水平方向に指定できます。インデントを指定するには、textIndentメソッドをします。


vAlignメソッドは、次の図に示すように、セル編集モードにおいてテキストの垂直方向の配置もサポートします。


注: セルの編集モードでは、テキストの垂直方向の配置はeditable div要素のみでサポートされます。textarea要素ではサポートされません。デスクトップデバイスを使用してテキスト型セルを処理する場合、セル編集モードでのテキスト垂直配置を実装するには、textarea要素をeditable divに置換する必要があります。


また、Ime-modeは、Google Chrome、Mozilla Firefoxの2つのブラウザでは機能しません。

コードの使用

次のサンプルコードは、B2セルに対して垂直および水平方向の配置を設定し、B3セルに対してテキストインデントを指定します。

// 水平方向および垂直方向の配置を中央揃えに設定します。
var cell = activeSheet.getCell(1, 1, GC.Spread.Sheets.SheetArea.viewport);
cell.hAlign(GC.Spread.Sheets.HorizontalAlign.center);
cell.vAlign(GC.Spread.Sheets.VerticalAlign.center);
cell.value("Alignment");
                
// 文字列をインデントします。
cell = activeSheet.getCell(2, 1, GC.Spread.Sheets.SheetArea.viewport);
cell.textIndent(2);
cell.value("Indent");

選択範囲内で中央

SpreadJSは、セルを結合せずに、選択したセルのコンテンツを列全体の中央に配置するのに役立つ「選択範囲内で中央」の水平方向の配置を提供します。このタイプの水平方向の配置は、 Horizo​​ntalAlign.centerContinuous 列挙オプションを使用して設定できます。


次の表は、「選択範囲内で中央」の水平方向の配置を使用した場合の、SpreadJSの動作を示しています。

SpreadJSの動作

基本的な動作として、値が設定された各セルの右側にある連続する空のセルを探し、その範囲内でそれぞれの値を中央に配置します。


配置が設定された範囲に後で値が入力されると、基本動作に基づき中央揃え位置が更新されます。


選択は常に値が設定されているセルから始まります。したがって、範囲がセルの左から選択された場合でも、基本動作に基づき、値のあるセルから右側にある空白セルの範囲で中央に配置されます。


列のサイズが変更されると、中央揃え位置が調整されます。


次のコード例は、ワークシートに「選択範囲内で中央」の水平方向の配置を実装します。

activeSheet.getCell(1,1).value("選択範囲内で中央");
activeSheet.getRange(1, 1, 1, 5, GC.Spread.Sheets.SheetArea.viewport).hAlign(GC.Spread.Sheets.HorizontalAlign.centerContinuous);

「選択範囲内で中央」の水平方向の配置は、SpreadJSの他の機能と次のように相互作用します。

  • オーバーフロー - 「選択範囲内で中央」アライメントのコンテンツが選択した範囲の幅を超えると、両側へのオーバーフローがトリガーされます。

  • テキストを折り返す - 行の高さプロパティは、セルに「選択範囲内で中央」領域の境界内でテキストを折り返すように強制します。

  • 縮小して合わせる - オプションが選択されている場合、widthプロパティを使用して実際のフォントサイズが計算され、選択した範囲にコンテンツが収まります。

  • 会計番号の形式 - 「選択範囲内で中央」は、テキストを直接中央揃えにするのではなく、記号と値を横に伸ばします。

  • テキストインデント - 「選択範囲内で中央」は、インデントを0にロックします。

  • 方向 - 「選択範囲内で中央」は方向を0にロックします。

  • 結合されたセル - 結合されたセルは、選択スタイル全体で中央を使用できません。セルが結合されると、「選択範囲内で中央」は「中央」に置き換えられます。

水平方向配置の均等割り付け

SpreadJS では、均等割り付け(インデント)機能を使用して、セルの幅全体に文字列を均等に配置できます。均等割り付け(インデント)オプションは、中央揃えとテキストの折り返しを組み合わせた拡張機能です。

均等割り付け機能を使用することで、テキストのすべての行の各単語はセルの幅に合わせて均等に配置され、インデント値が適用される場合はセルの左側と右側の両方がパディングされます。

したがって、均等割り付けオプションの適用時にインデント値を設定すると、各行の両端が余白に揃います。このように水平方向の配置を設定するには、horizontalAlign.distributed 列挙体を使用します。

distributed-halign

style.hAlign = GC.Spread.Sheets.HorizontalAlign.distributed; 
activeSheet.setStyle(1, 1, style, GC.Spread.Sheets.SheetArea.viewport); 
activeSheet.getCell(1, 1).value("This is Distributed Alignment"); 

水平方向配置の「均等割り付」は、以下の方法で SpreadJS の他の機能と相互作用します:

  • 折り返して全体を表示する – 内容に「均等割り付」が指定された場合、文字列の折り返し機能が自動的に実装されるため、特に設定する必要がありません。

  • 縮小して全体を表示する - 均等割り付が指定された場合、このオプションが無効になります。

  • インデント - 均等割り付が指定された場合、セルの左側と右側の両方からインデントを設定します。

  • 最後の行を両端揃えする - 均等割り付が指定された場合、このオプションが無効になります。

  • 省略記号を表示 - 均等割り付が指定された場合、このオプションが無効になります。

デザイナの使用

[セルの書式設定]ウィンドウの[配置]タブにアクセスすると、配置およびインデント機能を使用できます。[ホーム]タブ> [配置]グループ>右下矢印ボタンをクリックして、[セルの書式設定]ウィンドウを開きます。