我想将文档页面大小设置为 16cm x 24cm。我按照以下步骤操作,但在运行以下命令后
pdflatex myDocument.tex
文档的输出不受我在代码中指定的内容的影响。输出仍然正常,为 A4 大小的页面。
\documentclass[a4paper, 12pt]{book}
\usepackage[paperwidth=16cm, paperheight=24cm]{geometry}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{array}
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
\newcommand\code[1]{\texttt{#1}}
\begin{document}
\begin{tabular}{|l|C{4cm}|}
\hline
Classe de caractère & Signification\\
\hline
\verb+[abc$^]+ & Un unique caractère qui peut être \code{a}, \code{b} ou \code{c} \\
\hline
\verb+[^abc]+ & Le $^\wedge$ exprime la négation: cette classe représente un unique caractère, \tabularnewline qui peut prendre toutes les valeurs, sauf \code{a}, \code{b} et \code{c}.\\
\hline\verb+[a-zA-Z]+ & Le - signifie que tous les caractères entre ses bornes sont valides. Cette classe représente un unique caractère alphabétique, minuscule ou majuscule.\\
\hline
\verb+[a-gmn]+ & Autre exemple d'union: cette classe \tabularnewline est constituée de tous les caractères compris entre \code{a} et \code{g}, du caractère \code{m} et du caractère \code{n}.\\
\hline
\verb+[a-g[A-G]]+ & On peut inclure des classes les unes dans les autres. Cette classe représente un unique caractère, compris entre \code{a} et \code{g}, en minuscule ou en majuscule. Elle est équivalente à \verb+[a-gA-G]+.\\
\hline
\verb+[a-g\&\&[c-k]]+ & Le signe $\&\&$ représente l'intersection. On fait donc là l'intersection entre la classe \verb+[a-g]+ et la classe \verb+[c-k]+. Il s'agit donc de la classe \verb+[c-g]+.\\
\hline
\verb+[a-g\&\&[^cd]]+ & Ici on réalise l'intersection entre la classe qui représente tous les caractères de \code{a} à \code{g}, et celle qui représente tous les caractères, sauf \code{c} et \code{d}. Il reste donc \code{a}, \code{b}, \code{e}, \code{f} et \code{g}, que l'on peut aussi écrire \verb+[abefg]+ ou \verb+[abe-g]+.\\
\hline
\verb+[a-z\&\&[^m-p]]+ & Autre exemple: \tabularnewline ici on réalise l'intersection de tous les caractères compris entre \code{a} et \code{z}, et de tous les caractères sauf ceux compris entre \code{m} et \code{p}. Il nous reste donc \verb+[a-lq-z]+.\\
\hline
\end{tabular}
\end{document}
%%%%%%%%%%%%%%%%%%% 新示例如下:Zarko 回答。
\documentclass[12pt]{book}
\usepackage[paperwidth=16cm, paperheight=24cm]{geometry}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{qtree}
\usepackage{adjustbox}
\usepackage[activate={true,nocompatibility},final,tracking=true,kerning=true,spacing=true,factor=1100,stretch=10,shrink=10]{microtype}
\usepackage{multicol}
\usepackage{ragged2e}
\usepackage{makecell, tabularx}
\newcolumntype{L}[1]{>{\RaggedRight}X}
\newcommand\code[1]{\texttt{#1}}
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
\begin{document}
foo
\end{document}
答案1
编辑:
关于纸张尺寸,a4paper
从文档类别选项中删除。
无关:
您使用
\tabularnewline
内部单元格。这样,您终止了行,并将此行中的其他文本推入第一列,即类型l
,因此它们出现在一行中。删除所有内容\tabularnewline
并使用它们代替\newline
或插入空行。您的表格太大,无法按照
geometry
软件包规定的大小放入页面中。为了更好地利用页面上的可用空间,我建议您使用tabularx
表格环境,将第一列标题写成两行(借助makecell
软件包,并使用以下命令减少行间空格linespread
:
\documentclass[12pt]{book}
\usepackage[paperwidth=16cm, paperheight=24cm]{geometry}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{ragged2e} % new
\usepackage{makecell, % new
tabularx}
\newcolumntype{L}[1]{>{\RaggedRight}X} % new
\newcommand\code[1]{\texttt{#1}}
%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\begin{document}
\begin{table}[ht] % new
\small\linespread{0.84}\selectfont % new
\setlength\tabcolsep{4pt} % new
\setcellgapes{2pt} % new
\makegapedcells % new
\begin{tabularx}{\linewidth}{|l|L{4cm}|} % new
\hline
\makecell{Classe de\\ caractère}
& Signification\\
\hline
\verb+[abc$^]+ & Un unique caractère qui peut être \code{a}, \code{b} ou \code{c} \\
\hline
\verb+[^abc]+ & Le $^\wedge$ exprime la négation:
cette classe représente un unique caractère, qui peut prendre toutes les valeurs, sauf \code{a}, \code{b} et \code{c}.\\
\hline
\verb+[a-zA-Z]+ & Le - signifie que tous les caractères entre ses bornes sont valides. Cette classe représente un unique caractère alphabétique, minuscule ou majuscule.\\
\hline
\verb+[a-gmn]+ & Autre exemple d'union:
cette classe est constituée de tous les caractères compris entre \code{a} et \code{g}, du caractère \code{m} et du caractère \code{n}.\\
\hline
\verb+[a-g[A-G]]+ & On peut inclure des classes les unes dans les autres. Cette classe représente un unique caractère, compris entre \code{a} et \code{g}, en minuscule ou en majuscule. Elle est équivalente à \verb+[a-gA-G]+.\\
\hline
\verb+[a-g\&\&[c-k]]+ & Le signe $\&\&$ représente l'intersection. On fait donc là l'intersection entre la classe \verb+[a-g]+ et la classe \verb+[c-k]+. Il s'agit donc de la classe \verb+[c-g]+.\\
\hline
\verb+[a-g\&\&[^cd]]+ & Ici on réalise l'intersection entre la classe qui représente tous les caractères de \code{a} à \code{g}, et celle qui représente tous les caractères, sauf \code{c} et \code{d}. Il reste donc \code{a}, \code{b}, \code{e}, \code{f} et \code{g}, que l'on peut aussi écrire \verb+[abefg]+ ou \verb+[abe-g]+.\\
\hline
\verb+[a-z\&\&[^m-p]]+ & Autre exemple:
ici on réalise l'intersection de tous les caractères compris entre \code{a} et \code{z}, et de tous les caractères sauf ceux compris entre \code{m} et \code{p}. Il nous reste donc \verb+[a-lq-z]+.\\
\hline
\end{tabularx}
\end{table}
\end{document}