保護取消保護 Visio 圖

Microsoft Visio 文件可以包含不同的頁面、形狀、圖層和其他圖表對象。您可以使用 Java 輕鬆創建、編輯或操作 Microsoft Visio 圖表文件。同樣,您可以保護或取消保護 Visio 文件或其形狀以避免對數據進行任何更改。讓我們通過以下主題了解更多詳細信息:

保護或取消保護 Visio 圖表文件和形狀 – Java API 安裝

Aspose.Diagram for Java API 允許您使用與 Microsoft Visio 相關的格式,如 VSDX、VSDM、VSD 和其他幾種文件格式。您無需安裝任何第三方應用程序即可使用這些文件。此外,安裝 API 很簡單,因為您可以從 下載 部分快速下載其 JAR 文件,或者使用以下詳細信息從 Aspose Repository 安裝它:

存儲庫:

 <repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>http://repository.aspose.com/repo/</url>
    </repository>
</repositories>

依賴:

 <dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-diagram</artifactId>
        <version>21.2</version>
        <classifier>jdk16</classifier>
    </dependency>
</dependencies>

使用 Java 保護 Visio 圖表文件免受更改

VSD、VSDX、VSTX 或 VDW 等 Microsoft Visio 文件可以包含大量關於圖表、流程、流程圖等的信息。 Visio 圖表文件可能包含背景、母版、形狀、樣式等,您可以保護這些內容以避免任何更改。請按照以下步驟保護 Visio 圖表文件:

  1. 使用 Diagram 類加載輸入 Visio 文件
  2. 保護 Visio 文件的背景、形狀、主控形狀和样式。
  3. 保存受保護的輸出圖文件。

下面的代碼顯示瞭如何使用 Java 保護 Visio 圖表文件:

// 加載輸入 Visio 圖表文件
Diagram diagram = new Diagram(dataDir + "ProtectAndUnprotect.vsd");

// 保護 Visio 文件的背景、形狀、主控形狀和样式
diagram.getDocumentSettings().setProtectBkgnds(BOOL.TRUE);
diagram.getDocumentSettings().setProtectMasters(BOOL.TRUE);
diagram.getDocumentSettings().setProtectShapes(BOOL.TRUE);
diagram.getDocumentSettings().setProtectStyles(BOOL.TRUE);

// 保存受保護的輸出圖文件
diagram.save(dataDir + "VisioDiagramProtection_Out.vdx", SaveFileFormat.VDX);

使用 Java 取消保護 Visio 圖表文件

有時您可能需要更新受保護的圖表文件。首先,您需要取消對此類文件的保護,然後再對它們進行進一步處理。以下步驟詳細說明瞭如何取消保護 Visio 圖表:

  1. 加載受保護的輸入 Visio 圖表文件。
  2. 使用 DocumentSettings 類取消保護背景、形狀、主形狀和样式。
  3. 最後,保存未受保護的輸出圖文件。

以下代碼詳細說明瞭如何使用 Java 取消保護 Visio 圖表文件:

// 加載受保護的輸入 Visio 圖表文件
Diagram diagram = new Diagram(dataDir + "ProtectAndUnprotect.vsd");

// 取消保護背景、形狀、主形狀和样式
diagram.getDocumentSettings().setProtectBkgnds(BOOL.FALSE);
diagram.getDocumentSettings().setProtectMasters(BOOL.FALSE);
diagram.getDocumentSettings().setProtectShapes(BOOL.FALSE);
diagram.getDocumentSettings().setProtectStyles(BOOL.FALSE);

// 保存未受保護的輸出圖文件
diagram.save(dataDir + "VisioDiagram_Unprotected.vdx", SaveFileFormat.VDX);

使用 Java 保護 Visio 形狀免受更改

Visio 圖表由不同的形狀組成。組合起來形成圖表或繪圖。您可以移動、旋轉、刪除或修改不同的形狀以獲得效果。此外,您還可以通過限制形狀的不同屬性來避免對 Visio 形狀進行任何更改。讓我們繼續學習如何保護 Visio 形狀免受任何更改,步驟如下:

  1. 加載輸入圖。
  2. 按名稱獲取頁面。
  3. 通過 ID 獲取形狀。
  4. 設置不同的形狀保護。
  5. 保存受保護的輸出 Visio 圖表。

下面的代碼片段解釋瞭如何保護 Visio 形狀免受 Java 更改的影響:

// 負載輸入圖
Diagram diagram = new Diagram(dataDir + "ProtectAndUnprotect.vsd");

// 按名稱獲取頁面
Page page = diagram.getPages().getPage("Flow 1");

// 通過 ID 獲取形狀
Shape shape = page.getShapes().getShape(1);

// 設置保護
shape.getProtection().getLockAspect().setValue(BOOL.TRUE);
shape.getProtection().getLockCrop().setValue(BOOL.TRUE);
shape.getProtection().getLockCustProp().setValue(BOOL.TRUE);
shape.getProtection().getLockDelete().setValue(BOOL.TRUE);
shape.getProtection().getLockHeight().setValue(BOOL.TRUE);
shape.getProtection().getLockMoveX().setValue(BOOL.TRUE);
shape.getProtection().getLockMoveY().setValue(BOOL.TRUE);
shape.getProtection().getLockRotate().setValue(BOOL.TRUE);
shape.getProtection().getLockTextEdit().setValue(BOOL.TRUE);
        
// 保存受保護的輸出 visio 圖
diagram.save(dataDir + "VisioShapeProtection_Out.vdx", SaveFileFormat.VDX);

使用 Java 取消保護 Visio 形狀

您可能需要取消保護 Visio 圖表形狀以更改或更新其內容。以下步驟顯示如何取消保護 Visio 形狀:

  1. 加載輸入 Visio 圖表。
  2. 按名稱訪問頁面。
  3. 通過 ID 獲取形狀。
  4. 使用 Bool 值取消保護 Visio 形狀。
  5. 最後,保存輸出 Visio 圖表。

下面的代碼顯示瞭如何使用 Java 取消保護 Visio 圖表形狀:

// 加載輸入 Visio 圖
Diagram diagram = new Diagram(dataDir + "ProtectAndUnprotect.vsd");

// 按名稱獲取頁面
Page page = diagram.getPages().getPage("Flow 1");

// 通過 ID 獲取形狀
Shape shape = page.getShapes().getShape(1);

// 取消保護 Visio 形狀
shape.getProtection().getLockAspect().setValue(BOOL.FALSE);
shape.getProtection().getLockCrop().setValue(BOOL.FALSE);
shape.getProtection().getLockCustProp().setValue(BOOL.FALSE);
shape.getProtection().getLockDelete().setValue(BOOL.FALSE);
shape.getProtection().getLockHeight().setValue(BOOL.FALSE);
shape.getProtection().getLockMoveX().setValue(BOOL.FALSE);
shape.getProtection().getLockMoveY().setValue(BOOL.FALSE);
shape.getProtection().getLockRotate().setValue(BOOL.FALSE);
shape.getProtection().getLockTextEdit().setValue(BOOL.FALSE);
        
// 使用未受保護的形狀保存輸出 Visio 圖
diagram.save(dataDir + "VisioShape_unprotect.vdx", SaveFileFormat.VDX);

結論

在本文中,您了解瞭如何保護或取消保護 Visio 圖表文件。同樣,您已經閱讀瞭如何使用 Java 語言保護和取消保護形狀免受更改。此外,您可以通過訪問文檔找到Aspose.Diagram for Java API 的許多其他功能。如有任何疑慮,請隨時通過 免費支持論壇 與我們聯繫。

也可以看看