セクションとサブセクションは、構造化された文書の構成要素です。どの文書にもデフォルトで少なくとも1つのセクションが含まれているため、おそらく気づかないうちに数え切れないほど使用していることでしょう!
経験豊富なプロであれ、これから始める人であれ、この記事ではセクションとサブセクションの基本について説明します。
また、4D 20 R7に搭載された4D Write Proの新機能もご紹介します。 4D Write Proは、これらの要素の管理をこれまで以上に簡単かつ強力にします。
ドキュメント、セクション、サブセクションを知る
これらの概念についてすでにご存知の方は、読み飛ばしていただいて結構です。それ以外の方は、基本的なことを学びましょう。
はじめに述べたように、ドキュメントには少なくとも1つのセクションが含まれます。複数のセクションがある場合は、セクション区切りで区切られます(これについては後で説明します)。
文書
まずはドキュメント自体から見ていきましょう。パディングや用紙サイズ、背景色、枠線など、さまざまな属性を設定できます。
セクション
セクションはドキュメント内のセグメントで、背景色や余白などのプロパティを継承することができます。デフォルトでは、特に指定しない限り、セクションはドキュメントの属性を反映します。各セクションは、独自のヘッダーとフッターを持つこともできます。
サブセクション
セクションとは異なり、サブセクションはあなたが作成した場合にのみ存在します。しかし、サブセクションとは一体何なのでしょうか?
2つのタイプがあります:異なる最初のページと 異なる 左右のページです。セクションがドキュメントの属性を継承するように、サブセクションも親セクションの属性を継承します。
セクションとサブセクションの視覚化
上の文書には4つのセクションがあります:
- セクション1:緑色の背景にヘッダー。
- セクション2:背景が紺色で、ヘッダーがない「異なる最初のページ」。
- セクション3:ヘッダーのない “異なる最初のページ “と、ヘッダーのある “異なる左右のページ”。
- セクション4:フッターのある2段組で、同じ1ページ目、左ページ、右ページ(サブセクションなし)。
最後に、最初の3つのセクションには、セクションの終わりにセクション区切り(赤いダッシュで表現)があるが、4番目にはない(つまり、5番目のセクションはない)。
これらの機能はすべて、セクションであれサブセクションであれ、インターフェイスで定義したものであれ、プログラムで定義したものであれ、内部ストレージに保存される。
上記のすべては、4D Write Proの多くのバージョンで利用可能です。それでは、新機能に移りましょう!
4D 20 R7 の新機能の紹介
セクションの削除
今までは、セクションの管理は簡単そうに見えたかもしれませんが、もっと複雑でした。
4D Write Proのセクションは、ユニークな内部識別子を持っていません。ドキュメント内の位置に基づいてインデックス化されています。セクションを削除すると、それ以降すべてのセクションのインデックスがそれに応じて移動します。セクションの区切りだけを削除すると、セクションがマージされ、予期せぬ書式変更になることがよくあります。この課題は4D Write Proに限ったことではなく、Wordや Pagesを含む多くのワープロに共通するものです。
新しいコマンド
新しいコマンド(WP DELETE SECTION )により、このような問題を起こさずにセクションを削除することができます。このコマンドは、セクションの内容と特性を完全に削除し、意図しない結合を防ぎます。
ただし、ドキュメントには必ず少なくとも1つのセクションが含まれることを忘れないでください。このコマンドを使用するには、ドキュメントに少なくとも2つのセクションが必要です。
サンプル
文書のセクション4を削除する (セクション4が存在すると仮定する。そうでない場合はエラーが発生する)
WP DELETE SECTION ($document;4)
複数のセクションを削除したい場合は、削除するセクションの数を追加してください。
WP DELETE SECTION ($document;4;3)
新しい標準アクション
この機能は標準のセクション/削除アクションとしても利用できます。これはボタンやメニュー項目としてインターフェイスで使うことができます。コマンドとの唯一の違いは
- このコマンドを使用すると、削除の確認が行われます(覚えておいてください:セクションは大きく大量になる可能性があります)。
- 一度に削除できるセクションは1つだけです。
とはいえ、意図せず削除してしまっても、”取り消し “のおかげで以前の状態に戻すことができる。これはマジックだ。
では、深層部では何が起こるのか?
セクションを削除すると、以下のようにすべてが削除されます:
- セクションに含まれるドキュメント本体の部分
- セクションとサブセクションのヘッダーとフッター
- セクションにアンカーされている画像とテキストボックス
また、後続のセクションのインデックスはデクリメントされるので、この削除の影響を受ける画像やテキストボックスのアンカー番号も自動的にデクリメントされることに注意してください。4D Write Proは、このような心配をする必要はありません!
ページは消えても、画像はドキュメントに残ります。
画像やテキストボックスがあるページ(仮に20ページとします)にアンカーされており、セクションが削除された後にそのページが存在しなくなった場合、その画像(またはテキストボックス)はドキュメント内に残ります。
サブセクションの削除
4D 17 R3からは、WP DELETE SUBSECTION コマンドを使ってサブセクションを削除することができます。その名前が示すように、「明確な最初のページ」または「明確な右ページと左ページ」のどちらかを削除します。今回は、削除される内容が異なり、改良されている。
以前と同様、コンテンツ(本文)は削除されないが、ヘッダー、フッター、すべてのスタイリング・オプション(フレーム、マージン、背景色など)は削除される。
では何が新しくなったのか?
これらのサブセクションにアンカーされている画像やテキストボックスも削除されるので、再作成しても再表示されるとは思わないでください。ヘッダー、フッター、画像、それらにアンカーされているテキストボックスを再作成する必要があります。削除した直後に「元に戻す」(マジック!)だけで、元の状態に戻すことができます。
以上のことは、プログラミングで作業していても、インターフェイスを使っていても、すべて当てはまります。異なる最初のページ」または「異なる左右のページ」オプションのチェックを外すと、プログラミングでサブセクションを削除するのとまったく同じ結果になります!
WP DELETE SUBSECTION($section; wk first page)
WP DELETE SUBSECTION($section; wk left page)
属性のリセット
さて、新機能の最も興味深い部分です。
セクションとサブセクションの属性は、未定義の場合、親から継承されます。セクションの場合は、ドキュメントの属性となり、サブセクションの場合は、セクション自体の属性となります。
WP RESET ATTRIBUTES コマンドは、セクションやサブセクションのすべての属性を同時に削除できるように変更されました。この場合、コマンドにセクションまたはサブセクションのパラメータを与えるだけで、属性名は入力しないでください!
WP RESET ATTRIBUTES ($section) // all attributes of the section shall be reset!
WP RESET ATTRIBUTES ($subSection) // all attributes of the subsection shall be reset!
実例
最初のセクションは、緑色の背景という重要な特徴を持っていましたね。
このセクションの属性を削除すると、背景はドキュメントの背景色である白に戻ります。覚えておいてください:section属性はもはや存在しません!これが継承のすべてです。ドキュメントの背景が灰色になった場合、セクションも灰色になります!
属性をリセットする前 ¯ 属性をリセットした後
つ目のセクションは、最初のページのサブセクションが異なっていました。どうなるでしょうか?
2番目のセクションの属性を削除すると、背景が紺色として明示的に定義されている異なる最初のページを除いて、水色の背景も白に戻ります。
属性をリセットする前 ¯ 属性をリセットした後
一方、最初の(異なる)ページの背景色を他のセクションと同じ水色にしたい場合、”different first page “サブセクションの背景色属性をリセットする必要があります。
WP RESET ATTRIBUTES ($subsection;wk backgroundColor)
同様に、このサブセクションのオーバーライドをすべて削除して、依存しているセクションの属性を継承することも可能です。
// no attributes = all attributes !
WP RESET ATTRIBUTES ($subsection)
異なる最初の ページと 異なる左右のページを持つ3番目のセクションは、 WP RESET ATTRIBUTES が適用されても背景色が失われる ことはありません 。
これは、サブセクションの背景色が特別に定義されているからです。従って、(少なくともこのbackgroundColor属性については)セクションを継承していないので、黄色いままです。
属性をリセットする前 ¯ 属性をリセットした後
この機会に、右/左のサブセクションは(明らかに)互いに無関係に存在することはできませんが、それにもかかわらず独立したものであることを指摘(または注意)したいと思います。これらは別々の属性を持つことができ、したがって、互いに独立してリセットすることができる!
$subSection:=WP Get subsection(WP Get section($document; 3); wk right page)
WP RESET ATTRIBUTES($subSection)
$subSection:=WP Get subsection(WP Get section($document; 3); wk left page)
WP RESET ATTRIBUTES($subSection)
属性をリセットする前 ◦ 属性をリセットした後
最後に、同じコマンドを4番目のセクションに適用すると、(元の文書と同じように)1列の 縦書きモードにリセットされます。
属性リセット前 ◦ 属性リセット後
新しいインターフェイス項目
最新のツールバーとサイドバーの更新には、セクションの削除や属性のリセットのための新しいボタンと関連メニューが含まれています。これらのツールは、ドキュメント内のカーソルの位置に応じたコンテキスト固有のアクションを提供します。
まとめ
この記事で、4D Write Proのセクションとサブセクションについて理解を深めていただけたと思います。新しいコマンドと インターフェイスの強化により、より正確でスタイリッシュに文書を微調整できるようになりました。いつものように、フォーラムでご意見や経験を共有することをお勧めします!