2列の水平共有ページで回転して右揃えのテキストを表示するテンプレート

2列の水平共有ページで回転して右揃えのテキストを表示するテンプレート

ページを 4 つの領域で共有したいと思います。A、B、C、D ページは水平方向に半分ずつ共有され、各領域は垂直方向に半分ずつ共有されます。

A は左上にあり、テキストは 180° 回転し、右余白に揃えられています。B は右上にあり、テキストは 180° 回転し、右余白に揃えられています。C は左下にあり、テキストは通常​​どおり左余白に揃えられています。C は右下にあり、テキストは通常​​どおり左余白に揃えられています。

テキストが領域 A、B、C、D の順に流れるようなテンプレートを作成したいと思います。

私はテーブルの使用を避けたいのですが、それがより簡単な方法であるなら、反対しません。

これが私が作成したコードです。テキストは回転しますが、テキストは左揃えになり、2列にはなりません。

\documentclass{article}

% preambule
\usepackage[utf8]{inputenc} 
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{graphicx}
\usepackage[french]{babel}


\usepackage{graphicx}

\begin{document}


\begin{multicols}{2}
\rotatebox{180}{coffe}
\newline
\rotatebox{180}{beer}
\newline
\rotatebox{180}{water} 
\newline
\rotatebox{180}{soda}
\newline
\rotatebox{180}{tea}
\newline
\rotatebox{180}{gin}
\end{multicols}
\end{document}

ここに私が求めているものを示す写真があります。共有ラインはオプションで表示または非表示にできます。また、パート A とパート B は 2 列ではなくタブにすることができ、パート A にすべてのタブを含めることができない場合は、パート B に続きます (パート A は反転したまま、パート B は通常の状態)。 ここに画像の説明を入力してください

ここに画像の説明を入力してください

答え1

このような?

expl3の場合、2つのキー:

  1. nbrows (デフォルトは 4)
  2. 角度(デフォルトでは0°)

tabularray 付き

  1. hlines、vlines をコメントします。

  2. colspec={*{2}{Q[l,m,wd=0.45\linewidth]}}、列の幅

  3. 行の高さは{0.1\textheight}です

    \documentclass{article}
    \usepackage{showframe}
    \usepackage{tikz}
    \usepackage{tabularray}
    \parindent=0pt
    \ExplSyntaxOn
    \seq_new:N \l__nameyourmodule_elem_seq
    \tl_new:N \l__nameyourmodule_table_tl
    \tl_new:N \l__nameyourmodule_nbrows_tl
    \tl_new:N \l__nameyourmodule_angle_tl
    \tl_new:N \l__nameyourmodule_rowHeight_tl
    \keys_define:nn { yourtable }
        { 
            nbrows .tl_set:N = \l__nameyourmodule_nbrows_tl,
            angle .tl_set:N = \l__nameyourmodule_angle_tl,
            %%% default values 
            nbrows .initial:n = { 4 },
            angle .initial:n = { 0 },
        }
    \NewDocumentCommand{\mytable}{O{} m }
    {
        \keys_set:nn { yourtable } { #1 }
        \seq_set_from_clist:Nn \l__nameyourmodule_elem_seq {#2}
        \tl_clear:N \l__nameyourmodule_table_tl
        \int_step_inline:nn {\l__nameyourmodule_nbrows_tl}
        % \seq_map_inline:Nn \l__nameyourmodule_elem_seq  
        {  
        \tl_put_right:Nn \l__nameyourmodule_table_tl 
            {
            \seq_item:Nn \l__nameyourmodule_elem_seq {##1} & 
            \seq_item:Nn \l__nameyourmodule_elem_seq {\l__nameyourmodule_nbrows_tl+##1}\\
            }
        }
    
        \begin{tikzpicture}
        \node[rotate=\l__nameyourmodule_angle_tl]
            {
            \use:x% code of frougon  https://tex.stackexchange.com/questions/648904/misplaced-alignment-tab-character-with-tabularray-and-expl3
                {
                \exp_not:n {\begin{tblr}
                                {
                                hlines,vlines,
                                colspec={*{2}{Q[l,m,wd=0.45\linewidth]}},
                                rows = {0.1\textheight}
                                }}
                \exp_not:V {\l__nameyourmodule_table_tl}
                \exp_not:n {\end{tblr}}
                }
            };
        \end{tikzpicture}
    }
    \ExplSyntaxOff
    \begin{document}
    \mytable{Neqe,porro,quisquam,est,lg5}
    
    \mytable[angle=180]{Neqe,porro,quisquam,est,lg5}
    
    \mytable[nbrows=3]{lg1,lg2,lg3,lg4,lg5}
    
    \mytable[nbrows=3,angle=90]{lg1,lg2,lg3,lg4,lg5}
    \end{document}
    

関連情報