Blink roll 25b6bd3a7a131ffe68d809546ad1a20707915cdc:3a503f41ae42e5b79cfcd2ff10e65afde...
[chromium-blink-merge.git] / ppapi / api / dev / pp_print_settings_dev.idl
blobdf573640959d83cb30c56238e62ed9705e66405b
1 /* Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file.
4 */
6 /**
7 * This file defines the struct for PrintSettings.
8 */
10 [assert_size(4)]
11 enum PP_PrintOrientation_Dev {
12 PP_PRINTORIENTATION_NORMAL = 0,
13 PP_PRINTORIENTATION_ROTATED_90_CW = 1,
14 PP_PRINTORIENTATION_ROTATED_180 = 2,
15 PP_PRINTORIENTATION_ROTATED_90_CCW = 3
18 [assert_size(4)]
19 enum PP_PrintOutputFormat_Dev {
20 PP_PRINTOUTPUTFORMAT_RASTER = 1u << 0,
21 PP_PRINTOUTPUTFORMAT_PDF = 1u << 1,
22 PP_PRINTOUTPUTFORMAT_POSTSCRIPT = 1u << 2,
23 PP_PRINTOUTPUTFORMAT_EMF = 1u << 3
26 [assert_size(4)]
27 enum PP_PrintScalingOption_Dev {
28 PP_PRINTSCALINGOPTION_NONE = 0,
29 PP_PRINTSCALINGOPTION_FIT_TO_PRINTABLE_AREA = 1,
30 PP_PRINTSCALINGOPTION_SOURCE_SIZE = 2
33 [assert_size(4)]
34 enum PP_PrintDuplexMode_Dev {
35 PP_PRINTDUPLEXMODE_NONE = 0,
36 PP_PRINTDUPLEXMODE_SIMPLEX = 1,
37 PP_PRINTDUPLEXMODE_LONG_EDGE = 2,
38 PP_PRINTDUPLEXMODE_SHORT_EDGE = 3
41 [assert_size(60)]
42 struct PP_PrintSettings_Dev {
43 /** This is the size of the printable area in points (1/72 of an inch). */
44 PP_Rect printable_area;
45 PP_Rect content_area;
46 PP_Size paper_size;
47 int32_t dpi;
48 PP_PrintOrientation_Dev orientation;
49 PP_PrintScalingOption_Dev print_scaling_option;
50 PP_Bool grayscale;
51 /** Note that Chrome currently only supports PDF printing. */
52 PP_PrintOutputFormat_Dev format;
55 [assert_size(8)]
56 struct PP_PrintRange_Dev {
57 int32_t from;
58 int32_t to;