Я хотел бы создать несколько страниц в формате «мини-карты» (2,75 на 1,1) с 1-дюймовым QR-кодом на одной стороне и многострочным текстом по центру на другой стороне.
К сожалению, я не разбираюсь в вертикальном центрировании. Мой текущий подход использует тип столбца 'm', который, как предполагается, центрирует текст по вертикали, но этого не происходит:
\documentclass{article}
\usepackage{graphicx}
\usepackage{array}
\usepackage[margin=.05in,papersize={2.75in,1.1in}]{geometry}
\begin{document}
\renewcommand\arraystretch{0}
\renewcommand\tabcolsep{0pt}
\begin{table}
\begin{tabular}{p{1in} | >{\centering\arraybackslash}m{1.65in} |}
\hline
\includegraphics[width=1in,height=1in]{600px-QR_code_Wikimedia_Commons_(URL).png}
& unique key a
\\ \hline
\end{tabular}
\end{table}
\end{document}
Решение было бы замечательно, но я бы удовлетворился объяснением. Стоит ли мне вообще использовать таблицу?
решение1
Это известная ошибка в пакете, описанная здесь:Вертикальное выравнивание в таблице: m-столбец, размер строки - проблема в последнем столбце
Вы можете использовать этот твик и в вашем случае. Вам следует немного увеличить размеры, чтобы избавиться от предупреждений и все было установлено правильно:
\documentclass{article}
\usepackage[demo]{graphicx} % remove `[demo]` in your case
\usepackage{array}
\usepackage[margin=.05in,papersize={2.79in,1.12in}]{geometry}
\begin{document}
\renewcommand\arraystretch{0}
\renewcommand\tabcolsep{0pt}
\begin{table}
\begin{tabular}{m{1.02in} | >{\centering\arraybackslash}m{1.65in} |@{}m{0pt}@{}}
\hline
\includegraphics[width=1in,height=1in]{600px-QR_code_Wikimedia_Commons_(URL).png}
& unique key a
&\\ \hline
\end{tabular}
\end{table}
\end{document}