Em certos casos, pode ser necessário ler dados de formas de diagramas do Visio. Isso é geralmente útil quando os diagramas contêm metadados. Você pode extrair essas informações em Java sem o Microsoft Visio ou Office Interop. É ideal para relatórios, verificações de dados ou ferramentas de automação. Neste post, mostraremos como ler dados de formas usando Java de uma maneira clara e simples.

Biblioteca Java Visio para Ler Dados de Forma

Neste artigo, nós usaremos Aspose.Diagram for Java para ler dados de forma dos arquivos Visio. A API oferece acesso total a formas, páginas e propriedades personalizadas. Funciona com VSDX, VSD e outros formatos.

Você pode usar esta biblioteca em qualquer projeto Java. É fácil de configurar e suporta grandes diagramas e processamento em lote. Se o seu aplicativo precisa trabalhar com arquivos do Visio, este SDK é uma ótima ferramenta.

Por favor, baixe a biblioteca da releases e adicione o JAR ao seu projeto ou instale via Maven:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-diagram</artifactId>
    <version>25.7</version>
</dependency>

Como Ler Dados de Forma do Visio em Java

Siga estes passos para ler dados de forma de um arquivo Visio:

  1. Carregue o arquivo usando a classe Diagram.
  2. Obtenha uma página do diagrama.
  3. Percorra as formas na página.
  4. Imprimir ID e nome da forma.

Aqui está um trecho de código Java que demonstra como ler dados de forma Visio em Java:

// Carregar o arquivo do Visio
Diagram diagram = new Diagram("Drawing1.vsdx");

// get pages count
System.out.println("Total Pages:" + diagram.getPages().getCount());

// Acesse a primeira página
Page page = diagram.getPages().get(0);

// Iterar através de formas
for (Shape shape : (Iterable<Shape>) page.getShapes()) {
    System.out.println("Shape ID: " + shape.getID());
    System.out.println("Name: " + shape.getName());
}
Total Pages: 1
Shape ID: 1
Name: Square
Shape ID: 2
Name: Rectangle
Shape ID: 3
Name: Dynamic connector

Leia uma Propriedade de Forma pelo Nome

Você pode ler a propriedade de uma forma pelo seu nome. Basta seguir estas etapas:

  1. Load the diagram file.
  2. Access a page.
  3. Find the shape by name.
  4. Use Props para ler as propriedades.

Aqui está o exemplo de código Java que demonstra como ler uma propriedade de forma usando seu nome:

// Carregue o arquivo do Visio
Diagram diagram = new Diagram("Drawing1.vsdx");

// Acesse a primeira página
Page page = diagram.getPages().get(0);

// Iterar através de formas
for (Shape shape : (Iterable<Shape>) page.getShapes()) {
    // Leia a propriedade da forma pelo nome
    if ("Process".equals(shape.getName())) {
       for (Prop prop : (Iterable<Prop>) shape.getProps()) {
            System.out.println("Property Name: " + prop.getLabel().getValue());
            System.out.println("Value: " + prop.getValue().getVal());
        }
    }
}

Leia InheritProps de Shape em Java

Você também pode obter propriedades de forma herdadas seguindo os passos abaixo:

  1. Abra o arquivo do Visio.
  2. Obtenha uma página e percorra as formas.
  3. Use InheritProps para ler valores herdados.

O seguinte exemplo de código Java mostra como ler InheritProps de formas do Visio em Java:

// Carregue o arquivo Visio
Diagram diagram = new Diagram("Drawing1.vsdx");

// Acesse a primeira página
Page page = diagram.getPages().get(0);

// Iterar através de formas InheritProps
for (Shape shape : (Iterable<Shape>) page.getShapes()) {
   for (Prop prop : (Iterable<Prop>) shape.getInheritProps()) {
        System.out.println("Inherited Name: " + prop.getLabel().getValue());
        System.out.println("Value: " + prop.getValue().getVal());
    }
}

Obtenha uma Licença Gratuita

Você quer experimentar o Aspose.Diagram sem limites? Você pode obter uma licença temporária gratuita e testar todos os recursos da biblioteca.

Abrir e Ler Forma Visio: Recursos Gratuitos

Explore esses recursos gratuitos para aprender mais:

Conclusão

Neste artigo, você aprendeu como ler dados de forma do Visio em Java usando Aspose.Diagram. Você viu como carregar arquivos, extrair propriedades de forma e ler dados herdados. Com esta poderosa API, você pode construir aplicativos Java que processam arquivos do Visio com facilidade.

Se você precisar de ajuda, fique à vontade para entrar em contato através do nosso free support forum.

Veja também