From b4120baab1e1593bf29a277ca4e4abe8a2a1a52a Mon Sep 17 00:00:00 2001 From: Tab Atkins-Bittner Date: Wed, 25 Mar 2020 17:05:12 -0700 Subject: [PATCH 1/2] [css-page] Add page-orientation descriptor. Fixes #4491. --- css-page-3/Overview.bs | 80 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/css-page-3/Overview.bs b/css-page-3/Overview.bs index 8b01816bf451..072931a80e6f 100644 --- a/css-page-3/Overview.bs +++ b/css-page-3/Overview.bs @@ -1862,6 +1862,86 @@ Media Queries In the example above, "A4" sheets are given a "3cm" page margin, and "letter" sheets are given a "1in" page margin. +

+Rotating The Printed Page: the 'page-orientation' property

+ +
+	Name: page-orientation
+	For: @page
+	Value: upright | rotate-left | rotate-right
+	Initial: upright
+	Computed Value: as specified
+	
+ + High-quality printing implementations + can handle pages of varying sizes and orientations, + so an author can choose the size of a page + according to what's best for that page's content. + For example, + they might use ''size: letter portrait;'' for most pages in a document, + but switch to ''size: letter landscape;'' + to lay out a wide information table. + + However, handling content flowing across pages of differing widths + is a relatively complex task, + and is not yet solved in many popular printing implementations + (notably, web browsers). + The ''page-orientation'' descriptor is intended to help such implementations, + allowing them to lay out pages in a single consistent size, + but change the orientation post-layout + in the output medium + (such as PDF), + so that pages which want to be displayed in a different orientation + can do so. + + Its values are defined as: + +
+ : upright + :: No special orientation is applied; + the page is laid out and formatted as normal. + + : rotate-left + :: After the page has been laid out, + if the output medium supports rotation, + this value indicates that the page must be displayed + rotated a quarter turn to the left + (counter-clockwise) + of how it was laid out. + + : rotate-right + :: Same as ''rotate-left'', + except the page must be displayed + rotated a quarter turn to the right + (clockwise) + of how it was laid out. +
+ + Note: Margin boxes and other positional things + have no special interaction with this property; + they'll be laid out as normal in the unrotated page, + then rotated along with everything else. + +
+ This property is intended as a stop-gap + for less-capable implementations, + allowing them to still print documents + with a mix of portrait and landscape orientations + before they have the ability + to flow content across differently-size pages. + It requires some awkward contortions to use, + such as specifying that a wide table containing only English + actually has a vertical 'writing-mode' + so it'll lay out "sideways", + but be rotated back to upright for readability + in the printed output. + + There should be no need to use this property + in high-quality printing implementations; + instead, use '@page/size' to control ''portrait'' vs ''landscape'' orientation of a page. +
+ +

Crop and Registration Marks: the 'marks' property

From e6752e91ec449ea605d6d7d74f1594c48987ca11 Mon Sep 17 00:00:00 2001 From: Tab Atkins-Bittner Date: Wed, 25 Mar 2020 17:13:30 -0700 Subject: [PATCH 2/2] [css-page-3] Change ID to avoid clash. --- css-page-3/Overview.bs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/css-page-3/Overview.bs b/css-page-3/Overview.bs index 072931a80e6f..afa36cec032c 100644 --- a/css-page-3/Overview.bs +++ b/css-page-3/Overview.bs @@ -1862,7 +1862,7 @@ Media Queries In the example above, "A4" sheets are given a "3cm" page margin, and "letter" sheets are given a "1in" page margin. -

+

Rotating The Printed Page: the 'page-orientation' property