Python pywin32文档打印 Python使用扩展库pywin32实现批量文档打印实例

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Python pywin32文档打印 Python使用扩展库pywin32实现批量文档打印实例

dongfuguo   2021-04-21 我要评论

本文代码需要正确安装Python扩展库pywin32,建议下载whl文件进行离线安装。然后调用win32api的ShellExecute()函数来实现文档打印,系统会根据文档类型自动选择不同的软件进行打开并自动打印,如果要打印的是图片的话,需要手工确认一下。

关于ShellExecute()函数的参数含义请查阅Windows API或pywin32帮助文档。

import win32print
import win32api

for fn in ['1.txt', '2.txt', '3.txt', '4.docx']:
 win32api.ShellExecute(0,\
   'print',\

   fn,\
   win32print.GetDefaultPrinterW(),\
   ".",
  0)

补充知识:Python-EXECL批量打印

python版本为2.7

要用到的Python库:pywin32(pip install pywin32)

#coding=UTF-8
#-*-conding : gb2312 -*-

import os 
import win32com.client 
import win32api 
import time

dir_name = r'C:\Users\Administrator\Desktop\sqqk' #文件路径 
file_name=os.listdir(dir_name)  #路径下文件名称
file_dir =[os.path.join(dir_name,x) for x in file_name] #得到文件路径

b=len(file_dir)
i = 0
while i <= len(file_dir):
 xlApp = win32com.client.Dispatch('Excel.Application') #打开 EXCEL ,这里不需改动
 xlApp.Visible = 0   #不在后台运行
 xlApp.EnableEvents = False
 xlApp.DisplayAlerts = False  #显示弹窗
 xlBook = xlApp.Workbooks.Open(file_dir[i])  
 xlApp.ActiveWorkbook.Sheets(1).PageSetup.Zoom = False 
 xlApp.ActiveWorkbook.Sheets(1).PageSetup.FitToPagesWide = 1
 xlApp.ActiveWorkbook.Sheets(1).PageSetup.FitToPagesTall = 1
 #xlBook.Save()   #保存
 ename = xlApp.ActiveWorkbook.name  #获取打开工作表名称
 
 xlBook.PrintOut(1,1,)   #打印页数1到1
 xlApp.quit()   #退出
 print ename,"%d%%" %(((i+1.0)/b)*100.0)  #打印出打开工作表名称和当前百分比进度
 time.sleep(6)
 i = i + 1

以上这篇Python使用扩展库pywin32实现批量文档打印实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

猜您喜欢

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们