Aparar as margens de todo o documento (por linha de comando)

Aparar as margens de todo o documento (por linha de comando)

Existe uma maneira de cortar as margens de todo o documento LaTeX? Preciso fazer isso temporariamente, para tornar mais confortável meu trabalho de composição tipográfica. Eu descobri como passar essa opção por linha de comando com o\AtBeginDocument técnicamas uma solução de preâmbulo também é bem-vinda.

Para explicar melhor meus propósitos gostaria de obter o mesmo resultado que consigo com o bashcomando (que aqui funciona por causa da página colorida):

pdfcrop --margins '-50 -50 -50 -50' mydoc.pdf mydoc.pdf

Por exemplo, para o código:

\documentclass[a4paper,11pt]{article}

%% \usepackage{xcolor}
%% \pagecolor[HTML]{E4EDE9}

\usepackage{blindtext}

\begin{document}

\section{Section}
\blindtext

\blindtext

\blindtext\footnote{\blindtext}

\end{document}

Quero mudar o layout de:

insira a descrição da imagem aqui

OBSERVAÇÃO.Obtenho esse layout passando a opção de cor pela linha de comando:

pdflatex '\AtBeginDocument{\RequirePackage{xcolor} \pagecolor[HTML]{E4EDE9}} \input{Latex.tex}'

(Quero agradecer a Thérèse por esta cor de fundo tão relaxante para os olhos)

para:

insira a descrição da imagem aqui

Uma solução específica do okular é bem-vinda, mas como uso muitos visualizadores, prefiro uma solução LaTeX.

NOTA 2.Eu preciso de uma solução quenãoalterar o layout do texto. Eu preciso apenas aparar pdfcomo está.


SOLUÇÃO

Quero compartilhar a solução que funciona no meu caso (graças a Steven B. Segletes). Este é o código para uma compilação recortada e colorida de linha de comando:

pdflatex '\AtBeginDocument{\newlength\DX \DX=3cm \paperwidth=\dimexpr\paperwidth-\DX\relax \hoffset=\dimexpr\hoffset-.5\DX\relax \newlength\DY \DY=3cm \paperheight=\dimexpr\paperheight-\DY\relax \voffset=\dimexpr\voffset-.1\DY-.5\footskip\relax \RequirePackage{xcolor} \pagecolor[HTML]{E4EDE9}} \nonstopmode\input{mydoc.tex}'

NOTA ADICIONADA.Após a atualização de outubro do TeX Live 2020, esta solução precisa de uma atualização:Corte as margens de todo o documento por linha de comando (após a atualização do TeX Live 2020)

Responder1

Aqui eu pego a articledocumentclass de linha de base (usando a passopção de geometry) e altero o \paperwidthe \paperheightpelo valor especificado e, em seguida, as margens associadas (na verdade \hoffsete \voffset) pela metade das dimensões de alteração da página.

\documentclass{article}
\usepackage{lipsum}
\usepackage[pass]{geometry}
\newlength\DX
\DX=3.5in
\paperwidth=\dimexpr\paperwidth-\DX\relax
\hoffset=\dimexpr\hoffset-.5\DX\relax
\newlength\DY
\DY=2.8in
\paperheight=\dimexpr\paperheight-\DY\relax
\voffset=\dimexpr\voffset-.5\DY-.5\footskip\relax
\begin{document}
\lipsum[1-10]
\end{document}

insira a descrição da imagem aqui

Sem quaisquer alterações:

insira a descrição da imagem aqui

Responder2

Por que você não usa croppacote?!

Como David Carlisle disse você também pode usar geometrypackage, mas eu prefiro cropneste caso; para mais detalhes consulte o manual do pacote.

definindo a largura e a altura, você pode obter as margens desejadas.

\documentclass[a4paper,11pt]{article}
\usepackage[a4,center,noinfo,cross, width=13.5cm,height=22.5cm]{crop}
\usepackage{blindtext}

\begin{document}

\section{Section}
\blindtext
\blindtext
\blindtext\footnote{\blindtext}
\end{document}

insira a descrição da imagem aqui

Responder3

Podes tentar

\AtBeginDocument{%
\edef\mt{\the\textwidth}%
\edef\mtt{\the\textheight}%
\RequirePackage{geometry}%
\geometry{paperwidth=\dimexpr\mt+1cm\relax,
paperheight=\dimexpr\mtt+1cm\relax,margin=.5cm}
\RequirePackage{xcolor} 
\pagecolor[HTML]{E4EDE9}}

\documentclass[a4paper,11pt]{article}

\usepackage{blindtext}

\begin{document}

\section{Section}
\blindtext

\blindtext

\blindtext\footnote{\blindtext}

\end{document}

informação relacionada