CorelDRAW VBA - 发布(导出)PDF文档

公告


本专栏的相关的文章已不在同步更新,请直接访问 VBA探秘 官方网站或关注微信公众号获取最新文章动态。

coreldraw-vba-publish-pdf

目的

这篇教程将教会你使用 CorelDRAW VBA代码来将文档发布(导出)为PDF文档并进行文档设置的方法。

如何发布PDF

将文档发布为PDF,只需要两个步骤:
第一步,设置PDF属性(如果采用默认PDF设置,那么这一步可以省略)。
第二步,导出到文件。

创建文档

创建一个新文档,创建至少5个页面,每个页面可以适当添加些内容。

无对话框导出

你可以使用 Document.PDFSettings 属性来定义文档的PDF相关设置。这个设置其实是一个类型为 PDFVBASettings 的对象,该对象包含了所有能够通过PDF导出对话框设置的属性。也就是说,通过直接设置这个对象的值,就可以实现无对话框导出。

注意:要导出的目标路径如果有多层目录,则该目录必须存在,如果不存在应该调用目录创建函数 MkDir。这个函数也只能创建单层目录,无法创建多个不存在的目录。要一次性创建多个不存在的目录,可以考虑使用 FileSystemObject 运行时模块,本文不做介绍。

下面的VBA代码将导出当前文档第2~3页、第5页dd为一个名称为 MyPDF.pdf 的PDF文件:

' 获取当前文档
Dim doc As Document
Set doc = ActiveDocument

' 设置文档PDF属性
With doc.PDFSettings
    .Author = "Zebe" ' 作者
    .Bookmarks = True ' 是否生成书签 
    .ColorMode = pdfRGB ' 颜色模式
    .ComplexFillsAsBitmaps = False ' 将复杂填充作为图像
    .CompressText = True ' 是否压缩文本
    .DownsampleGray = True
    .EmbedBaseFonts = True ' 嵌入基础字体
    .EmbedFonts = True ' 嵌入字体
    .Hyperlinks = True ' 是否生成超级链接
    .Keywords = "PDF, Corel, CorelDRAW, 导出PDF, 发布PDF"
    .Linearize = True
    .PageRange = "2-3, 5" ' 页面范围
    .pdfVersion = pdfVersion13 ' PDF版本
    .PublishRange = pdfPageRange ' 发布范围
    .TrueTypeToType1 = True ' TrueType字体转换
End With

' 导出到本地磁盘(目标文件夹必须存在,否则运行会异常)
doc.PublishToPDF "D:\temp\data\MyPDF.pdf"
MsgBox "导出PDF成功!"

有对话框导出

下面的VBA代码可以显示一个导出对话框,提供给用户更灵活的设置。

' 获取当前文档
Dim doc As Document
Set doc = ActiveDocument

' 判断是否设置了显示对话框,如果是则调用默认设置进行导出
If doc.PDFSettings.ShowDialog = True Then
    doc.PublishToPDF "D:\temp\data\MyPDF2.pdf"
    MsgBox "导出PDF成功!"
End If

原创声明:本文首发于个人CorelDRAW VBA博客,请尊重文章版权。
转载请注明原文链接:http://www.cdrvba.com/coreldraw-vba-publish-pdf

你可能感兴趣的:(CorelDRAW VBA - 发布(导出)PDF文档)