Microsoft® Visio Разделение файлов через Java
Разделить один документ Visio на разные файлы с помощью кода Java в приложениях на основе Java
Java Visio Библиотека может разбить документ Visio на несколько страниц в приложениях на основе Java. Поддерживаемые форматы файлов включают VDW, VDX, VSD, VSDM, VSDX, VSS, VSSM,VSSX,VST,VSTM,VSTX,VSX,VTX.
Разделить документ Visio на несколько файлов
Самый простой способ разбить файлы Visio по страницам — получить доступ ко всем страницам через страницы Перебирая каждую страницу и вызывая Копировать метод. Наконец, сохраните его по указанному пути.
- Загрузите файл Visio с полным путем, используя diagram класс . Перебирать каждую страницу
- Создать новый объект класса Diagram
- Скопируйте страницу через Метод копирования
- Вызовите метод save() и передайте имя файла (полный путь) с соответствующим SaveFormat.
Java Код для разделения Visio файлов
// For complete examples and data files, please go to https://github.com/aspose-diagram/Aspose.Diagram-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(CopyVisioPage.class); | |
// Call the diagram constructor to load diagram from a VSD file | |
Diagram originalDiagram = new Diagram(dataDir + "Drawing1.vsd"); | |
// initialize the new visio diagram | |
Diagram newDiagram = new Diagram(); | |
// add all masters from the source Visio diagram | |
MasterCollection originalMasters = originalDiagram.getMasters(); | |
for (Master master : (Iterable<Master>) originalMasters) { | |
newDiagram.addMaster(originalDiagram, master.getName()); | |
} | |
// get the page object from the original diagram | |
Page SrcPage = originalDiagram.getPages().getPage("Page-1"); | |
// set page name | |
SrcPage.setName("new page"); | |
// it calculates max page id | |
int max = 0; | |
if (newDiagram.getPages().getCount() != 0) | |
max = newDiagram.getPages().get(0).getID(); | |
for (int i = 1; i < newDiagram.getPages().getCount(); i++) | |
{ | |
if (max < newDiagram.getPages().get(i).getID()) | |
max = newDiagram.getPages().get(i).getID(); | |
} | |
int MaxPageId = max; | |
// set page id | |
SrcPage.setID(MaxPageId); | |
// add reference of the original diagram page | |
newDiagram.getPages().add(SrcPage); | |
// remove first empty page | |
newDiagram.getPages().remove(newDiagram.getPages().get(0)); | |
// save diagram in VDX format | |
newDiagram.save(dataDir + "CopyVisioPage_Out.vsdx", SaveFileFormat.VSDX); |