[python-win32] How to change print copies
Pavel Olifer
pavel.olifer at gmail.com
Thu Apr 23 01:10:58 EDT 2020
Good day!
i use your package for changing printer settings (duplex, copies).
for duplex it is work, but for copies it doesn't.
@source_code
def set_duplex(printer_name):
# print_defaults = {"DesiredAccess": win32print.PRINTER_ACCESS_ADMINISTER}
print_defaults = {"DesiredAccess": win32print.PRINTER_ACCESS_USE}
handle = win32print.OpenPrinter(printer_name, print_defaults)
level = 2
attributes = win32print.GetPrinter(handle, level)
print('Printer= ', printer_name)
print('Copies= ', win32print.GetPrinter(handle, level)['pDevMode'].Copies)
print('Duplex= ', win32print.GetPrinter(handle, level)['pDevMode'].Duplex)
# attributes['pDevMode'].Duplex = 1 # no flip
attributes['pDevMode'].Duplex = 2 # flip up
# attributes['pDevMode'].Duplex = 3 # flip over
attributes['pDevMode'].Copies = 4
#for key in attributes:
# print('{}'.format(key))
#for n in dir(attributes['DevMode']):
# print('{} {}'.format(n, getattr(attributes['DevMode'], n)))
try:
print('try')
win32print.SetPrinter(handle, level, attributes, 0)
print('Copies= ', win32print.GetPrinter(handle, level)['pDevMode'].Copies)
print('Duplex= ', win32print.GetPrinter(handle, level)['pDevMode'].Duplex)
except Exception as e:
print(e)
win32print.ClosePrinter(handle)
def print_excel(printer_no, path_to_file, duplex='Y', copies=4):
printer_name = app_config.PRINTER_NAMES[printer_no]
if duplex == 'Y':
set_duplex(printer_name=printer_name)
win32api.ShellExecute(
1,
'printto',
path_to_file,
'{}'.format(printer_name),
'.',
0
)
if __name__ == '__main__':
set_duplex(printer_name='\\\\server_name\\printer_name')
if i change and then check (just print) properties changed and document printed on both sides, but only 1 copy, not 4.
may be you know what did i miss ?
My question on stackoverflow: https://stackoverflow.com/questions/58415047/python-win32print-how-to-change-copies <https://stackoverflow.com/questions/58415047/python-win32print-how-to-change-copies>
-- Pavel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-win32/attachments/20200423/20746c49/attachment.html>
More information about the python-win32
mailing list