在VB6中从Word打印到PDF

时间:2013-07-23 09:55:08

标签: pdf vb6 ms-word

我尝试从Word打印到PDF,但每次都选择不同的页面范围。

Dim objWord As Word.Application
Set objWord = New Word.Application
objWord.Visible = True
objWord.Documents.Open "s:\reports\EY\FileName.doc", , , True
objWord.ActiveDocument.PrintOut , , , "s:\test.pdf", , , , 1, "1-2"

我的默认打印机是我的PDF创建者。

文档打开正常,PDF已创建,但它不可读。

取消页面范围,正确创建PDF,只显示整个文档。

我在PrintOut方法参数中搜索高和低。

1 个答案:

答案 0 :(得分:2)

这些参数可以在这里找到 - http://msdn.microsoft.com/en-us/library/office/bb237242%28v=office.12%29.aspx(就像jac在评论中所说的那样)。

无论如何,这是一个代码,它将当前文档的3-5页打印到默认打印机。某些值可能没用,可能会被删除,但这是Word在录制宏并打印文档时生成的内容。

 objWord.PrintOut FileName:="", Range:=wdPrintRangeOfPages, Item:=wdPrintDocumentWithMarkup, Copies:=1, Pages:="3-5", PageType:=            wdPrintAllPages, Collate:=True, Background:=True, PrintToFile:=False,            PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0,            PrintZoomPaperHeight:=0

请注意wdPrintRangeOfPages和wdPrintDocumentWithMarkup,也许这就是缺少的。

(在宏中它是Application而不是objWord)