1 <!-- ##### SECTION Title ##### -->
4 <!-- ##### SECTION Short_Description ##### -->
7 <!-- ##### SECTION Long_Description ##### -->
9 A GtkPrintSettings object represents the settings of a print dialog in
10 a system-independent way. The main use for this object is that once
11 you've printed you can get a settings object that represents the settings
12 the user chose, and the next time you print you can pass that object in so
13 that the user doesn't have to re-set all his settings.
16 Its also possible to enumerate the settings so that you can easily save
17 the settings for the next time your app runs, or even store them in a
18 document. The predefined keys try to use shared values as much as possible
19 so that moving such a document between systems still works.
22 <!-- TODO example of getting, storing and setting settings -->
25 Printing support was added in GTK+ 2.10.
28 <!-- ##### SECTION See_Also ##### -->
33 <!-- ##### SECTION Stability_Level ##### -->
36 <!-- ##### STRUCT GtkPrintSettings ##### -->
42 <!-- ##### USER_FUNCTION GtkPrintSettingsFunc ##### -->
52 <!-- ##### FUNCTION gtk_print_settings_new ##### -->
60 <!-- ##### FUNCTION gtk_print_settings_copy ##### -->
69 <!-- ##### FUNCTION gtk_print_settings_has_key ##### -->
79 <!-- ##### FUNCTION gtk_print_settings_get ##### -->
89 <!-- ##### FUNCTION gtk_print_settings_set ##### -->
99 <!-- ##### FUNCTION gtk_print_settings_unset ##### -->
108 <!-- ##### FUNCTION gtk_print_settings_foreach ##### -->
118 <!-- ##### FUNCTION gtk_print_settings_get_bool ##### -->
128 <!-- ##### FUNCTION gtk_print_settings_set_bool ##### -->
138 <!-- ##### FUNCTION gtk_print_settings_get_double ##### -->
148 <!-- ##### FUNCTION gtk_print_settings_get_double_with_default ##### -->
159 <!-- ##### FUNCTION gtk_print_settings_set_double ##### -->
169 <!-- ##### FUNCTION gtk_print_settings_get_length ##### -->
180 <!-- ##### FUNCTION gtk_print_settings_set_length ##### -->
191 <!-- ##### FUNCTION gtk_print_settings_get_int ##### -->
201 <!-- ##### FUNCTION gtk_print_settings_get_int_with_default ##### -->
212 <!-- ##### FUNCTION gtk_print_settings_set_int ##### -->
222 <!-- ##### MACRO GTK_PRINT_SETTINGS_PRINTER ##### -->
229 <!-- ##### FUNCTION gtk_print_settings_get_printer ##### -->
238 <!-- ##### FUNCTION gtk_print_settings_set_printer ##### -->
247 <!-- ##### ENUM GtkPageOrientation ##### -->
252 @GTK_PAGE_ORIENTATION_PORTRAIT:
253 @GTK_PAGE_ORIENTATION_LANDSCAPE:
254 @GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT:
255 @GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE:
257 <!-- ##### MACRO GTK_PRINT_SETTINGS_ORIENTATION ##### -->
264 <!-- ##### FUNCTION gtk_print_settings_get_orientation ##### -->
273 <!-- ##### FUNCTION gtk_print_settings_set_orientation ##### -->
282 <!-- ##### MACRO GTK_PRINT_SETTINGS_PAPER_FORMAT ##### -->
289 <!-- ##### FUNCTION gtk_print_settings_get_paper_size ##### -->
298 <!-- ##### FUNCTION gtk_print_settings_set_paper_size ##### -->
307 <!-- ##### MACRO GTK_PRINT_SETTINGS_PAPER_WIDTH ##### -->
314 <!-- ##### FUNCTION gtk_print_settings_get_paper_width ##### -->
324 <!-- ##### FUNCTION gtk_print_settings_set_paper_width ##### -->
334 <!-- ##### MACRO GTK_PRINT_SETTINGS_PAPER_HEIGHT ##### -->
341 <!-- ##### FUNCTION gtk_print_settings_get_paper_height ##### -->
351 <!-- ##### FUNCTION gtk_print_settings_set_paper_height ##### -->
361 <!-- ##### MACRO GTK_PRINT_SETTINGS_USE_COLOR ##### -->
368 <!-- ##### FUNCTION gtk_print_settings_get_use_color ##### -->
377 <!-- ##### FUNCTION gtk_print_settings_set_use_color ##### -->
386 <!-- ##### MACRO GTK_PRINT_SETTINGS_COLLATE ##### -->
393 <!-- ##### FUNCTION gtk_print_settings_get_collate ##### -->
402 <!-- ##### FUNCTION gtk_print_settings_set_collate ##### -->
411 <!-- ##### MACRO GTK_PRINT_SETTINGS_REVERSE ##### -->
418 <!-- ##### FUNCTION gtk_print_settings_get_reverse ##### -->
427 <!-- ##### FUNCTION gtk_print_settings_set_reverse ##### -->
436 <!-- ##### ENUM GtkPrintDuplex ##### -->
441 @GTK_PRINT_DUPLEX_SIMPLEX:
442 @GTK_PRINT_DUPLEX_HORIZONTAL:
443 @GTK_PRINT_DUPLEX_VERTICAL:
445 <!-- ##### MACRO GTK_PRINT_SETTINGS_DUPLEX ##### -->
452 <!-- ##### FUNCTION gtk_print_settings_get_duplex ##### -->
461 <!-- ##### FUNCTION gtk_print_settings_set_duplex ##### -->
470 <!-- ##### ENUM GtkPrintQuality ##### -->
475 @GTK_PRINT_QUALITY_LOW:
476 @GTK_PRINT_QUALITY_NORMAL:
477 @GTK_PRINT_QUALITY_HIGH:
478 @GTK_PRINT_QUALITY_DRAFT:
480 <!-- ##### MACRO GTK_PRINT_SETTINGS_QUALITY ##### -->
487 <!-- ##### FUNCTION gtk_print_settings_get_quality ##### -->
496 <!-- ##### FUNCTION gtk_print_settings_set_quality ##### -->
505 <!-- ##### MACRO GTK_PRINT_SETTINGS_N_COPIES ##### -->
512 <!-- ##### FUNCTION gtk_print_settings_get_n_copies ##### -->
521 <!-- ##### FUNCTION gtk_print_settings_set_n_copies ##### -->
530 <!-- ##### MACRO GTK_PRINT_SETTINGS_NUMBER_UP ##### -->
537 <!-- ##### FUNCTION gtk_print_settings_get_number_up ##### -->
546 <!-- ##### FUNCTION gtk_print_settings_set_number_up ##### -->
555 <!-- ##### ENUM GtkNumberUpLayout ##### -->
557 Used to determine the layout of pages on a sheet when printing
558 multiple pages per sheet.
561 @GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM: <inlinegraphic valign="middle" fileref="layout-lrtb.png" format="PNG"></inlinegraphic>
562 @GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP: <inlinegraphic valign="middle" fileref="layout-lrbt.png" format="PNG"></inlinegraphic>
563 @GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM: <inlinegraphic valign="middle" fileref="layout-rltb.png" format="PNG"></inlinegraphic>
564 @GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP: <inlinegraphic valign="middle" fileref="layout-rlbt.png" format="PNG"></inlinegraphic>
565 @GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT: <inlinegraphic valign="middle" fileref="layout-tblr.png" format="PNG"></inlinegraphic>
566 @GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT: <inlinegraphic valign="middle" fileref="layout-tbrl.png" format="PNG"></inlinegraphic>
567 @GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT: <inlinegraphic valign="middle" fileref="layout-btlr.png" format="PNG"></inlinegraphic>
568 @GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT: <inlinegraphic valign="middle" fileref="layout-btrl.png" format="PNG"></inlinegraphic>
570 <!-- ##### MACRO GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT ##### -->
577 <!-- ##### FUNCTION gtk_print_settings_get_number_up_layout ##### -->
586 <!-- ##### FUNCTION gtk_print_settings_set_number_up_layout ##### -->
595 <!-- ##### MACRO GTK_PRINT_SETTINGS_RESOLUTION ##### -->
602 <!-- ##### FUNCTION gtk_print_settings_get_resolution ##### -->
611 <!-- ##### FUNCTION gtk_print_settings_set_resolution ##### -->
620 <!-- ##### FUNCTION gtk_print_settings_set_resolution_xy ##### -->
630 <!-- ##### MACRO GTK_PRINT_SETTINGS_RESOLUTION_X ##### -->
637 <!-- ##### FUNCTION gtk_print_settings_get_resolution_x ##### -->
646 <!-- ##### MACRO GTK_PRINT_SETTINGS_RESOLUTION_Y ##### -->
653 <!-- ##### FUNCTION gtk_print_settings_get_resolution_y ##### -->
662 <!-- ##### MACRO GTK_PRINT_SETTINGS_PRINTER_LPI ##### -->
669 <!-- ##### FUNCTION gtk_print_settings_get_printer_lpi ##### -->
678 <!-- ##### FUNCTION gtk_print_settings_set_printer_lpi ##### -->
687 <!-- ##### MACRO GTK_PRINT_SETTINGS_SCALE ##### -->
694 <!-- ##### FUNCTION gtk_print_settings_get_scale ##### -->
703 <!-- ##### FUNCTION gtk_print_settings_set_scale ##### -->
712 <!-- ##### ENUM GtkPrintPages ##### -->
717 @GTK_PRINT_PAGES_ALL:
718 @GTK_PRINT_PAGES_CURRENT:
719 @GTK_PRINT_PAGES_RANGES:
720 @GTK_PRINT_PAGES_SELECTION:
722 <!-- ##### MACRO GTK_PRINT_SETTINGS_PRINT_PAGES ##### -->
729 <!-- ##### FUNCTION gtk_print_settings_get_print_pages ##### -->
738 <!-- ##### FUNCTION gtk_print_settings_set_print_pages ##### -->
747 <!-- ##### STRUCT GtkPageRange ##### -->
755 <!-- ##### MACRO GTK_PRINT_SETTINGS_PAGE_RANGES ##### -->
762 <!-- ##### FUNCTION gtk_print_settings_get_page_ranges ##### -->
772 <!-- ##### FUNCTION gtk_print_settings_set_page_ranges ##### -->
782 <!-- ##### ENUM GtkPageSet ##### -->
791 <!-- ##### MACRO GTK_PRINT_SETTINGS_PAGE_SET ##### -->
798 <!-- ##### FUNCTION gtk_print_settings_get_page_set ##### -->
807 <!-- ##### FUNCTION gtk_print_settings_set_page_set ##### -->
816 <!-- ##### MACRO GTK_PRINT_SETTINGS_DEFAULT_SOURCE ##### -->
823 <!-- ##### FUNCTION gtk_print_settings_get_default_source ##### -->
832 <!-- ##### FUNCTION gtk_print_settings_set_default_source ##### -->
841 <!-- ##### MACRO GTK_PRINT_SETTINGS_MEDIA_TYPE ##### -->
848 <!-- ##### FUNCTION gtk_print_settings_get_media_type ##### -->
857 <!-- ##### FUNCTION gtk_print_settings_set_media_type ##### -->
866 <!-- ##### MACRO GTK_PRINT_SETTINGS_DITHER ##### -->
873 <!-- ##### FUNCTION gtk_print_settings_get_dither ##### -->
882 <!-- ##### FUNCTION gtk_print_settings_set_dither ##### -->
891 <!-- ##### MACRO GTK_PRINT_SETTINGS_FINISHINGS ##### -->
898 <!-- ##### FUNCTION gtk_print_settings_get_finishings ##### -->
907 <!-- ##### FUNCTION gtk_print_settings_set_finishings ##### -->
916 <!-- ##### MACRO GTK_PRINT_SETTINGS_OUTPUT_BIN ##### -->
923 <!-- ##### FUNCTION gtk_print_settings_get_output_bin ##### -->
932 <!-- ##### FUNCTION gtk_print_settings_set_output_bin ##### -->
941 <!-- ##### MACRO GTK_PRINT_SETTINGS_OUTPUT_FILE_FORMAT ##### -->
943 The key used by the "Print to file" printer to store the format
944 of the output. The supported values are "PS" and "PDF".
949 <!-- ##### MACRO GTK_PRINT_SETTINGS_OUTPUT_URI ##### -->
951 The key used by the "Print to file" printer to store the URI
952 to which the output should be written. GTK+ itself supports
958 <!-- ##### MACRO GTK_PRINT_SETTINGS_WIN32_DRIVER_EXTRA ##### -->
965 <!-- ##### MACRO GTK_PRINT_SETTINGS_WIN32_DRIVER_VERSION ##### -->
972 <!-- ##### FUNCTION gtk_print_settings_new_from_file ##### -->
982 <!-- ##### FUNCTION gtk_print_settings_new_from_key_file ##### -->
993 <!-- ##### FUNCTION gtk_print_settings_load_file ##### -->
1004 <!-- ##### FUNCTION gtk_print_settings_load_key_file ##### -->
1016 <!-- ##### FUNCTION gtk_print_settings_to_file ##### -->
1027 <!-- ##### FUNCTION gtk_print_settings_to_key_file ##### -->