[DVIPDFMx] About \Rotate 90 command in PDF files

Matthias Franz matthias at ktug.or.kr
Mon Jun 2 16:56:42 KST 2008


On Mon, Jun 02, 2008 at 10:36:32AM +0900, Jin-Hwan Cho wrote:
> On Jun 2, 2008, at 1:53 AM, Matthias.Franz at ujf-grenoble.fr wrote:
> >
> >1) I'm not sure that I understand the purpose of \Rotate.
> >The PDF 1.2 spec says that it is for rotating on displays.
> >I understand this. Later specs say it's also for printing.
> >In this case, what is the difference to a rotated bbox???
> 
> What do you mean with "rotated bbox"? Is it in the PDF spec?
> Anyway, I understood that "\Rotate" gives an information how
> many degree the page must be rotated. That's quite simple.

I mean the following: What is the difference between

\MediaBox [0 0 100 200]
\Rotate 90

and

\MediaBox [0 0 200 100]
plus rotated content in the content stream ?

If \Rotate is respected for viewing _and_ printing,
it seems like a feature which does not add new
functionality.

If it's only for viewing, but not for printing, the
story is different. What I have in mind is a document,
to be printed on A4, but with a large table which uses
an entire page in A4 wide. On screen, you want to
rotate the page for better reading. But you don't want
the printer to use one A4 wide page together with
all the A4 pages, or to complain that A4 wide is not
available. (Not to mention binding etc.)

If \Rotate is observed for printing, then this would
happen. I cannot imagine that this was the intention
of the PDF creators.

> >3) As you've written, it's not a problem of dvipdfmx, but
> >of the graphics driver. What should the driver do?
> >I think one needs a new option for \includegraphics
> >because there are situations where one wants to respect
> >\Rotate (inclusion of a wide table which uses landscape
> >format instead of portrait format) and situations where
> >one doesn't (pdfpages putting 2 pages onto 1 page, like
> >psnup. Here one cannot rotate one page, but not the others.)
> 
> My opinion was not to use any extra option. So if one includes
> a PDF image with /Rotate 90, then the LaTeX graphics driver
> must notice this information. How? I thought that the only way
> is to add the information on the ".xbb" file. Then the driver makes
> a rotated box. In this case the driver does not need to give this
> information to dvipdfmx, because dvipdfmx can check this information
> by itself. The critical part is the driver's one, not dvipdfmx's.

My idea was to have an option to enable or disable the rotation
of pages. Think of the example given above (many A4 pages, one
plus rotation). If you just want to include the rotated page,
then \Rotate should be taken into account. If you include _all_
pages (for example, with pdfpages to put 2 pages onto 1), then
you do _not_ want to rotate one page because it disturbes
your overall page layout.

> >4) What does pdflatex do?
> 
> Of course pdflatex does well because it can read the "/Rotate"
> information directly and make an appropriate box.

So, does pdflatex _always_ respect \Rotate entries or not?

Cheers,
-- 
Matthias



More information about the dvipdfmx mailing list