Cocoa Printing Ignores Custom Page Size Non-Printable Margins

Originator:qsahelix
Number:rdar://10978910 Date Originated:3/3/2012
Status:Open Resolved:
Product:Cocoa Printing Product Version:N/A
Classification:Bug Reproducible:Yes
 
Here's what I submitted to Radar:

Summary: The 'non-printable area' fields (Top, Left, Bottom, Right) in the custom paper sizes dialog are ignored when printing from a Cocoa app. They are correctly used by Carbon apps.

Steps to Reproduce:
[Note: the steps below include specific values, just to be formalist; ANY values will fail, just as these do.]

1: In any Cocoa app (e.g. Safari) choose "Print" (Be sure the full dialog is shown.)
2: Notice that the page preview accurately shows the page size and margins.
3: In the "Paper Size" popup, choose "Manage Custom Sizes..."
4: Create a new Custom Paper Size. Name it "Notepad"
5: Set the Paper Size fields to Width: "5.5 in" Height: "8.5 in"
6: Set the Non-Printable Area popup to "User Defined" 
7: Set the Non-Printable Area fields to Top: "1.0 in", Left: "1.5 in", Right: "1.0 in", Bottom: "1.0 in"
8: Click OK to return to the Print dialog.
9: Confirm that the "Notepad" Paper Size is selected.
10: Note that the page preview accurately shows the Notepad page size, but not the margins.
11: Print the page (as a pdf if you wish to save paper).

Expected Results: A printed page 5.5" x 8.5" with large margins all around and an extra wide margin on the left.

Actual Results: A printed page 5.5" x 8.5" with default margins all around.

Regression: This works fine in all Carbon-based apps.

Notes: I tested this in multiple Carbon and Cocoa applications in both OS X 10.6 & 10.7. The success of Carbon and the failure of Cocoa is consistent across the board.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!