XPS 0.95 Change: BleedBox/ContentBox

We are making a change in version 0.95 of the XPS with how bleed boxes and content boxes are specified, in order to match the rectangle model used elsewhere in the spec. In addition, you may have noticed that the .NET 3.0 implementation always functioned as described below.

The key changes are:

  1. The Right and Bottom values of the BleedBox and ContentBox have been replaced by width and height values. Left and Top have been renamed to better indicate they are the origin X and Y values. 
  2. The BleedBox is required to fully contain the FixedPage (previously it only was required to contain the ContentBox).
  3. The recommendation to generate an error in the case of an invalid content box or bleed box has been replaced by ignoring the box in favor of the default (the fixed page boundaries).

The BleedBox and ContentBox attribute descriptions in 3.3 "<FixedPage> Element" are changing as follows:

BleedBox:

Specifies the area including crop marks that extends outside of the physical page. Contains a list of four coordinate values (BleedOriginX, BleedOriginY, BleedWidth, BleedHeight), expressed as comma-separated real numbers. If omitted, the default value is (0,0,Width,Height).

ContentBox:

Specifies the area of the page containing imageable content that is to be fit within the imageable area when printing or viewing. Contains a list of four coordinate values (ContentOriginX, ContentOriginY, ContentWidth, ContentHeight), expressed as comma-separated real numbers. Specifying a value is RECOMMENDED [S3.1]. If omitted, the default value is (0,0,Width,Height).

The following sections have also been revised:

3.3.1 BleedBox Attribute

The BleedBox attribute defines the area (inclusive of crop marks) that extends outside of the physical page. The bleed box is expressed as four comma-separated, real-number coordinate values that correspond to BleedOriginX, BleedOriginY, BleedWidth, BleedHeight. Additional whitespace MAY appear. These values are specified in units of 1/96". The bleed box is not affected by any render transformation of the fixed page.

Bleed boxes that do not satisfy the following conditions are invalid and SHOULD be ignored in favor of the default bleed box [S3.2]:

  • The BleedBox BleedOriginX value MUST be less than or equal to 0 [M3.7].
  • The BleedBox BleedOriginY value MUST be less than or equal to 0 [M3.8].
  • The BleedBox BleedWidth value MUST be greater than or equal to the fixed page Width attribute value plus the absolute value of the Bleedbox BleedOriginX value [M3.9].
  • The BleedBox BleedHeight value MUST be greater than or equal to the fixed page Height attribute value plus the absolute value of the BleedBox BleedOriginY value [M3.10].

If the BleedBox attribute is omitted, the default value is “0,0,Width,Height”.

3.3.2 ContentBox Attribute

The ContentBox attribute specifies the area of the page that contains imageable content that must fit in the imageable area when printing or viewing. Specifying this attribute is RECOMMENDED. The content box is expressed as four comma-separated, real-number coordinate values that correspond to ContentOriginX, ContentOriginY, ContentWidth, ContentHeight. Additional whitespace MAY appear. These values are specified in units of 1/96". The content box is not affected by any render transformation of the fixed page.

Content boxes that do not satisfy the following conditions are invalid and SHOULD be ignored in favor of the default content box [S3.3]:

  • The ContentBox ContentOriginX value MUST be greater than or equal to 0 and less than the fixed page Width attribute value [M3.11].
  • The ContentBox ContentOriginY value MUST be greater than or equal to 0 and less than the fixed page Height attribute value [M3.12].
  • The ContentBox ContentWidth value MUST be less than or equal to the difference between the Width attribute value and the ContentBox ContentOriginX value [M3.13].
  • The ContentBox ContentHeight value MUST be less than or equal to the difference between the Height attribute value and the ContentBox ContentOriginY value [M3.14].

If the ContentBox attribute is omitted, the default value is “0,0,Width,Height”.