Named pages with page-orientation

Support the 'page' CSS property [1], along with named pages support (@page foobar {} selector). Also support the 'page-orientation' descriptor [2] for @page, with values 'upright' (initial value), 'rotate-left', or 'rotate-right'. [1] https://www.w3.org/TR/css-page-3/#using-named-pages [2] https://drafts.csswg.org/css-page-3/#page-orientation-prop

Motivation

The Paged Media spec already defines a 'size' property [1], which naturally also can be used to set the orientation of a page. The new page-orientation descriptor is different, though, in that it just rotates all the layout, including any headers and footers. Printed pages may be presented together as a pamphlet or book, which essentially means that every page has the same size, and that the reader is supposed to turn the book or pamphlet 90 degrees when reading rotated pages. External formatting systems, such as word processors like Google Docs, may do page layout on their own and even push the output to a CANVAS, rather than individual DOM nodes. Such web-based word processors can also often support page sizings that are more advanced or specialized than what the user agent is capable of providing. For example, the rendering engines of Chromium and WebKit only have limited support for variable-size/shape pagination, and this feature can be used to work around such limitations. [1] https://www.w3.org/TR/css-page-3/#page-size-prop

Documentation

Specification

Editor's draft

Status in Chromium

Blink


Enabled by default (tracking bug) in:

  • Chrome for desktop release 85
  • Chrome for Android release 85
  • Android WebView release 85

Consensus & Standardization

After a feature ships in Chrome, the values listed here are not guaranteed to be up to date.

Owner

Intent to Prototype url

Intent to Prototype thread

Search tags

named pages, page orientation, page rotation, printing, PDF,

Last updated on 2020-09-25