以下是用Python裡面的Reportlib模組產生自己喜歡的PDF,
可以依照你要的頁面、紙張或印表機自訂大小,
例如名片、發票、收據、感熱列印機等等。 非常之好用。
###code by shadowwolf### ###2016/10/24### #coding: utf8 import reportlab from reportlab.pdfgen import canvas from reportlab.lib.units import mm pdf_file_name="D:/name_you_want.pdf" c = reportlab.pdfgen.canvas.Canvas(pdf_file_name) c.setPageSize((82.5*mm, 50*mm)) #自訂義頁面寬度、高度 #以下就是在canvas上加東加西,詳情請上官網查詢Documentation c.drawString(10,10,"Hello World") c.drawString(50,50,"Hello World2") c.drawString(100,100,"Hello World3") c.showPage() #產生頁面 c.save() #存檔
產生PDF之後,再用Acrobat的SDK(用Pywin32呼叫)。
記得要裝Acrobat的standard或是pro版,
我有用Acrobat 7, Acrobat XI試過都可以。
以下會以靜默模式把PDF文件丟入列印佇列,
並且用預設印表機 印出來
from win32com.client import Dispatch avdoc = Dispatch('AcroExch.AVDoc') avdoc.Open(pdf_file_name, 'name') pages = avdoc.GetPDDoc().GetNumPages() avdoc.PrintPagesSilent(0, pages-1, 3, 1, 0) ### 開始頁(0開始), 結束頁, PS, 二維碼, 是否縮放
沒有留言:
張貼留言