[]
        
首页
开发者学堂
文档
论坛
市场
生态机会
活动
立即试用
(Showing Draft Content)

PdfSecurityOptions

Class PdfSecurityOptions

java.lang.Object
com.grapecity.documents.excel.PdfSecurityOptions

public class PdfSecurityOptions extends Object
表示 PDF 安全设置。

使用此类可以为 PDF 文档指定密码和权限,例如文档是否可以打印、修改、添加注释或提取其内容。将工作簿保存为 PDF 时,可以通过 PdfSaveOptions.setSecurityOptions(PdfSecurityOptions) 应用这些设置。

请使用来自安全配置或密钥管理服务的高熵唯一密码。不要在应用程序代码中对 PDF 密码进行硬编码。


 PdfSecurityOptions securityOptions = new PdfSecurityOptions();
 securityOptions.setUserPassword(getPdfUserPassword());
 securityOptions.setOwnerPassword(getPdfOwnerPassword());
 securityOptions.setPrintPermission(false);
 securityOptions.setExtractContentPermission(false);
 PdfSaveOptions options = new PdfSaveOptions();
 options.setSecurityOptions(securityOptions);
 workbook.save(new ByteArrayOutputStream(), options);
 
  • Constructor Details

    • PdfSecurityOptions

      public PdfSecurityOptions()
  • Method Details

    • getUserPassword

      public String getUserPassword()
      获取 PDF 文档的用户密码。

      通过 setUserPassword(String) 指定用户密码后,此密码用于打开导出的 PDF 文档。

      请使用来自安全配置或密钥管理服务的高熵唯一密码。不要在应用程序代码中对此值进行硬编码。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       String configuredUserPassword = getPdfUserPassword();
       options.setUserPassword(configuredUserPassword);
       String userPassword = options.getUserPassword();
       
      Returns:
      PDF 文档的用户密码;如果未设置用户密码,则为 null。
    • setUserPassword

      public void setUserPassword(String value)
      设置 PDF 文档的用户密码。

      请使用来自安全配置或密钥管理服务的高熵唯一密码。不要在应用程序代码中对此值进行硬编码。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       String configuredUserPassword = getPdfUserPassword();
       options.setUserPassword(configuredUserPassword);
       
      Parameters:
      value - PDF 文档的用户密码;如果未设置用户密码,则为 null。
    • getOwnerPassword

      public String getOwnerPassword()
      获取 PDF 文档的所有者密码。

      在 PDF 导出期间应用这些安全选项时,更改 PDF 文档权限需要所有者密码。

      请使用来自安全配置或密钥管理服务的高熵唯一密码。不要在应用程序代码中对此值进行硬编码。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       String configuredOwnerPassword = getPdfOwnerPassword();
       options.setOwnerPassword(configuredOwnerPassword);
       String ownerPassword = options.getOwnerPassword();
       
      Returns:
      PDF 文档的所有者密码;如果未设置所有者密码,则为 null。
    • setOwnerPassword

      public void setOwnerPassword(String value)
      设置 PDF 文档的所有者密码。

      在 PDF 导出期间应用这些安全选项时,更改 PDF 文档权限需要所有者密码。

      请使用来自安全配置或密钥管理服务的高熵唯一密码。不要在应用程序代码中对此值进行硬编码。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       String configuredOwnerPassword = getPdfOwnerPassword();
       options.setOwnerPassword(configuredOwnerPassword);
       
      Parameters:
      value - PDF 文档的所有者密码;如果未设置所有者密码,则为 null。
    • getPrintPermission

      public boolean getPrintPermission()
      获取是否允许打印 PDF 文档。

      此属性控制生成的 PDF 是否可以打印。默认值为 true。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setPrintPermission(false);
       boolean allowPrint = options.getPrintPermission();
       
      Returns:
      如果允许打印 PDF 文档,则为 true;否则为 false。
    • setPrintPermission

      public void setPrintPermission(boolean value)
      设置是否允许打印 PDF 文档。

      此属性控制生成的 PDF 是否可以打印。默认值为 true。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setPrintPermission(false);
       
      Parameters:
      value - 如果允许打印 PDF 文档,则为 true;否则为 false。
    • getModifyDocumentPermission

      public boolean getModifyDocumentPermission()
      获取是否允许修改 PDF 文档。

      此属性指示是否允许用户修改导出的 PDF 文档。默认值为 true。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setModifyDocumentPermission(false);
       boolean allowModifyDocument = options.getModifyDocumentPermission();
       
      Returns:
      如果允许修改 PDF 文档,则为 true;否则为 false。
    • setModifyDocumentPermission

      public void setModifyDocumentPermission(boolean value)
      设置是否允许修改 PDF 文档。

      此属性指示是否允许用户修改导出的 PDF 文档。默认值为 true。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setModifyDocumentPermission(false);
       
      Parameters:
      value - 如果允许修改 PDF 文档,则为 true;否则为 false。
    • getModifyAnnotationsPermission

      public boolean getModifyAnnotationsPermission()
      获取是否允许对文档添加批注。

      此属性指示是否可以在导出的 PDF 中添加或修改注释。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setModifyAnnotationsPermission(false);
       boolean allowAnnotations = options.getModifyAnnotationsPermission();
       
      Returns:
      如果允许对文档添加批注,则为 true;否则为 false。
    • setModifyAnnotationsPermission

      public void setModifyAnnotationsPermission(boolean value)
      设置是否允许对文档添加批注。

      此属性指示是否可以在导出的 PDF 中添加或修改注释。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setModifyAnnotationsPermission(false);
       
      Parameters:
      value - 如果允许对文档添加批注,则为 true;否则为 false。
    • getFillFormsPermission

      public boolean getFillFormsPermission()
      获取是否允许填写交互式表单字段。

      此属性指示是否可以在导出的 PDF 中填写表单字段。根据产品文档,即使 getModifyAnnotationsPermission() 返回 false,此权限仍可允许填写表单。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setModifyAnnotationsPermission(false);
       options.setFillFormsPermission(true);
       boolean allowFillForms = options.getFillFormsPermission();
       
      Returns:
      如果允许填写表单字段,则为 true;否则为 false。
    • setFillFormsPermission

      public void setFillFormsPermission(boolean value)
      设置是否允许填写交互式表单字段。

      此属性指示是否可以在导出的 PDF 中填写表单字段。根据产品文档,即使 getModifyAnnotationsPermission() 设置为 false,此权限仍可允许填写表单。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setModifyAnnotationsPermission(false);
       options.setFillFormsPermission(true);
       
      Parameters:
      value - 如果允许填写表单字段,则为 true;否则为 false。
    • getExtractContentPermission

      public boolean getExtractContentPermission()
      获取是否允许从 PDF 文档复制或提取内容。

      此属性指示是否可以复制或提取 PDF 内容。使用 setExtractContentPermission(boolean) 可启用或禁用此权限。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setExtractContentPermission(false);
       boolean allowExtractContent = options.getExtractContentPermission();
       
      Returns:
      如果允许复制或提取 PDF 内容,则为 true;否则为 false。
    • setExtractContentPermission

      public void setExtractContentPermission(boolean value)
      设置是否允许从 PDF 文档复制或提取内容。
      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setExtractContentPermission(false);
       
      Parameters:
      value - 如果允许复制或提取 PDF 内容,则为 true;否则为 false。
    • getAssembleDocumentPermission

      public boolean getAssembleDocumentPermission()
      获取插入、旋转或删除页面以及创建书签或缩略图图像的权限,即使未设置 getModifyDocumentPermission()。

      此属性指示是否允许 PDF 文档装订操作。使用 setAssembleDocumentPermission(boolean)可启用或禁用此权限。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setAssembleDocumentPermission(false);
       boolean canAssemble = options.getAssembleDocumentPermission();
       
      Returns:
      如果允许插入、旋转或删除页面以及创建书签或缩略图图像,则为 true;否则为 false。
    • setAssembleDocumentPermission

      public void setAssembleDocumentPermission(boolean value)
      设置插入、旋转或删除页面以及创建书签或缩略图图像的权限,即使未设置 getModifyDocumentPermission()。
      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setAssembleDocumentPermission(false);
       
      Parameters:
      value - 如果允许插入、旋转或删除页面以及创建书签或缩略图图像,则为 true;否则为 false。
    • getFullQualityPrintPermission

      public boolean getFullQualityPrintPermission()
      获取高质量打印的权限。

      此属性指示生成的 PDF 是否允许保真、高质量打印。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setFullQualityPrintPermission(true);
       boolean allowHighQualityPrint = options.getFullQualityPrintPermission();
       
      Returns:
      如果允许高质量打印,则为 true;否则为 false。
    • setFullQualityPrintPermission

      public void setFullQualityPrintPermission(boolean value)
      设置高质量打印的权限。

      此属性指示生成的 PDF 是否允许保真、高质量打印。

      
       PdfSecurityOptions options = new PdfSecurityOptions();
       options.setFullQualityPrintPermission(true);
       
      Parameters:
      value - 如果允许高质量打印,则为 true;否则为 false。
    • toString

      public String toString()
      Returns a string representation of these PDF security options.
      Overrides:
      toString in class Object
      Returns:
      A string representation of these PDF security options.