Najít a nahradit ve Visiu pomocí Pythonu

Ke kreslení diagramů, jako jsou organizační diagramy nebo vývojové diagramy, používáme soubory Visio. Tyto diagramy se skládají z obrazců, které obsahují text. V určitých případech může být nutné provést změny textu v diagramu aplikace Visio programově. V tomto článku se podíváme na to, jak můžeme využít Python k vyhledání a nahrazení textu ve výkresech Visia.

Tento článek se zabývá následujícími tématy:

  1. Python API k nalezení a nahrazení ve Visiu
  2. Najít a nahradit text ve Visiu
  3. Bezplatné zdroje

Python API pro vyhledání a nahrazení ve Visiu

Aspose.Diagram je softwarová knihovna, která umožňuje vývojářům vytvářet, upravovat a manipulovat se soubory Visio v průběhu programování. Poskytuje sadu API v různých programovacích jazycích, včetně Pythonu. K automatizaci úlohy „najít a nahradit ve Visiu“ použijeme Aspose.Diagram for Python API.

Prosím stáhněte si balíček nebo nainstalujte API z PyPI pomocí následujícího příkazu pip v konzole:

pip install aspose-diagram-python 

Najděte a nahraďte text v diagramu Visio pomocí Pythonu

Pomocí následujících kroků můžeme snadno najít a nahradit text v diagramu aplikace Visio:

  1. Načtěte soubor aplikace Visio pomocí třídy Diagram.
  2. Připravte sbírku starých a nových textových řetězců.
  3. Projděte každý tvar.
  4. Najděte konkrétní text tvaru.
  5. Nahraďte text v tomto tvaru.
  6. Uložte diagram.

Následující ukázka kódu ukazuje, jak najít a nahradit text v souboru Visio pomocí Pythonu.

# Tato ukázka kódu ukazuje, jak převést najít a nahradit ve Visiu pomocí Pythonu.
import aspose.diagram
from aspose.diagram import *
from datetime import datetime, timedelta

# Vytvořte slovník náhrad
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')
}

# Zátěžový diagram
diagram = Diagram("D:\\Files\\FindReplaceText.vsdx")

# Získejte objekt stránky podle indexu
page = diagram.pages[0];

# Procházejte tvary stránky
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:
                    # Najít a nahradit text tvaru
                    txt.text = txt.text.replace(key, value)

# Uložte diagram
diagram.save("D:\\Files\\FindReplaceText_out.vsdx", SaveFileFormat.VSDX)
Najděte a nahraďte text v diagramu Visio pomocí Pythonu

Najděte a nahraďte text v diagramu Visio pomocí Pythonu

Získejte bezplatnou licenci API

Můžete získat bezplatnou dočasnou licenci, abyste mohli používat API bez omezení hodnocení.

Najít a nahradit ve Visiu – výukové zdroje

Kromě hledání a nahrazování textu v diagramech aplikace Visio se můžete dozvědět více o různých dalších funkcích knihovny pomocí zdrojů níže:

Závěr

Na závěr jsme se naučili, jak najít a nahradit text v diagramech Visio programově pomocí Pythonu. Využitím Aspose.Diagram for Python prostřednictvím rozhraní .NET API můžete automatizovat různé úlohy zahrnující manipulaci se soubory aplikace Visio. Takže pokračujte, vyzkoušejte to a prozkoumejte různé další užitečné funkce knihovny. V případě jakýchkoliv nejasností nás prosím kontaktujte na našem bezplatném fóru podpory.

Viz také