3

Inspired by solution of @kiss-my-armpit in How to print the list of packages installed on TeX Live to a file?, I decided to make a poster-like document to list all packages in a single page. So I made a large paper with zero margin. But the problem is that the text will cut at the right margin, \sloppy macro doesn't help in this case and causes some big white spaces at the end of each line at following pic shows. I want the text occupies the whole width of the paper.

enter image description here

\documentclass[10pt]{article}
\usepackage[vmargin=0pt, hmargin=0pt, paperwidth=34cm,paperheight=23.5cm,]{geometry}
\usepackage{tikz}
\usepackage{color}
\usepackage[T1]{fontenc}

\begingroup
\catcode`\^^M=12\relax%
\expandafter\gdef\expandafter\trimtok#1^^M{#1}%
\gdef\trimmer#1{\expandafter\trimtok #1}%
\endgroup

\newread\reader

\immediate\write18{tlmgr list --only-installed|cut -d":" -f1|cut -d" " -f2-|grep -v x86_64-linux|shuf > installedPackages.shuf}

\pagestyle{empty}

\begin{document}
%\sloppy
\noindent
\fontsize{6}{6.05}\selectfont\ttfamily
\openin\reader=installedPackages.shuf\relax
\loop
    \readline\reader to \data
    \unless\ifeof\reader
        \pgfmathparse{int(rand*9)}%
        \ifodd\pgfmathresult%
            \bgroup\color{gray}%
        \fi%
            \trimmer\data\ %
        \ifodd\pgfmathresult%
            \egroup%
        \fi%
    \repeat%
\closein\reader
\end{document}
  • 1
    The problem can be demonstrated with the much simpler MWE: \documentclass[10pt]{article} \usepackage[vmargin=0pt, hmargin=0pt, paperwidth=34cm,paperheight=23.5cm,]{geometry} \usepackage[nopar]{lipsum} \pagestyle{empty} \begin{document} \noindent %\sloppy \fontsize{6}{6.05}\selectfont\ttfamily \lipsum[1-35] \end{document} – Steven B. Segletes Sep 19 '17 at 11:36
  • I think LaTeX doesn't know how to divide plstmary or pictexsum. – Ignasi Sep 19 '17 at 11:37
  • 1
    Also, no physical printer can actually print all the way to the edge of the paper, hence the option "shrink to printable area" used by the print driver. – John Kormylo Sep 19 '17 at 12:26
  • @JohnKormylo You are right, but we can print on a bigger paper and cut the extra margins, as it happened in real publishing. – javadr Sep 19 '17 at 13:20
  • 1
    @Ignasi Yes, but how can I set some extra spaces between words to fill the whole line with zero space at both side? – javadr Sep 20 '17 at 7:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.