\documentclass{article} \usepackage{shortvrb} \usepackage [dvips] {graphics} \listfiles \MakeShortVerb{\|} \DeclareGraphicsExtensions{ps,eps,ps.gz} \catcode`\<\active \def<#1>{{\fboxsep0pt...\fbox{#1}...}} \graphicspath{{aa/}} \begin{document} Many of the examples in this file are shown `'. The dots and frame are not produced by the commands defined in |graphics.sty|. They are added to show the extent of the box, and its position relative to the baseline. Normally the text would appear `like this'. Include |a.ps| specifying different sizes of bounding box. The last three clip to the specified size. %<\includegraphics{a}> %% %<\includegraphics[150,150][100,100]{a}> %% %<\includegraphics*[150,150][100,100]{a}> %% %<\includegraphics*[136,172][86,122]{a}> %% %<\includegraphics*[110,110][100,100]{a}> <\includegraphics{a}> % <\includegraphics[100,100][150,150]{a}> % <\includegraphics[150,150]{a}> % <\includegraphics*[100,100][150,150]{a}> % <\includegraphics*[86,122][136,172]{a}> % <\includegraphics*[100,100][110,110]{a}> A box. <{ABCxyz}>\par Rotate the box about the reference point using |\rotatebox|. <\rotatebox{0}{ABCxyz 0}>\par <\rotatebox{45}{ABCxyz 45}> <\rotatebox{90}{ABCxyz 90}> <\rotatebox{135}{ABCxyz 135}> <\rotatebox{180}{ABCxyz 180}>\par <\rotatebox{225}{ABCxyz 225}> <\rotatebox{270}{ABCxyz 270}> <\rotatebox{315}{ABCxyz 315}> <\rotatebox{360}{ABCxyz 360}>\par The kernel of the graphics package actually has the ability to rotate about an arbitrary point in the box. The standard interface does not give direct access to this functionality, so here we need to specify the centre of rotation using the low level functions provided by the package. Other interfaces will give user-level access to this functionality. Rotate around the true centre of the box. So just set the coordinates of the centre of rotation, and the angle, then call |\Grot@box|. \setbox0=\hbox{ABCxyz 180} Note that the box is rotated `in place' unlike the effect with |\rotatebox{180}| which produces a box that has height equal to the depth of the original box, and vice versa. \makeatletter \Grot@x=0.5\wd0 \Grot@y=0.5\ht0 \advance\Grot@y -0.5\dp0 \def\Grot@angle{180} <\Grot@box> Similarly using the standard interface, angles are always specified anti-clockwise, in degrees, however other interfaces may give more alternatives, for example a small change sets up angles clockwise in radians, and then |\rotatebox{1.5707963}| produces: \def\Grot@setangle#1{% \dimen@#1\p@ \dimen@-57.2968\dimen@ \edef\Grot@angle{\strip@pt\dimen@}} <\rotatebox{1.5707963}{ABCxyz $\pi/2$}>\par % <\scalebox{2}{ABCxyz}>% <\scalebox{2}[5]{ABCxyz}>% <\reflectbox{ABCxyz}>% <\scalebox{-1}[1]{ABCxyz}>% <\scalebox{1}[-1]{ABCxyz}>% <\scalebox{2}[-2]{ABCxyz}>% <\resizebox{!}{!}{ABCxyz}> <\resizebox{.3in}{!}{ABCxyz}> <\resizebox{!}{.3in}{ABCxyz}> <\resizebox*{!}{.3in}{ABCxyz}> <\resizebox{1in}{.3in}{ABCxyz}> <\resizebox*{1in}{.3in}{ABCxyz}> \end{document}