Usamos arquivos Visio para desenhar diagramas como organogramas ou fluxogramas. Esses diagramas consistem em formas que contêm texto. Em certos casos, talvez seja necessário fazer alterações no texto de um diagrama do Visio de forma programática. Neste artigo, veremos como podemos utilizar Python para localizar e substituir texto em desenhos do Visio.
Este artigo cobre os seguintes tópicos:
- API Python para localizar e substituir no Visio
- Localizar e substituir texto no Visio
- Recursos Gratuitos
API Python para localizar e substituir no Visio
Aspose.Diagram é uma biblioteca de software que oferece aos desenvolvedores a capacidade de criar, editar e manipular arquivos Visio durante a programação. Ele fornece um conjunto de APIs em várias linguagens de programação, incluindo Python. Usaremos a API Aspose.Diagram for the Python para automatizar a tarefa “localizar e substituir no Visio”.
Por favor, baixe o pacote ou instale a API do PyPI usando o seguinte comando pip no console:
pip install aspose-diagram-python
Encontre e substitua texto em um diagrama do Visio usando Python
Podemos localizar e substituir facilmente o texto em um diagrama do Visio seguindo as etapas abaixo:
- Carregue um arquivo do Visio usando a classe Diagram.
- Prepare uma coleção de sequências de texto novas e antigas.
- Faça um loop em cada forma.
- Encontre um texto específico de uma forma.
- Substitua o texto nesta forma.
- Salve o diagrama.
O exemplo de código a seguir mostra como localizar e substituir texto em um arquivo Visio usando Python.
# Este exemplo de código demonstra como converter localização e substituição no Visio usando Python.
import aspose.diagram
from aspose.diagram import *
from datetime import datetime, timedelta
# Crie um dicionário de substituições
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')
}
# Diagrama de carga
diagram = Diagram("D:\\Files\\FindReplaceText.vsdx")
# Obtenha o objeto da página por índice
page = diagram.pages[0];
# Iterar pelas formas de uma página
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:
# Encontre e substitua o texto de uma forma
txt.text = txt.text.replace(key, value)
# Salve o diagrama
diagram.save("D:\\Files\\FindReplaceText_out.vsdx", SaveFileFormat.VSDX)
Obtenha licença API gratuita
Você pode obter uma licença temporária gratuita para usar a API sem limitações de avaliação.
Localizar e substituir no Visio – Recursos de aprendizagem
Além de localizar e substituir texto em diagramas do Visio, você pode aprender mais sobre vários outros recursos da biblioteca usando os recursos abaixo:
Conclusão
Concluindo, aprendemos como localizar e substituir texto em diagramas do Visio programaticamente usando Python. Ao aproveitar o Aspose.Diagram para Python por meio da API .NET, você pode automatizar várias tarefas que envolvem a manipulação de arquivos do Visio. Então vá em frente, experimente e explore vários outros recursos úteis da biblioteca. Em caso de qualquer ambigüidade, entre em contato conosco em nosso fórum de suporte gratuito.