Determining printer options (Python)¶
Determining printer options (Python)¶
1# This example shows how to determine the default document properties
2# of a printer.
3
4# The IPrintOptions returned by the ICreator.print_options()
5# function contains the document properties of the default windows printer.
6
7# Setting the IPrintOptions.printer_name property loads the default document
8# properties for that printer.
9
10# Create a local variable for the output toolbox
11ot = impact.gui.output_toolbox
12
13# Clear the output toolbox
14
15def DescribePrintOptions(opts):
16 impact.gui.output_toolbox.add("Printer: " + opts.printer_name)
17 impact.gui.output_toolbox.add("ShowDialog: " + str(opts.show_dialog))
18 impact.gui.output_toolbox.add("Copies: " + str(opts.number_of_copies))
19 impact.gui.output_toolbox.add("Orientation: " + str(opts.orientation))
20 impact.gui.output_toolbox.add("OneToOneScale: " + str(opts.one_to_one_scale))
21 impact.gui.output_toolbox.add("Colour: " + str(opts.colour))
22 impact.gui.output_toolbox.add("Source: " + str(opts.source))
23 impact.gui.output_toolbox.add("IgnoreLineWeights: " + str(opts.ignore_line_weights))
24 impact.gui.output_toolbox.add("IncreaseLineWeightsBy: " + str(opts.increase_line_weights_by))
25 if opts.report_settings.isNone():
26 impact.gui.output_toolbox.add("ReportSettings: <None>")
27 else:
28 impact.gui.output_toolbox.add("ReportSettings: " + opts.report_settings.full_name)
29 if opts.graphic_settings.isNone():
30 impact.gui.output_toolbox.add("GraphicSettings: <None>")
31 else:
32 impact.gui.output_toolbox.add("GraphicSettings: " + opts.graphic_settings.full_name)
33 impact.gui.output_toolbox.add("PaperSize: " + str(opts.paper_size))
34 if opts.paper_size == ipPaperSize.psCustom:
35 impact.gui.output_toolbox.add("PaperLength: " + str(opts.paper_length))
36 impact.gui.output_toolbox.add("PaperWidth: " + str(opts.paper_width))
37 impact.gui.output_toolbox.add("PaperSource: " + str(opts.paper_source))
38 impact.gui.output_toolbox.add("Duplexing: " + str(opts.paper_duplex))
39
40drawing = impact.active_drawing
41
42if not drawing.isNone():
43 options = impact.creator.print_options()
44
45 ot.add("===== Default Printer Options =====")
46 DescribePrintOptions(options)
47
48 ot.add("===== Specific Printer Options =====")
49 options.printer_name = "\\SCREAMER\\Canon S820"
50 DescribePrintOptions(options)
51
52else:
53 ot.add("No impact.active_drawing")
54
55ot.clear()