diff options
author | Karl Berry <karl@freefriends.org> | 2011-03-21 22:00:56 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-03-21 22:00:56 +0000 |
commit | d81f87a9ae6a19d3b4dab661a2f13bfa490a143f (patch) | |
tree | 465b8563b292a9e7457c36b696dd60ce85a9ab63 /Master/texmf-dist/source/latex/adjustbox | |
parent | 1a51dbd81ad88df2bf01adc5e3659b23dbffca70 (diff) |
adjustbox (21mar11)
git-svn-id: svn://tug.org/texlive/trunk@21789 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/adjustbox')
-rw-r--r-- | Master/texmf-dist/source/latex/adjustbox/Makefile | 23 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/adjustbox/adjustbox.dtx | 368 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/adjustbox/adjustbox.ins | 3 |
3 files changed, 299 insertions, 95 deletions
diff --git a/Master/texmf-dist/source/latex/adjustbox/Makefile b/Master/texmf-dist/source/latex/adjustbox/Makefile index 2bb55c3d056..bdabf1310b8 100644 --- a/Master/texmf-dist/source/latex/adjustbox/Makefile +++ b/Master/texmf-dist/source/latex/adjustbox/Makefile @@ -7,7 +7,8 @@ PDFLATEX=pdflatex -interaction=batchmode LATEXMK=latexmk -pdf -silent PACKEDFILES=adjustbox.sty -DOCFILES=adjustbox.pdf +DOCFILES=adjustbox.pdf +#adjustbox-de.pdf SRCFILES=adjustbox.dtx adjustbox.ins README Makefile all: unpack doc @@ -20,24 +21,19 @@ ${PACKEDFILES}: adjustbox.dtx adjustbox.ins unpack: ${PACKEDFILES} -# 'doc' and 'adjustbox.pdf' call itself until everything is stable -doc: adjustbox.pdf - @${MAKE} --no-print-directory adjustbox.pdf +doc: ${DOCFILES} pdfopt: doc @-pdfopt adjustbox.pdf .temp.pdf && mv .temp.pdf adjustbox.pdf + @-pdfopt adjustbox-de.pdf .temp.pdf && mv .temp.pdf adjustbox-de.pdf -adjustbox.pdf: adjustbox.dtx adjustbox.gls adjustbox.ind - ${LATEXMK} adjustbox.dtx +adjustbox.pdf: adjustbox.dtx + ${LATEXMK} $< -adjustbox.idx adjustbox.glo: adjustbox.dtx - ${LATEXMK} adjustbox.dtx +adjustbox-de.pdf: adjustbox-de.tex adjustbox.dtx + ${LATEXMK} $< -adjustbox.ind: adjustbox.idx - -makeindex -s gind.ist -o "$@" "$<" - -adjustbox.gls: adjustbox.glo - -makeindex -s gglo.ist -o "$@" "$<" +adjustbox.tex: unpack .PHONY: test @@ -46,6 +42,7 @@ test: unpack clean: -latexmk -C adjustbox.dtx + -latexmk -C adjustbox-de.tex ${RM} ${PACKEDFILES} *.zip *.log *.aux *.toc *.vrb *.nav *.pdf *.snm *.out *.fdb_latexmk *.glo *.gls *.hd *.sta *.stp *.cod ${RMDIR} tds diff --git a/Master/texmf-dist/source/latex/adjustbox/adjustbox.dtx b/Master/texmf-dist/source/latex/adjustbox/adjustbox.dtx index bf347158177..6913806e9e2 100644 --- a/Master/texmf-dist/source/latex/adjustbox/adjustbox.dtx +++ b/Master/texmf-dist/source/latex/adjustbox/adjustbox.dtx @@ -20,23 +20,46 @@ % This work consists of the files adjustbox.dtx, adjustbox.ins % and the derived file adjustbox.sty. % -% $Id: adjustbox.dtx 2085 2011-01-27 01:29:39Z martin $ +% $Id: adjustbox.dtx 2372 2011-03-20 12:01:30Z martin $ % \fi % % \iffalse %<package>\ProvidesPackage{adjustbox} +%<de>\ProvidesFile{adjustbox-de.tex} %<*driver> \ProvidesFile{adjustbox.dtx} %</driver> - [2011/01/27 v0.2 Adjusting TeX boxes (trim, clip, ...)] + [2011/03/20 v0.3 Adjusting TeX boxes (trim, clip, ...)] %<*driver> -\documentclass{ydoc}[2011/01/26] -\GetFileInfo{\jobname.dtx} +\expandafter\ifx\csname ifenglish\endcsname\relax + \expandafter\newif\csname ifenglish\endcsname + \englishtrue +\fi +\ifenglish + \RequirePackage[english]{babel} +\else + \RequirePackage[ngerman]{babel} +\fi + +%\PassOptionsToPackage{ngerman}{hyperref} +%\RequirePackage[ngerman]{babel} +\documentclass{ydoc}[2011/03/19] +\GetFileInfo{adjustbox.dtx} +\usepackage[utf8]{inputenc} \usepackage{adjustbox}[\filedate] -\usepackage{array} -\usepackage{amsmath} -\usepackage{xcolor} -\usepackage{booktabs} +\normalmarginpar + +\newcommand\babelfiledate{% + \expandafter\babelfileDate\filedate\relax +} +\def\babelfileDate#1/#2/#3\relax{% + \begingroup + \year#1 + \month#2 + \day#3 + \today + \endgroup +} %\EnableCrossrefs %\CodelineIndex @@ -44,14 +67,14 @@ %\OnlyDescription \renewcommand{\bottomfraction}{0.5} \begin{document} - \DocInput{\jobname.dtx} + \DocInput{adjustbox.dtx} \PrintChanges %\newpage\PrintIndex \end{document} %</driver> % \fi % -% \CheckSum{185} +% \CheckSum{184} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -72,45 +95,46 @@ % % \changes{v0.1}{2011/01/24}{First internal version} % \changes{v0.2}{2011/01/27}{First released version} +% \changes{v0.3}{2011/03/20}{Bug fix for wrong baseline placed on the bottom} % -% \GetFileInfo{\jobname.dtx} +% \GetFileInfo{adjustbox.dtx} % % \DoNotIndex{\newcommand,\newenvironment,\def,\edef,\xdef,\gdef,\let} % -% \ifpdf -% \hypersetup{% -% pdfauthor = {Martin Scharrer <martin@scharrer-online.de>}, -% pdftitle = {The adjustbox package}, -% pdfsubject = {Documentation of LaTeX package adjustbox}, -% pdfkeywords = {adjustbox, LaTeX, TeX} -% }% +% \ifenglish\else +% \title{Das \pkgtitle{adjustbox} Paket} % \fi -% \clearpage -% \null -% \vspace*{-2em} -% \begin{center} -% {\huge The \textsf{adjustbox} Package\\[\medskipamount]} -% {\large Martin Scharrer \\[\medskipamount]\normalsize -% \url{martin@scharrer-online.de}\\[.8ex] -% \url{http://www.ctan.org/pkg/adjustbox/}\\[\bigskipamount]} -% {\large Version \fileversion\ -- \filedate}\\ -% \end{center} -% \vspace{1.2em}% -% \def\optstar{\textcolor{optional}{*}} +% \author{Martin Scharrer} +% \email{martin@scharrer-online.de} +% \ydocpdfsettings +% \maketitle % % \makeatletter -% \def\LATeX{(L\kern -.36em{\sbox \z@ T\vbox to\ht \z@ {\hbox {\check@mathfonts -% \fontsize \sf@size \z@ \math@fontsfalse \selectfont A}\vss }}\kern -.15em)\TeX} +% \def\LATeX{\texorpdfstring{(L\kern -.36em{\sbox \z@ T\vbox to\ht \z@ {\hbox {\check@mathfonts +% \fontsize \sf@size \z@ \math@fontsfalse \selectfont A}\vss }}\kern -.15em)\TeX}{(La)TeX}} % \makeatother % +% \ifenglish % \begin{abstract} -% This package provides macros missing in \pkg{graphics/x} to trim, clip and generally adjust boxed \LaTeX{} material. +% This package provides macros missing in \pkg{graphics} to trim, clip and generally adjust boxed \LaTeX{} material. % The macros allow for verbatim content. Equivalent environments are also provided. The trim and clip operation % are implemented using the \pkg{pgf} package, which supports both DVI/PS and PDF output. % \\ % \textcolor{red}{This package is new and the implementation might change in upcoming releases!} % \end{abstract} +% \else +% \begin{abstract} +% Dieses Paket stellt einige Makros zur Verfügung die im \pkg{graphics} Paket vermisst werden +% und \LaTeX{} Material zu beschneiden (\emph{trim}, \emph{clip}) oder allgemein zu modifizieren. +% Die Makros erlauben Inhalt das im \emph{verbatim} Modus gesetzt ist. +% Ebenfalls werden passende Umgebungen für die Makros bereitgestellt. +% Das Beschneiden wird durch eine \env{pgfpicture} Umgebung des Pakets \pkg{pgf} verwirklicht, +% dass sowohl das PS und PDF Ausgabeformat unterstützt.\\ +% \textcolor{red}{Dieses Paket ist noch neu und seine Implementieren kann sich in zukünftigen Versionen noch ändern!} +% \end{abstract} +% \fi % +% \ifenglish % \section{Introduction} % The standard \LaTeX{} package \pkg{graphicx} (the extended version of \pkg{graphics}) provides the macro \Macro\includegraphics[<options>]{<file name>} which can % be used to include graphic files. Several options can be used to scale, resize, rotate, trim and/or clip the graphic. @@ -122,22 +146,93 @@ % This package provides the missing macros \Macro\clipbox and \Macro\trimbox % as well as the general \Macro\adjustbox macro. The clipping and trimming operations are implemented using % a \env{pgfpicture} environment from the \pkg{pgf} package which supports both PS and PDF output. +% \else +% \section{Einleitung} +% Das \LaTeX{} Paket \pkg{graphicx} (die erweiterte Version von \pkg{graphics}) stellt das Macro \Macro\includegraphics[<Optionen>]{<Dateiname>} zur Verfügung +% mit dem Bilddateien eingebunden werden können. Zahlreiche Optionen können benutzt werden um das Bild zu skalieren, an eine vorgegebene Größe anzupassen, es zu rotieren +% oder den Rand zu beschneiden. +% Ebenfalls stellt das Paket die Makros \Macro\scalebox\relax (skalieren), \Macro\resizebox\relax (Größe ändern) und \Macro\rotatebox\relax (rotieren) zur Verfügung um \LATeX{} Material, +% z.B.\ normalen Text, entsprechend anzupassen. Dies wird dazu in eine horizontale Box (\Macro\hbox) gesetzt. +% Allerdings fehlen Makros um \LATeX{} Material zu beschneiden, wobei der abgeschnittenen Rand entweder sichtbar bleibt (engl.: \emph{trim}) oder ausgeblendet wird (engl. \emph{clip}). +% Dies ist wahrscheinlich der Fall, weil diese Operationen nicht von \TeX{} selbst vorgenommen werden, sondern von dem verwendeten Ausgabeformat, z.B.\ durch PostScript (PS) +% oder PDF Operationen. +% +% Das \textsf{adjustbox} Paket definiert die Makros \Macro\clipbox und \Macro\trimbox, sowie das allgemeine \Macro\adjustbox Macro (engl.: \emph{adjust} = anpassen). +% Das Beschneiden wird durch eine \env{pgfpicture} Umgebung des Pakets \pkg{pgf} verwirklicht, dass sowohl das PS und PDF Ausgabeformat unterstützt. +% \fi +% \optionaloff +% +% \ifenglish +% \def\llx{llx} +% \def\lly{lly} +% \def\urx{urx} +% \def\ury{ury} +% \def\text{text} +% \def\height{height} +% \def\width{width} +% \def\totalheight{totalheight} +% \def\depth{depth} +% \def\factor{factor} +% \def\xfactor{x-factor} +% \def\yfactor{y-factor} +% \def\Angle{angle} +% \def\options{options} +% \else +% \def\llx{lux} +% \def\lly{luy} +% \def\urx{orx} +% \def\ury{ory} +% \def\text{Text} +% \def\height{Höhe} +% \def\width{Weite} +% \def\totalheight{Totale Höhe} +% \def\depth{Tiefe} +% \def\factor{Faktor} +% \def\xfactor{X-Faktor} +% \def\yfactor{Y-Faktor} +% \def\Angle{Winkel} +% \def\options{Optionen} +% \fi % -% +% \ifenglish % \section{Usage} -% This section describes the usage of the provided macros, which are outlined in section~\ref{sec:boxmacros}. -% Possible advanced values for the macro arguments are mentioned in section~\ref{sec:argval}. The existing verbatim support -% is explained in section~\ref{sec:verbatim}. Finally section~\ref{sec:alternatives} compares the existing macros with the -% corresponding options of \Macro\adjustbox. +% This section describes the usage of the provided macros, which are outlined in \autoref{sec:boxmacros}. +% Possible advanced values for the macro arguments are mentioned in \autoref{sec:argval}. The existing verbatim support +% is explained in \autoref{sec:verbatim}. Finally \autoref{sec:alternatives} compares the existing macros with the +% corresponding options of \Macro\djustbox. +% See the example \autoref{sec:example} for examples of this macros. +% % It is recommended to also read the \emph{Graphics Guide} (|grfguide|, i.e.~the manual of the |graphics|/|x| packages), -% to understand the existing options for \Macro\includegraphics. See the example section for examples of this macros. +% to understand the existing options for \Macro\includegraphics. +% \else +% \newpage +% \section{Anleitung} +% Dieser Abschnitt beschreibt die Verwendung der Makros dieses Pakets. Diese werden zuerst im \autoref{sec:boxmacros} beschrieben. +% \autoref{sec:argval} erklärt welche Werte in den Makroargumenten verwendet werden können. Die Makros unterstützen sogenannten +% \emph{verbatim} (engl.: wortgetreu) Inhalt was im \autoref{sec:verbatim} erleutert wird. +% Schlussendlich wird im \autoref{sec:alternatives} die exisitierenden Makros mit den entsprechendem Optionen von \Macro\adjustbox +% verglichen. Beispiele für die beschriebenen Makros befinden sich im folgendem \autoref{sec:example}. +% +% Dem Leser wird darüberhinaus die Lektüre der Anleitung der |graphic|/|x| Pakete, der \emph{Graphics Guide}, empfohlen wo +% die möglichen Optionen für das Makro \Macro\includegraphics gelistet sind, die auch für \Macro\adjustbox verwendet werden. +% \fi % +% \ifenglish +% \Needspace*{7\baselineskip} % \subsection{Box Modification Macros}\label{sec:boxmacros} +% \else +% \subsection{Makros zur Modifikation von {\LaTeX} Material}\label{sec:boxmacros} +% \fi % +% \ifenglish % \subsubsection*{Trim Box Content} -% +% \else +% \subsubsection*{Rand beschneiden ohne Überhang auszublenden} +% \fi % \vskip-\lastskip -% \DescribeMacro\trimbox*{<llx>~<lly>~<urx>~<ury>}{<text>} +% \DescribeMacro\trimbox*{<\llx>~<\lly>~<\urx>~<\ury>}{<\text>} +% \ifenglish +% \subsubsection*{Trim Box Content} % The macro \Macro\trimbox trims the given amount from the lower left (ll) and the upper right (ur) corner of % the box. This means that the amount \meta{llx} is trimmed from the left side, \meta{lly} from the bottom and % \meta{urx} and \meta{ury} from the right and top of the box, respectively. @@ -146,63 +241,128 @@ % % If the starred version is used the four coordinates are taken as the |viewport| instead, i.e. the box % is trimmed to the rectangle described by the coordinates. +% \else +% Das Makro \Macro\trimbox setzt den \meta{Text} in eine \TeX{} Box und reduziert dessen offizielle Größe +% (\emph{bounding box}, engl.: begrenzende Box), so dass \TeX{} annimmt es wäre entsprechend kleiner. Überstehendes Material +% ragt deswegen in den umgebenden Text hinein. +% Die angegebenen Werte im ersten Argument stehen für die Beträge die von der unteren linken (lu) und der oberen rechten (or) +% Ecke entfernt werden. Das heisst, dass der Wert \meta{lux} vom linken Rand, \meta{lly} vom unterem Rand und \meta{orx} und \meta{ory} +% von rechten bzw. oberen Rand abgezogen werden. +% Wird das Makro allerdings in der Sternvariante aufgerufen, stehen die vier Werte für den Darstellungsbereich (\emph{viewport}) und +% alles ausserhalb wird von der offiziellen Größe abgeschnitten. +% \fi % % -% -% \DescribeEnv[<text>]{trimbox}*{<llx>~<lly>~<urx>~<ury>} +% \DescribeEnv[<\text>]{trimbox}*{<\llx>~<\lly>~<\urx>~<\ury>} % \vspace{-\baselineskip} -% \DescribeEnv[<text>]{trimbox*}{<llx>~<lly>~<urx>~<ury>} +% \DescribeEnv[<\text>]{trimbox*}{<\llx>~<\lly>~<\urx>~<\ury>} +% \ifenglish % The \env{trimbox} and \env{trimbox*} environments do the same as the corresponding macros. % Special care is taken so that the macros and the environments can have the same name. % Because of this the star can be either part of the name or an optional argument. % Also the plain\TeX{} syntax for environments (|\trimbox ... \endtrimbox|) can not be used -% because it will trigger \Macro\trimbox in macro mode. +% because it will trigger \Macro\trimbox as a macro. +% \else +% Die Umgebungen \env{trimbox} und \env{trimbox*} erzeugen den selben Effekt wie die gleichnamigen Makros. +% Ein spezieller Trick wird verwendet, damit der selbe Name für ein Makro und für eine Umgebung verwendet werden kann, +% was normallerweise nicht der Fall ist. Aufgrund dessen akzeptier die \env{trimbox} Umgebung auch einen optionallen Stern. +% Die plain\TeX{} Schreibweise für Umgebungen (|\trimbox ... \endtrimbox|) kann allerdings nicht verwendet werden, +% da es \Macro\trimbox als Makro aufrufen würde. +% \fi % % +% \ifenglish % \subsubsection*{Clip Box Content} +% \else +% \subsubsection*{Rand beschneiden und Überhang ausblenden} +% \fi % \vskip-\lastskip -% \DescribeMacro\clipbox*{<llx>~<lly>~<urx>~<ury>}{<text>} +% \DescribeMacro\clipbox*{<\llx>~<\lly>~<\urx>~<\ury>}{<\text>} +% \ifenglish % The \Macro\clipbox macro works like the \Macro\trimbox and trims the given amounts from the \meta{text}. % However, in addition the trimmed material is also clipped, i.e. it is not shown in the final document. % Note that the material will still be part of the output file but is simply not shown. % It might be exported using special tools, so using \Macro\clipbox\relax (or \Macro\includegraphics[clip,trim=...]) % to censor classified information would be a bad idea. -% The starred version will again use the given coordinates as |viewport|. +% The starred version will again use the given coordinates as |viewport|. +% \else +% Das \Macro\clipbox Makro arbeiten ähnlich wie \Macro\trimbox nur, dass der entfernte Rand auch wirklich +% ausgeblendet wird. Allerdings bleibt dieses Material Teil der Ausgabedatei und könnte durch spezielle Software exportiert werden. +% Von der Verwendung von \Macro\clipbox\relax (oder \Macro\includegraphics'[clip,trim=...]') um vertrauliche Informationen zu zensieren +% kann deswegen nur abgeraten werden. +% Die Sternvariante verwendet die angegebenen Werte als den zu darstellenden Bereich wie bei \Macro\trimbox'*'. +% \fi % -% \DescribeEnv[<text>]{clipbox}*{<llx>~<lly>~<urx>~<ury>} +% \DescribeEnv[<\text>]{clipbox}*{<\llx>~<\lly>~<\urx>~<\ury>} % \vspace{-\baselineskip} -% \DescribeEnv[<text>]{clipbox*}{<llx>~<lly>~<urx>~<ury>} -% The environment versions of \Macro\clipbox and \Macro\clipbox*. +% \DescribeEnv[<\text>]{clipbox*}{<\llx>~<\lly>~<\urx>~<\ury>} +% \iffalse +% The environment versions of \Macro\clipbox and \Macro\clipbox*. The same rules as for the trimming environments apply. +% \else +% Die obigen Makros als Umgebungen. Es gelten die gleichen Regeln wie bei den \env{trimbox} Umgebungen. +% \fi % % +% \ifenglish % \subsubsection*{Adjust Box Content} +% \else +% \subsubsection*{Allgemeine Manipulationen von \LaTeX{} Material} +% \fi % \vskip-\lastskip -% \DescribeMacro\adjustbox{<includegraphics options>}{<text>} +% \DescribeMacro\adjustbox{<includegraphics \options>}{<\text>} +% \ifenglish % The \Macro\adjustbox macro is the general form of all box modifying macros mentioned in the introduction. % It can be thought as an \Macro\includegraphics for \LATeX{} material. % It supports the same set of \meta{options}, however they are provided as a mandatory not as an optional argument. % An \Macro\adjustbox without options would not make sense and can be replaced by a simple \Macro\mbox. -% There is no starred version of this macro. See also Table~\ref{tab:alternatives} for a comparison of \Macro\adjustbox +% There is no starred version of this macro. See also \autoref{tab:alternatives} for a comparison of \Macro\adjustbox % with the other macros. +% \else +% Mit Hilfe des \Macro\adjustbox Makros (engl.\ \emph{adjust} = anpassen, justieren) ist es möglich die selben Optionen +% die \Macro\inludegraphics für Bilder zur Verfügung stellt auch auf beliebiges \LATeX{} Material anzuwenden. +% Die \meta{Optionen} sind dabei allerdings nicht optional, da \Macro\adjustbox ohne jegliche Optionen einem \Macro\mbox +% gleich käme. Eine Sternvariante existiert für dieses Makro nicht. +% Es kann dazu verwendet werden Kombinationen von anderen ähnlichen Makros zu ersetzen, was in \autoref{tab:alternatives} dargestellt wird. +% \fi % -% \DescribeEnv[<text>]{adjustbox}{<includegraphics options>} +% \DescribeEnv[<\text>]{adjustbox}{<includegraphics \options>} +% \ifenglish % The environment version of \Macro\adjustbox. +% \else +% Wie für die anderen Makros gibt es auch für \Macro\adjustbox eine passende Umgebung. +% \fi % -% +% \ifenglish % \subsection{Argument Values}\label{sec:argval} -% -% The\marginpar{Parsing} argument values are parsed by versatile \Macro\pgfmathparse of the already used |pgf| package. See the |pgfmanual| for detailed information. +% The\marginpar{Parsing} argument values are parsed by versatile \Macro\pgfmathparse of the already used |pgf| package. % This allows very complex arithmetic expressions as any of the trim/clip coordinates or other numeric options. +% See the |pgfmanual| for detailed information. % Note\marginpar{Space=Separator} that the four values for \Macro\trimbox and \Macro\clipbox as well as for the |trim| and |viewport| option of \Macro\adjustbox % are separated by spaces. If the expression of any of this values holds a space or ends with a macro (eats trailing spaces!) it must be wrapped into braces `|{ }|'. +% \else +% \newpage +% \subsection{Erlaubte Werte für Makroargumente}\label{sec:argval} +% Die numerischen Werte für die Makros werden durch das vielseitige \Macro\pgfmathparse Makro des sowieso schon verwendeten \pkg{pgf} Paketes +% eingelesen. Dies erlaubt die Verwendung von einfachen oder komplizierten Formeln. +% Eine genaue Beschreibung der unterstützten mathematischen Operationen befindet sich im Handbuch des \pkg{pgf} Paketes. +% Dabei muss beachtet werden das die vier Werte für die \Macro\trimbox und \Macro\clipbox Makros sowie für die |trim| und |viewport| Optionen von \Macro\adjustbox +% durch Leerzeichen getrennt werden müssen. Komplizierte Angaben die ein Leerzeichen enthalten oder auf ein Makro enden (entfernt nachfolgende Leerzeichen) müssen +% deswegen in geschweifte Klammern `|{ }|' gesetzt werden. +% \fi +% % % \DescribeMacros % \hbox{\Macro\width~~~\Macro\height~~~\Macro\depth~~~\Macro\totalheight}% % \endDescribeMacros +% \ifenglish % This \LaTeX{} lengths hold the original dimension of \meta{text} and can be used as part of the arguments to \Macro\adjustbox, \Macro\trimbox and \Macro\clipbox. % The totalheight is the height plus depth. +% \else +% Diese \LaTeX{} Längen enthalten die Weite, Höhe, Tiefe bzw.\ die totale Höhe (Höhe + Tiefe) des \meta{\text} Arguments bzw.\ des Inhalts der Umgebung. +% Diese Längen können in den ersten Argument von \Macro\adjustbox, \Macro\trimbox und \Macro\clipbox verwendet werden um relative Änderungen vorzunehmen. +% \fi % -% If\marginpar{Default unit} no unit is provided for of the bounding box coordinates (llx, lly, urx, ury) then PostScript points +% If\marginpar{Default unit} no unit is provided for of the bounding box coordinates (\llx, \lly, \urx, \ury) then PostScript points % (\emph{big points}, bp, $72\,\text{bp}=1\,\text{inch}$) are used, as it is the default behaviour % of the |trim| and |viewport| ptions of \pkg{graphicx}'s \Macro\includegraphics. Note that \pkg{graphicx} converts all values, independent if a unit is provided or not, % internally to bp, because graphics where traditionally stored in Encapsulated PostScript (EPS) files. The more modern PDF files also use bp instead of pt. @@ -211,61 +371,93 @@ % % % \subsubsection*{Examples for Argument Values} -% \hbox to \linewidth{\hss\Macro\trimbox{'{.5\width} 10 {log10(10)/sin(45) + 1} 10pt'}{<content>}\hss} +% \codeline{\AlsoMacro\trimbox{'{.5\width} 10 {log10(10)/sin(45) + 1} 10pt'}{<\text>}} % will trim half the original amount from the left, 10\,bp from the bottom and % 2.42328\,bp from the right (bp, because no unit was used in the formula; change e.g. `|+ 1|' to `|+ 1pt|' to get 2.42328\,pt), % as well as 10\,pt from the top. % % \subsection{Verbatim Support}\label{sec:verbatim} % The macros read the \meta{text} as \TeX{} \Macro\hbox and not as an macro argument in order to support verbatim content. -% This means that the braces around the content can also be written as \Macro\bgroup and \Macro\egroup:\\[\smallskipamount] -% \hspace*{2\parindent}\Macro\trimbox{1 2 3 4}\AlsoMacro\bgroup~<content>\AlsoMacro\egroup\\[\smallskipamount] -% Special care is taken to allow the \meta{text} to be a single macro (except \Macro\bgroup) without any braces:\\[\smallskipamount] -% \hspace*{2\parindent}\Macro\clipbox{1 2 3 4}\AlsoMacro\somemacro\\[\smallskipamount] +% This means that the braces around the content can also be written as \Macro\bgroup and \Macro\egroup: +% \begin{macroquote} +% \trimbox{1 2 3 4}\AlsoMacro\bgroup~<\text>\AlsoMacro\egroup +% \end{macroquote} +% Special care is taken to allow the \meta{text} to be a single macro (except \Macro\bgroup) without any braces: +% \begin{macroquote} +% \clipbox{1 2 3 4}\AlsoMacro\somemacro +% \end{macroquote} % This is to support the questionable habit of some \LaTeX{} users to drop the braces for single token arguments. % All environments support verbatim content. % +% \ifenglish % \subsection{Alternatives for existing Macros}\label{sec:alternatives} % The flexible \Macro\adjustbox can also be used as an alternative to existing macros from the \pkg{graphics} package as shown by Table~\ref{tab:alternatives}. % Because it is longer then the originals this is only of benefit if combinations are to be replaced or verbatim text must be supported. +% \else +% \subsection{Alternativen für existierende Makros}\label{sec:alternatives} +% Das flexible \Macro\adjustbox Makro kann auch als Alternative für die vorhandenen Makros des \pkg{graphics} Paketes verwenden werden. +% Dies ist in Tabelle~\ref{tab:alternatives} dargestellt. +% Die dies allerdings mehr Schreibarbeit darstellt ist es nur dann von Vorteil, falls mehrere Operationen verknüpft werden sollen +% oder wenn der entsprechende Text im \emph{verbatim} Modus eingelesen werden soll. +% \fi % -% \begin{table}[b] +% \ifenglish +% \begin{table}[!hb] +% \else +% \begin{table}[!hb] +% \fi % \belowcaptionskip\abovecaptionskip % \colorlet{optional}{black} -% \caption{Alternatives for existing Macros}\label{tab:alternatives} +% \ifenglish +% \caption{Alternatives for existing Macros} +% \else +% \caption{Alternativen für existierende Makros} +% \fi +% \label{tab:alternatives} % \hbox to \linewidth{\hss % \begin{tabular}{ll} % \toprule +% \ifenglish % Original Macro (w/o text argument) & Alternative (w/o text argument) \\ +% \else +% Originales Makro (ohne Text Argument) & Alternative (ohne Text argument) \\ +% \fi % \midrule -% \Macro\rotatebox{<angle>} & \Macro\adjustbox{'angle='<angle>} \\ -% \Macro\scalebox{<factor>} & \Macro\adjustbox{'scale='<factor>} \\ -% \Macro\scalebox{<x-factor>}[<y-factor>] & \Macro\adjustbox{'width='<x-factor>\AlsoMacro\width',height='<y-factor>\AlsoMacro\height} \\ +% \Macro\rotatebox{<\Angle>} & \Macro\adjustbox{'angle='<\Angle>} \\ +% \Macro\scalebox{<\factor>} & \Macro\adjustbox{'scale='<\factor>} \\ +% \Macro\scalebox{<\xfactor>}[<\yfactor>] & \Macro\adjustbox{'width='<\xfactor>\AlsoMacro\width',height='<\yfactor>\AlsoMacro\height} \\ % \Macro\reflectbox & \Macro\adjustbox{'width=-'\AlsoMacro\width',height='\AlsoMacro\height} \\ -% \Macro\resizebox{<width>}{<height>} & \Macro\adjustbox{'width='<width>',height='<height>} \\ -% \Macro\resizebox*{<width>}{<totalheight>} & \Macro\adjustbox{'width='<width>',totalheight='<totalheight>} \\ -% \Macro\trimbox{<llx>~<lly>~<urx>~<ury>} & \Macro\adjustbox{'trim='<llx>~<lly>~<urx>~<ury>} \\ -% \Macro\trimbox*{<llx>~<lly>~<urx>~<ury>} & \Macro\adjustbox{'viewport='<llx>~<lly>~<urx>~<ury>} \\ -% \Macro\clipbox{<llx>~<lly>~<urx>~<ury>} & \Macro\adjustbox{'trim='<llx>~<lly>~<urx>~<ury>,clip} \\ -% \Macro\clipbox*{<llx>~<lly>~<urx>~<ury>} & \Macro\adjustbox{'viewport='<llx>~<lly>~<urx>~<ury>,clip} \\ +% \Macro\resizebox{<\width>}{<\height>} & \Macro\adjustbox{'width='<\width>',height='<\height>} \\ +% \Macro\resizebox*{<\width>}{<\totalheight>} & \Macro\adjustbox{'width='<\width>',totalheight='<\totalheight>} \\ +% \Macro\trimbox{<\llx>~<\lly>~<\urx>~<\ury>} & \Macro\adjustbox{'trim='<\llx>~<\lly>~<\urx>~<\ury>} \\ +% \Macro\trimbox*{<\llx>~<\lly>~<\urx>~<\ury>} & \Macro\adjustbox{'viewport='<\llx>~<\lly>~<\urx>~<\ury>} \\ +% \Macro\clipbox{<\llx>~<\lly>~<\urx>~<\ury>} & \Macro\adjustbox{'trim='<\llx>~<\lly>~<\urx>~<\ury>,clip} \\ +% \Macro\clipbox*{<\llx>~<\lly>~<\urx>~<\ury>} & \Macro\adjustbox{'viewport='<\llx>~<\lly>~<\urx>~<\ury>,clip} \\ % \bottomrule % \end{tabular}% % \hss}% % \end{table} % % \clearpage -% \section{Examples} +% \ifenglish +% \section{Examples}\label{sec:example} +% The following examples show the application of the package macros on an example text. +% The result is placed in a tight, colored frame box to show the resulting dimensions. +% \else +% \section{Beispiele}\label{sec:example} +% Die folgenden Beispiele zeigen die Anwendung der Makros dieses Packets auf einen Beispieltext (\Macro\example). +% Das Ergebnis wird mit einer engen, farbigen Umrandung dargestellt um die entgültigen Dimensionen sichtbar zu machen. +% \fi % +% \begingroup % \def\examplecontent{\begin{tabular}{@{}|c|c|@{}} % \hline % A & B \\ % \hline % C & D \\ % \hline -% \end{tabular}} -% The following examples show the application of the package macros on an example text. -% The result is placed in a tight, colored frame box to show the resulting dimensions. -% \begingroup +% \end{tabular}^^A +% } % \fboxsep=0pt% % \def\Fbox{\fcolorbox{red}{white}}% % \def\X{\vspace*{20pt}}% @@ -282,7 +474,11 @@ % \X\Macro\adjustbox{width=180pt,height=20pt,keepaspectratio}{\AlsoMacro\example} & \Fbox{\adjustbox{width=40pt,height=10pt,keepaspectratio}{\examplecontent}} \\ % \end{tabular} % +% \ifenglish % \subsubsection*{Environment example:} +% \else +% \subsubsection*{Beispiel mit Umgebung:} +% \fi % \noindent % \Macro\begin{adjustbox}{angle=2}:\\ % \begin{adjustbox}{angle=2} @@ -296,6 +492,9 @@ %<*package> % \fi % \section{Implementation} +% \ifenglish\else +% Die Dokumentation des Quellcodes ist nur auf Englisch verfügbar. +% \fi % % \begin{macrocode} \RequirePackage{graphicx}[1999/02/16] @@ -361,7 +560,6 @@ % \begin{macrocode} \newcommand\adjustbox{% \begingroup - \tracinggroups=1% \def\adjustbox@name{adjustbox}% \adjustbox@{}% } @@ -384,7 +582,7 @@ \def\adjustbox@#1#2{% \def\adjustbox@setkeys{\setkeys{Gin}{#1#2}}% \ifx\@currenvir\adjustbox@name - \expandafter\def\expandafter\@currenvir\expandafter{\@currenvir\empty}% + \edef\@currenvir{\@currenvir\noexpand\empty}% \def\next{% \setbox\@tempboxa\hbox\bgroup \color@setgroup\bgroup @@ -472,7 +670,8 @@ \pgfpathclose \expandafter\pgfusepath\ifGin@clip{clip}\else{use as bounding box}\fi\relax \pgfset{inner sep=\z@,outer sep=\z@}% - \pgfnode{rectangle}{base west}{\box\@tempboxa}{}{}% + \pgfnode{rectangle}{base west}{\box\@tempboxa}{ADJUSTBOX@NODE}{}% + \pgfsetbaselinepointnow{\pgfpointanchor{ADJUSTBOX@NODE}{base}}% \end{pgfpicture}% } % \end{macrocode} @@ -481,4 +680,11 @@ % \Finale % \iffalse %</package> +%<*de> +%% Wrapper to set language to German and jobname to 'adjustbox-de'. +%% Does not have to be included in distributions or placed on CTAN. +\expandafter\newif\csname ifenglish\endcsname +\englishfalse +\input{adjustbox.dtx} +%</de> % \fi diff --git a/Master/texmf-dist/source/latex/adjustbox/adjustbox.ins b/Master/texmf-dist/source/latex/adjustbox/adjustbox.ins index c0dd5b90750..96c8f8a718c 100644 --- a/Master/texmf-dist/source/latex/adjustbox/adjustbox.ins +++ b/Master/texmf-dist/source/latex/adjustbox/adjustbox.ins @@ -1,4 +1,4 @@ -%% $Id: adjustbox.ins 2062 2011-01-25 02:03:20Z martin $ +%% $Id: adjustbox.ins 2095 2011-01-28 16:16:43Z martin $ \input docstrip.tex \preamble @@ -26,6 +26,7 @@ and the derived file adjustbox.sty. \generate{% \file{adjustbox.sty}{\from{adjustbox.dtx}{package}}% + \file{adjustbox-de.tex}{\nopreamble\nopostamble\from{adjustbox.dtx}{de}}% } \obeyspaces |