フォーマット済みのテキストをテーブルに挿入したいです。 を使用してこれを実行しようとしました\startlines
が、コマンドはテーブルに効果を示しません。 では可能です\break
が、これは実際の解決策ではありません。
表内にフォーマット済みのテキストを挿入するにはどうすればいいですか?
MWE:
\starttext
\startlines
multi
lines
work
\stoplines
\bTABLE
\bTR
\bTD
\startlines
multi
lines
work
\stoplines
\eTD
\bTD
multi\break
lines\break
work
\eTD
\eTR
\eTABLE
\stoptext
答え1
問題は、環境がテキストを個別の行として認識するnatural tables
前に、各セルがコンテンツを保存することです。lines
lines
環境のテキストを に配置すると、この問題を回避できますbuffer
。バッファの内容をテーブルにロードすると、テキストは別々の行に残ります。
\starttext
\startbuffer[lines]
multi
lines
work
\stopbuffer
\bTABLE
\bTR
\bTD
\startlines
\getbuffer[lines]
\stoplines
\eTD
\eTR
\eTABLE
\stoptext
テキストが数行しかない場合は、lines
環境をスキップし、\\
コマンドを使用してテーブルセル内の各テキスト行の終わりをマークできます。
\starttext
\bTABLE
\bTR
\bTD
multi\\
lines\\
work
\eTD
\eTR
\eTABLE
\stoptext
もう 1 つの可能性は、テーブルのサイズを計算するために別の方法を使用するため、問題なく処理できる環境natural tables
に置き換えることです。xtable
lines
\starttext
\startxtable
\startxrow
\startxcell
\startlines
multi
lines
work
\stoplines
\stopxcell
\stopxrow
\stopxtable
\stoptext