MP.PDFDocumentCreate
PDFDocumentCreate
描述
在内存中创建新 PDFDocument 对象。
说明
使用此函数的常见情况是创建 PDF 地图册。一般步骤包括创建新 PDFDocument 对象、从现有 PDF 文件附加内容以及将 PDFDocument 对象保存到磁盘。
在对 PDFDocument 对象执行 appendPages 或 insertPages 之后执行 saveAndClose 才会创建文件。
语法
PDFDocumentCreate (pdf_path)
参数 | 说明 | 数据类型 |
pdf_path
|
调用 saveAndClose 方法时,用于指定生成的 PDF 文件的路径和文件名的字符串。 |
String |
数据类型 | 说明 |
PDFDocument |
PDFDocument 对象可用于管理 PDF 文档,包括合并和删除页面的工具、设置文档打开方式的工具以及创建或更改文档安全性设置的工具。 |
代码示例
PDFDocumentCreate 示例此脚本将创建新 PDF 文档、附加来自三个独立 PDF 文档的内容并保存生成的 PDF 文件。
import arcpy, os
#Set file name and remove if it already exists
pdfPath = r"C:\Projects\YosemiteNP\AttractionsMapBook.pdf"
if os.path.exists(pdfPath):
os.remove(pdfPath)
#Create the file and append pages
pdfDoc = arcpy.mp.PDFDocumentCreate(pdfPath)
pdfDoc.appendPages(r"C:\Projects\YosemiteNP\Title.pdf")
pdfDoc.appendPages(r"C:\Projects\YosemiteNP\MapPages.pdf")
pdfDoc.appendPages(r"C:\Projects\YosemiteNP\ContactInfo.pdf")
#Commit changes and delete variable reference
pdfDoc.saveAndClose()
del pdfDoc
================================
PDFDocumentOpen
描述
返回对磁盘上现有 PDFDocument 文件的引用。
说明
使用该函数的常见情形是修改现有 PDF 文件内容或属性。引用后,即可执行 appendPages、insertPages 或 deletePages,还可使用 updateDocProperties 和 updateDocSecurity 方法修改 PDF 文件设置。
对于要提交至磁盘的更改,请确保执行 PDFDocument 操作后调用 saveAndClose。
语法
PDFDocumentOpen (pdf_path, {user_password}, {master_password})
参数 | 说明 | 数据类型 |
pdf_path
|
用于指定要打开的 PDF 文件的路径和文件名的字符串。 |
String |
user_password
|
用于指定用户密码的字符串。如果已设置用户密码,则需要提供该密码才能打开 PDF。 |
String |
master_password
|
用于指定主密码的字符串。主密码(如果已设置)可控制打印、编辑、提取、评论等权限。 |
String |
数据类型 | 说明 |
PDFDocument |
PDFDocument 对象可用于管理 PDF 文档,包括合并和删除页面的工具、设置文档打开方式的工具以及创建或更改文档安全性设置的工具。 |
代码示例
PDFDocumentOpen 示例以下脚本会修改 PDF 文档元数据属性并且设置文档以何种样式打开。
import arcpy
pdfDoc = arcpy.mp.PDFDocumentOpen(r"C:\Projects\YosemiteNP\AttractionsMapBook.pdf")
pdfDoc.updateDocProperties(pdf_title="Yosemite Main Attrations Map Book",
pdf_author="Esri",
pdf_subject="Main Attractions Map Book",
pdf_keywords="Yosemite; Map Books; Attractions",
pdf_open_view="USE_THUMBS",
pdf_layout="SINGLE_PAGE")
pdfDoc.saveAndClose()
del pdfDoc