![使用 Python 在 Visio 中尋找並替換](images/find-and-replace-in-visio-using-python.jpg#center)
我們使用Visio 檔案 繪製組織圖或流程圖等圖表。這些圖表由包含文字的形狀組成。在某些情況下,我們可能需要以程式設計方式更改 Visio 圖表中的文字。在本文中,我們將了解如何利用 Python 來尋找和取代 Visio 繪圖中的文字。
本文涵蓋以下主題:
用於在 Visio 中尋找和取代的 Python API
Aspose.Diagram 是一個軟體庫,使開發人員能夠在編程過程中建立、編輯和操作 Visio 檔案。它提供了一組採用各種程式語言(包括Python)的API。我們將使用 Aspose.Diagram for the Python API 來自動執行「在 Visio 中尋找和取代」任務。
請在控制台中使用下列 pip 指令下載軟體包或從 PyPI 安裝 API:
pip install aspose-diagram-python
使用 Python 尋找並取代 Visio 圖表中的文本
我們可以按照以下步驟輕鬆找到並取代 Visio 圖表中的文字:
- 使用Diagram 類別載入Visio 檔案。
- 準備新舊文字字串的集合。
- 循環遍歷每個形狀。
- 尋找形狀的特定文字。
- 取代此形狀中的文字。
- 保存圖表。
以下程式碼範例示範如何使用 Python 尋找和取代 Visio 檔案中的文字。
# 此程式碼範例示範如何使用 Python 在 Visio 中轉換尋找和取代。
import aspose.diagram
from aspose.diagram import *
from datetime import datetime, timedelta
# 建立替換字典
replacements = {
"[[CompanyName]]": "Research Society of XYZ",
"[[EmployeeName]]": "James Bond",
"[[SubjectTitle]]": "The internet and social behavior",
"[[TimePeriod]]": f"{(datetime.now() - timedelta(days=365)).strftime('%d/%B/%Y')} -- {datetime.now().strftime('%d/%B/%Y')}",
"[[SubmissionDate]]": (datetime.now() - timedelta(days=7)).strftime('%d/%B/%Y'),
"[[AmountReq]]": "$100,000",
"[[DateApproved]]": (datetime.now() + timedelta(days=1)).strftime('%d/%B/%Y')
}
# 負載圖
diagram = Diagram("D:\\Files\\FindReplaceText.vsdx")
# 透過索引取得頁面對象
page = diagram.pages[0];
# 迭代頁面的形狀
for shape in page.shapes:
for txt in shape.text.value:
if isinstance(txt, Txt):
for key, value in replacements.items():
if key in txt.text:
# 尋找並取代形狀的文本
txt.text = txt.text.replace(key, value)
# 儲存圖表
diagram.save("D:\\Files\\FindReplaceText_out.vsdx", SaveFileFormat.VSDX)
![使用 Python 尋找並取代 Visio 圖表中的文本](images/find-and-replace-in-visio.jpg#center)
使用 Python 尋找並取代 Visio 圖表中的文本
取得免費 API 許可證
您可以獲得免費的臨時許可證,以便在沒有評估限制的情況下使用 API。
在 Visio 中尋找並取代 – 學習資源
除了尋找和取代 Visio 圖表中的文字之外,您還可以使用以下資源了解有關該程式庫的各種其他功能的更多資訊:
結論
總之,我們學習如何使用 Python 以程式設計方式尋找和取代 Visio 圖表中的文字。透過 .NET API 利用 Aspose.Diagram for Python,您可以自動執行涉及 Visio 檔案操作的各種任務。因此,請繼續嘗試一下,並探索該庫的各種其他有用功能。如有任何疑問,請透過我們的免費支援論壇與我們聯繫。