Platioアプリを使用してレコードを印刷するときには、レコードをHTMLとして整形したものをプリンターに渡して印刷します。印刷の設定でCSSを指定することで、印刷時のフォーマットをカスタマイズすることができます。
ここでは、レコードをどのようにHTMLに変換するかを説明します。
まず、全体として、先頭に指定されたヘッダーが、その下にレコード本体が、さらにその下に指定されたフッターが置かれます。レコード本体は、<dl>
の下に置かれ、フィールド名が<dt>
の下に、値が<dd>
の下に置かれます。これが、レコードを印刷するシーン上にあるフィールド全て分繰り返されます。
<!DOCTYPE html>
<html>
<body>
<header><!-- 指定されたヘッダー --></header>
<dl>
<dt class="label cd1d5a64"><!-- 最初のフィールドの名前 --></dt>
<dd class="value cd1d5a64"><!-- 最初のフィールドの値 --></dd>
<dt class="label c9fc4c4b empty"><!-- 2番目のフィールドの名前 --></dt>
<dd class="value c9fc4c4b empty"><!-- 2番目のフィールドの値 --></dd>
<dt class="label cd72e323 hidden"><!-- 3番目のフィールドの名前 --></dt>
<dd class="value cd72e323 hidden"><!-- 3番目のフィールドの値 --></dd>
<!-- ... -->
<dt class="label c00e60ea"><!-- 最後のフィールドの名前 --></dt>
<dd class="value c00e60ea"><!-- 最後のフィールドの値 --></dd>
</dl>
<footer><!-- 指定されたフッター --></footer>
</body>
</html>
フィールドの名前の<dt>
には、二つのクラスが指定されます。一つ目はlabel
、二つ目はフィールドのカラムIDです。フィールドの値の<dd>
にも同様に、value
とカラムIDがクラスとして指定されます。また、値が指定されていない場合には、empty
クラスが指定されます。同様に、フィールドが条件付き表示機能を使用して非表示になっている場合には、hidden
クラスが指定されます。
CSSでこれらのクラスを使用して、特定のフィールドを、例えば、隠したりハイライトすることができます。
例えば、2番目のフィールドを隠すには、以下のようなCSSを指定します。
.c9fc4c4b {
display: none;
}
また、2番目のフィールドを、値が指定されていない場合のみ隠すには、以下のようなCSSを指定します。
.c9fc4c4b.empty {
display: none;
}
hidden
クラスに対しては、デフォルトで表示しないように設定されていますので、表示する場合には、以下のようなCSSを指定します。
.cd72e323.hidden {
display: block;
}
画像やビデオのフィールドには、取得できる場合にはサムネイルが表示されます。
<dt class="label cc89936d">画像</dt>
<dd class="value cc89936d">
<img src="...">
</dd>
例えば、以下のようなCSSを使用することでサムネイルのサイズを調整できます。
.cc89936d img {
width: 100px;
height: 100px;
}
子レコードフィールドがあると、全ての子レコードが<dd>
の子要素として展開されます。
<dl>
<dt class="label referrer">子レコード</dt>
<dd class="value referrer">
<dl>
<!-- 最初の子レコード -->
<dt class="label c4ce39cd"><!-- 最初の子レコードの最初のフィールドの名前 --></dt>
<dd class="value c4ce39cd"><!-- 最初の子レコードの最初のフィールドの値 --></dd>
<dt class="label c5a5541d"><!-- 最初の子レコードの2番目のフィールドの名前 --></dt>
<dd class="value c5a5541d"><!-- 最初の子レコードの2番目のフィールドの値 --></dd>
<!-- 2番目の子レコード -->
<dt class="label c4ce39cd"><!-- 2番目の子レコードの最初のフィールドの名前 --></dt>
<dd class="value c4ce39cd"><!-- 2番目の子レコードの最初のフィールドの値 --></dd>
<dt class="label c5a5541d"><!-- 2番目の子レコードの2番目のフィールドの名前 --></dt>
<dd class="value c5a5541d"><!-- 2番目の子レコードの2番目のフィールドの値 --></dd>
<!-- ... -->
<!-- 最後の子レコード -->
<dt class="label c4ce39cd"><!-- 最後の子レコードの最初のフィールドの名前 --></dt>
<dd class="value c4ce39cd"><!-- 最後の子レコードの最初のフィールドの値 --></dd>
<dt class="label c5a5541d"><!-- 最後の子レコードの2番目のフィールドの名前 --></dt>
<dd class="value c5a5541d"><!-- 最後の子レコードの2番目のフィールドの値 --></dd>
</dl>
</dd>
子レコードフィールドにはカラムIDがないため、カラムIDのクラスは指定されません。代わりに、referrer
というクラスが指定されます。
例えば、子レコードを表示しない場合には、以下のようなCSSを適用します。
.referrer {
display: none;
}
また、子レコードの特定のフィールドのラベルを大きくするには以下のようにします。
.referrer .c5a5541d.label {
font-size: 120%;
}
また、子レコードは一階層しか展開されません。子レコードが子レコードを持っている場合でも、それらはHTMLに含まれません。