-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathPrintNodePrintJobOptions.cs
More file actions
99 lines (86 loc) · 4.38 KB
/
PrintNodePrintJobOptions.cs
File metadata and controls
99 lines (86 loc) · 4.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
using Newtonsoft.Json;
namespace PrintNodeNet
{
public class PrintNodePrintJobOptions
{
/// <summary>
/// The name of one of the paper trays or output bins reported by the printer capability property "bins".
///
/// See <a href="https://www.printnode.com/docs/api/curl/#printer-capabilities">Printer capabilities</a>.
/// </summary>
[JsonProperty("bin")]
public string Bin { get; set; }
/// <summary>
/// Enables print copy collation when printing multiple copies. If this option is not specified the printer default is used.
/// </summary>
[JsonProperty("collate")]
public bool Collate { get; set; }
/// <summary>
/// Positive integer. Default 1. The number of copies to be printed. Maximum value as reported by the printer capability
/// property "copies".
///
/// See <a href="https://www.printnode.com/docs/api/curl/#printer-capabilities">Printer capabilities</a>.
/// </summary>
[JsonProperty("copies")]
public int Copies { get; set; } = 1;
/// <summary>
/// The dpi setting to use for this PrintJob. Allowed values are those reported by the printer capability property "dpis".
///
/// See <a href="https://www.printnode.com/docs/api/curl/#printer-capabilities">Printer capabilities</a>.
/// </summary>
[JsonProperty("dpi")]
public string Dpi { get; set; }
/// <summary>
/// One of long-edge or short-edge for 2 sides printing along the long-edge (portrait) or the short edge (landscape) respectively.
/// If this option is not specified the the printer default is used.
/// </summary>
[JsonProperty("duplex")]
public string Duplex { get; set; }
/// <summary>
/// OSX only. Defaults true. If you wish to disable this option pass false here.
/// </summary>
[JsonProperty("fit_to_page")]
public bool FitToPage { get; set; }
/// <summary>
/// The named media to use for this PrintJob. Allowed values are one of the values reported by the printer capability property "medias".
/// We've found some printers on OSX ignore this setting unless a "bin" (paper tray) option is also set.
///
/// See <a href="https://www.printnode.com/docs/api/curl/#printer-capabilities">Printer capabilities</a>.
/// </summary>
[JsonProperty("media")]
public string Media { get; set; }
/// <summary>
/// OSX only. Allows support for printing muliple pages per physical sheet of paper. Default 1. Allowed values are those reported
/// by the printer capability property "nup".
///
/// See <a href="https://www.printnode.com/docs/api/curl/#printer-capabilities">Printer capabilities</a>.
/// </summary>
[JsonProperty("nup")]
public int Nup { get; set; } = 1;
/// <summary>
/// A set of pages to print from a PDF. The format is described here. A few quick exampleE.g. 1,3 prints pages 1 and 3. -5 prints
/// pages 1 through 5 inclusive. - prints all pages. Different components can be combined with a comma. 1,3- prints all pages except page 2.
///
/// See <a href="https://www.printnode.com/docs/api/curl/#parameters">Parameters</a>.
/// </summary>
[JsonProperty("pages")]
public string Pages { get; set; } = "-";
/// <summary>
/// A named paper size to use. Allowed values are the keys in the object returned by the printer capability property "papers".
///
/// See <a href="https://www.printnode.com/docs/api/curl/#printer-capabilities">Printer capabilities</a>.
/// </summary>
[JsonProperty("paper")]
public string Paper { get; set; }
/// <summary>
/// One of 90, 180 or 270. Supports rotating all pages while printing. We've found support on OSX to be patchy. Support depends on both printer and driver.
/// </summary>
[JsonProperty("rotate")]
public int Rotate { get; set; }
/// <summary>
/// Print in color or black and white. Ignored by Print Engine 4.
/// </summary>
[JsonProperty("color")]
public bool Color { get; set; } = true;
}
}