шаблон для поворота и выравнивания текста по правому краю на странице с двумя горизонтально расположенными столбцами

шаблон для поворота и выравнивания текста по правому краю на странице с двумя горизонтально расположенными столбцами

Я хотел бы разделить свою страницу на 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° по умолчанию)

с табличным массивом

  1. комментарий hlines,vlines, если если не обозначено

  2. colspec={*{2}{Q[l,m,wd=0.45\linewidth]}}, для ширины столбца

  3. rows = {0.1\texttheight} для высоты строк

    \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}
    

Связанный контент