Найти и заменить в Visio с помощью Python

Мы используем файлы Visio для рисования таких диаграмм, как организационные диаграммы или блок-схемы. Эти диаграммы состоят из фигур, содержащих текст. В некоторых случаях нам может потребоваться внести изменения в текст диаграммы Visio программным способом. В этой статье мы рассмотрим, как можно использовать Python для поиска и замены текста в рисунках Visio.

В этой статье рассматриваются следующие темы:

  1. API Python для поиска и замены в Visio
  2. Найти и заменить текст в Visio
  3. Бесплатные ресурсы

API Python для поиска и замены в Visio

Aspose.Diagram — это программная библиотека, которая дает разработчикам возможность создавать, редактировать файлы Visio и манипулировать ими в процессе программирования. Он предоставляет набор API на различных языках программирования, включая Python. Мы будем использовать API Aspose.Diagram for the Python для автоматизации задачи «найти и заменить в Visio».

Пожалуйста, загрузите пакет или установите API из PyPI, используя следующую команду pip в консоли:

pip install aspose-diagram-python 

Найдите и замените текст в диаграмме Visio с помощью Python

Мы можем легко найти и заменить текст на диаграмме Visio, выполнив следующие действия:

  1. Загрузите файл Visio, используя класс Diagram.
  2. Подготовьте коллекцию старых и новых текстовых строк.
  3. Прокрутите каждую фигуру.
  4. Найдите конкретный текст фигуры.
  5. Замените текст в этой фигуре.
  6. Сохраните схему.

В следующем примере кода показано, как найти и заменить текст в файле Visio с помощью Python.

# В этом примере кода показано, как преобразовать поиск и замену в Visio с помощью Python.
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)
Найдите и замените текст в диаграмме Visio с помощью Python

Найдите и замените текст в диаграмме Visio с помощью Python

Получите бесплатную лицензию API

Вы можете получить бесплатную временную лицензию, чтобы использовать API без ограничений ознакомительной версии.

Поиск и замена в Visio — учебные ресурсы

Помимо поиска и замены текста на диаграммах Visio, вы можете узнать больше о различных других функциях библиотеки, используя ресурсы ниже:

Заключение

В заключение мы научились программно находить и заменять текст в диаграммах Visio с помощью Python. Используя Aspose.Diagram for Python через .NET API, вы можете автоматизировать различные задачи, связанные с манипулированием файлами Visio. Так что давайте, попробуйте и изучите различные другие полезные функции библиотеки. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на нашем форуме бесплатной поддержки.

Смотрите также