Tim Landscheidt schrieb:
> ich möchte Avery-3657-Etiketten (4,85 cm * 2,54 cm, 40 Stück
> pro Seite, 0,8 cm Rand links und rechts, 2,15 cm Rand oben
> und unten) über einen längeren Zeitraum sammeln und dann
> drucken. Dazu erstelle ich PDFs in der Größe 4,85 cm *
> 2,54 cm mit groff und CUPS-PDF.
>
> Diese PDFs möchte ich nun zu A4-Seiten montieren und probie-
> re dazu pdfpages bzw. den Wrapper pdfjam aus. Letzterer er-
> zeugt den LaTeX-Code:
>
> | \batchmode
> | \documentclass[a4paper,]{article}
> | \usepackage[utf8]{inputenc}
> | \usepackage{pdfpages}
>
> | \begin{document}
> | \includepdfmerge[frame=true,nup=4x10]{source-1.pdf,-,source-2.pdf,-,source-3.pdf,-,source-4.pdf,-,source-5.pdf,-,source-6.pdf,-,source-7.pdf,-,source-8.pdf,-,source-9.pdf,-,source-10.pdf,-,source-11.pdf,-,source-12.pdf,-}
> | \end{document}
>
> und sendet ihn an pdflatex.
>
> Das erzeugt jedoch ein A4-PDF, bei dem die Etiketten etwa
> die Größe 5,23 cm * 2,76 cm haben, das heißt, vier Etiketten
> füllen die Seitenbreite vollständig aus und oben gibt es ei-
> nen Rand von 1 cm.
[...]
> Wie kann ich mit pdfpages ein A4-PDF erzeugen mit dem Lay-
> out:
Ich weiss zwar nicht, was pdfjam ist, aber im
LaTeX-Code brauchst Du vom pdfpages-Paket die Option
"noautoscale=true":
\batchmode
\documentclass[a4paper,]{article}
\usepackage[utf8]{inputenc}
\usepackage{pdfpages}
\begin{document}
\includepdfmerge[frame=true,nup=4x10,noautoscale=true]{source-1.pdf,-,source-2.pdf,-,source-3.pdf,-,source-4.pdf,-,source-5.pdf,-,source-6.pdf,-,source-7.pdf,-,source-8.pdf,-,source-9.pdf,-,source-10.pdf,-,source-11.pdf,-,source-12.pdf,-}
\end{document}
-----------------------------------------------------------------
Du kannst übrigens Etiketten auch in .tex-Dateien sammeln.
Ich mache das hin und wieder mit einem Loop-Makro
\Etikettenloop
, welches eine Reihe von unbegrenzten Argumenten verarbeitet,
von denen ein jedes den Text für ein Etikett enthält.
\Etikettenloop setzt jedes diesr Argumente in eine Box,
die die Maße eines Etiketts hat, und gibt diese Box dann per
\shipout als einzelne kleine Seite der .pdf-Datei aus.
So entsteht dann eine .pdf-Datei, bei der jede Seite
ein Etikett enthält und die Maße eines Etiketts hat.
Das kann dann zB mittels pdf-pages zu einem ausdruckbaren
Bogen mit vielen neben- und untereinander stehenden
Etiketten weiterverarbeitet werden.
Ich habe da auch noch Hilfsmakros, um den Text auf einem
Etikett auszurichten.
\documentclass{article}
\usepackage{varwidth}
\newbox\Etikettenbox
\newcommand\KeineEtikettenMehr{\KeineEtikettenMehr}
\newcommand\Etikettenhoehe{2.54cm}
\newcommand\Etikettenbreite{4.85cm}
\newcommand\Etikettloop[1]{%
% Bitte keine Fiesheiten!
% ZB in #1 keine unbalancierten \else..\fi verwenden.
\ifx\KeineEtikettenMehr#1\else
\setbox\Etikettenbox\vbox to \Etikettenhoehe{%
\hsize=\Etikettenbreite\relax
\sloppy\vskip-\parskip\leavevmode#1%
\par
\hrule height 0pt
% Das \hrule stellt sicher, dass die Box keine Tiefe bekommt.
% Denn die Tiefe könnte sonst über den unteren Rand des
% Etiketts hinausragen.
}%
\csname @ifundefined\endcsname{pdfpagewidth}{%
\csname @ifundefined\endcsname{pagewidth}{%
% Jössas! Ein altes dvi-Zeug, wo das "Papier"
% vom weiterverarbeitenden Programm,zB dem dvi-viewer,
% festgelegt wird.
}{%
\pagewidth=\wd\Etikettenbox
\pageheight=\ht\Etikettenbox
\advance\pageheight\dp\Etikettenbox
}%
}{%
\pdfpagewidth=\wd\Etikettenbox
\pdfpageheight=\ht\Etikettenbox
\advance\pdfpageheight\dp\Etikettenbox
}%
\shipout\vbox{\kern-1truein\hbox{\kern-1truein\box\Etikettenbox}}%
\expandafter\Etikettloop
\fi
}%
% Ein Makro, das ausgehend vom horizontalen Modus eine Box auf dem
% Etikett so platziert, dass das Etikett oben einen Rand von #1,
% unten mindestens einen Rand von #2, links einen Rand von #3, rechts einen
% Rand von mindestens #4 bekommt:
\newcommand\EtikettRandOULR[5]{%
\par\kern#1\relax
\vskip-\parskip\noindent\kern#3\relax
\vbox to \dimexpr\Etikettenhoehe-#1-#2\relax{\hsize=\dimexpr\Etikettenbreite-#3-#4\relax
\vskip-\parskip\leavevmode#5\par\hrule height 0pt
}%
\hfill\null\vfill
}%
% Ein Makro, das ausgehend vom horizontalen Modus eine Box auf dem
% Etikett zentriert platziert, die um #1 weniger hoch und um #2 weniger
% breit ist als das Etikett. Die minimalen Ränder sind dann #1/2 bzw #2/2.
\newcommand\EtikettKleinerVH[3]{%
\par\vfill
\vskip-\parskip\noindent\hfill
\vbox to \dimexpr\Etikettenhoehe-#1\relax{\hsize=\dimexpr\Etikettenbreite-#2\relax
\vskip-\parskip\leavevmode#3\par\hrule height 0pt
}%
\hfill\null\vfill
}%
% Ein Makro, das eine Box so schmal wie möglich setzt und im Etikett
% zentriert
\newcommand\EtikettBoxZentriert[1]{%
\par\vfill
\vskip-\parskip\noindent\hfill
\begin{varwidth}{\Etikettenbreite}\vskip-\parskip\leavevmode#1\end{varwidth}%
\hfill\null
\par\hrule height 0pt
\vfill
}%
\begin{document}
\parindent=0ex
\Etikettloop{%
\raggedright
Das Argument von Etiketttenloop kommt im horizontalen Modus
in eine Box der Breite \Etikettenbreite\space und der Hoehe \Etikettenhoehe.
Hier hat das Etikett keine Ränder. \vfill
}%
{%
\EtikettRandOULR{4mm}{2mm}{5mm}{5mm}{%
Frau\\
Maxime Mustermaennin\\
Musterstrasse 7\\\null\\
ABCD Musterstadt\vfill
}%
}%
{%
\EtikettKleinerVH{10mm}{6mm}{%
links oben \hfill rechts oben
\vfill
\hfill 5mm bzw 3mm Raender\hfill\null
\vfill
links unten \hfill gp \hfill rechts unten
}%
}%
{%
\EtikettBoxZentriert{%
\fbox{\vbox{\hbox{Text Bla}\hbox{Text}}}
}%
}%
{%
\EtikettBoxZentriert{%
Text Bla\\Text\hfill
}%
}%
{%
\EtikettBoxZentriert{%
Frau\\
Maxime Mustermaennin\\
Musterstrasse 7\\\null\\
ABCD Musterstadt\hfill
}%
}%
{\KeineEtikettenMehr}%
\end{document}
Mit freundlichem Gruß
Ulrich