テーブルのレイアウトと情報の分離

名前: 鈴木慎吾
日時: 2010-06-04 17:18:10
IPアドレス: 219.166.47.*

再びの質問失礼します(連続投稿はマナー違反なんでしょうか?もしマナー違反であるならば削除してください) 本格的に LaTeX で文書の管理をしようとして,次から次に困難にぶつかっております. 長大なテーブルを生成しようとしています. 1つ1つのテーブルの行数も多いし,同じレイアウトのテーブルが大量にあります. 更にそういったテーブルを含んだドキュメントも複数あります. そのレイアウトはまだ確定してないので試行錯誤している最中です. ただし1行に載せるべき情報は決まっています(あとは1行にどう並べるかだけ) 以下説明のための例です. ******************************************* 1行に載せる情報は INFOA,INFOB,INFOC とします. レイアウト案A:INFOA&INFOB&INFOC(3カラムに各情報を載せる) レイアウト案B:INFOA&INFOB(INFOC)(2カラム目は2つまとめて載せる) とします. そして以下のようなコードを考えてみました(実際には意図した挙動にはなりません.イメージだけです) ================ \documentclass{jbook} \def\INFOA{} \def\INFOB{} \def\INFOC{} \newcommand{\LayoutAA}{ \INFOA&\INFOB&\INFOC } \newcommand{\LayoutBB}{ \INFOA&\INFOB(\INFOC) } \begin{document} レイアウトA のテーブル出力 \begin{tabular}{|l|l|l|} \hline \multicolumn{1}{|c|}{\gtfamily\bfseries カラムA}& \multicolumn{1}{c|}{\gtfamily\bfseries カラムB}& \multicolumn{1}{c|}{\gtfamily\bfseries カラムC}\\\hline %%%% 第1行 %%%% \def\INFOA{AAA1} % 情報定義1 \def\INFOB{BBB1} % 情報定義2 \def\INFOC{CCC1} % 情報定義3 \LayoutAA\\\hline % 1行出力 %%%% 第2行 %%%% \def\INFOA{AAA2} % 情報定義1 \def\INFOB{BBB2} % 情報定義2 \def\INFOC{CCC2} % 情報定義3 \LayoutAA\\\hline % 1行出力 \end{tabular} レイアウトB のテーブル出力 \begin{tabular}{|l|l|l|} \hline \multicolumn{1}{|c|}{\gtfamily\bfseries カラムA}& \multicolumn{1}{c|}{\gtfamily\bfseries カラムB\&C}\\\hline %%%% 第1行 %%%% \def\INFOA{AAA1} % 情報定義1 \def\INFOB{BBB1} % 情報定義2 \def\INFOC{CCC1} % 情報定義3 \LayoutBB\\\hline % 1行出力 %%%% 第2行 %%%% \def\INFOA{AAA2} % 情報定義1 \def\INFOB{BBB2} % 情報定義2 \def\INFOC{CCC2} % 情報定義3 \LayoutBB\\\hline % 1行出力 \end{tabular} \end{document} ================ 1行に載せる情報をセットしては1行出力...といったイメージです. 問題は山積みで ●INFOBとINFOCが表示されません.どうも環境内での \def の挙動を理解していないようです ●第1カラムの左の気持ちの悪い空きを消せないでしょうか? よろしくお願いします

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます。適宜改行を入れてください)