modelo para girar e alinhar texto à direita em uma página compartilhada horizontalmente de 2 colunas

modelo para girar e alinhar texto à direita em uma página compartilhada horizontalmente de 2 colunas

Gostaria de compartilhar minha página em 4 áreas: A página A, B, C, D é compartilhada pela metade horizontalmente e cada uma dessas áreas é compartilhada pela metade verticalmente.

A no canto superior esquerdo onde o texto gira 180° e se alinha na margem direita B no canto superior direito onde o texto gira 180° e se alinha na margem direita C no canto inferior esquerdo onde o texto está normalmente e se alinha na margem esquerda C no canto inferior direito onde o texto está normalmente e alinhado na margem esquerda

Gostaria de fazer um modelo que faça meu texto "fluir" nas áreas A, B, C e depois D.

Prefiro evitar o uso de mesa, mas se for o caminho mais fácil, não sou contra.

aqui está o código que fiz, ele gira o texto, mas o texto fica alinhado à esquerda e não consegue formar 2 colunas

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

aqui uma foto para mostrar o que eu quero. As linhas de compartilhamento podem opcionalmente ser exibidas ou ocultadas. e as partes A e B podem ser tabulação em vez de 2 colunas, e se a parte A não puder conter toda a tabulação, ela continuará na parte B (Parte A ainda invertida e parte B normal. insira a descrição da imagem aqui

insira a descrição da imagem aqui

Responder1

Assim?

Com expl3, 2 chaves:

  1. nbrows (4 por padrão)
  2. ângulo (0° por padrão)

com tabularray

  1. comente hlines,vlines, se não estiver delineado

  2. colspec={*{2}{Q[l,m,wd=0.45\linewidth]}}, para a largura da coluna

  3. rows = {0.1\textheight} para a altura das linhas

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

informação relacionada