我想在 4 个区域共享我的页面:A、B、C、D 页面水平共享一半,每个区域垂直共享一半。
A 在左上角,文本旋转 180° 并与右边距对齐 B 在右上角,文本旋转 180° 并与右边距对齐 C 在左下角,文本正常并与左边距对齐 C 在右下角,文本正常并与左边距对齐
我想制作一个模板,使我的文本在区域 A、B、C 和 D 中“流动”。
我希望避免使用表格,但如果这是更简单的方法,我并不反对。
这是我编写的代码,它旋转文本但文本左对齐并且无法形成两列
\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 个键:
- nbrows(默认为 4)
- 角度(默认为 0°)
使用 tabularray
注释 hlines,vlines,如果没有划定
colspec={*{2}{Q[l,m,wd=0.45\linewidth]}},表示列宽
rows = {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}