W niektórych przypadkach może być konieczne odczytanie danych kształtów z diagramów Visio. Zwykle jest to przydatne, gdy diagramy zawierają metadane. Można wyodrębnić te informacje w Javie bez użycia Microsoft Visio lub Office Interop. Jest to idealne do raportowania, kontroli danych lub narzędzi automatyzacyjnych. W tym poście pokażemy, jak odczytać dane kształtów za pomocą Java w jasny i prosty sposób.
Java Visio Library do odczytu danych kształtów
W tym artykule użyjemy Aspose.Diagram for Java do odczytu danych kształtów z plików Visio. API zapewnia pełny dostęp do kształtów, stron i właściwości niestandardowych. Działa z formatami VSDX, VSD i innymi.
Możesz użyć tej biblioteki w dowolnym projekcie Java. Jest łatwa do skonfigurowania i obsługuje duże diagramy oraz przetwarzanie wsadowe. Jeśli Twoja aplikacja musi działać z plikami Visio, to SDK jest świetnym narzędziem.
Proszę pobrać bibliotekę z releases i dodać JAR do swojego projektu lub zainstalować za pomocą Maven:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-diagram</artifactId>
<version>25.7</version>
</dependency>
Jak odczytać dane kształtów Visio w Javie
Postępuj według tych kroków, aby odczytać dane kształtu z pliku Visio:
- Załaduj plik, używając klasy
Diagram
. - Get a page from the diagram.
- Przejdź przez kształty na stronie.
- Drukuj identyfikator kształtu i nazwę.
Oto fragment kodu Java, który pokazuje, jak odczytać dane kształtu Visio w Javie:
// Załaduj plik Visio
Diagram diagram = new Diagram("Drawing1.vsdx");
// get pages count
System.out.println("Total Pages:" + diagram.getPages().getCount());
// Uzyskaj dostęp do pierwszej strony
Page page = diagram.getPages().get(0);
// Iteruj przez kształty
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
Odczytaj właściwość kształtu według nazwy
Możesz odczytać właściwości kształtu po jego nazwie. Wystarczy wykonać te kroki:
- Załaduj plik diagramu.
- Access a page.
- Znajdź kształt po nazwie.
- Użyj
Props
, aby odczytać właściwości.
Oto przykład kodu Java, który pokazuje, jak odczytać właściwość kształtu, używając jego nazwy:
// Wczytaj plik Visio
Diagram diagram = new Diagram("Drawing1.vsdx");
// Uzyskaj dostęp do pierwszej strony
Page page = diagram.getPages().get(0);
// Iterate through shapes
for (Shape shape : (Iterable<Shape>) page.getShapes()) {
// Przeczytaj właściwości kształtu według nazwy
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());
}
}
}
Przeczytaj InheritProps klasy Shape w Javie
Możesz również uzyskać odziedziczone właściwości kształtu, wykonując poniższe kroki:
- Otwórz plik Visio.
- Pobierz stronę i przejdź przez kształty.
- Użyj
InheritProps
, aby odczytać odziedziczone wartości.
Następujący przykładowy kod Java pokazuje, jak odczytać InheritProps kształtów Visio w Javie:
// Załaduj plik Visio
Diagram diagram = new Diagram("Drawing1.vsdx");
// Uzyskaj dostęp do pierwszej strony
Page page = diagram.getPages().get(0);
// Iterate through shapes 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());
}
}
Zdobądź bezpłatną licencję
Czy chcesz spróbować Aspose.Diagram bez ograniczeń? Możesz uzyskać darmową tymczasową licencję i przetestować pełne funkcje biblioteki.
Otwórz i przeczytaj kształt Visio: Bezpłatne zasoby
Odkryj te darmowe zasoby, aby dowiedzieć się więcej:
Wnioski
W tym artykule nauczyłeś się, jak odczytywać dane kształtów Visio w Javie za pomocą Aspose.Diagram. Zobaczyłeś, jak ładować pliki, wyodrębniać właściwości kształtów i odczytywać dane dziedziczone. Dzięki temu potężnemu API możesz budować aplikacje Java, które łatwo przetwarzają pliki Visio.
Jeśli potrzebujesz pomocy, śmiało skontaktuj się z nami za pośrednictwem naszego free support forum.