Microsoft® Visio Bestanden splitsen via Java

Splits één Visio document in verschillende bestanden met behulp van Java code binnen op Java gebaseerde applicaties

 

Java Visio Bibliotheek is in staat om Visio documenten op te splitsen in meerdere pagina’s binnen op Java gebaseerde applicaties. Ondersteunde bestandsindelingen zijn onder meer VDW, VDX, VSD, VSDM, VSDX, VSS, VSSM,VSSX,VST,VSTM,VSTX,VSX,VTX.

Visio Document opsplitsen in meerdere bestanden

De eenvoudigste manier om Visio bestanden paginagewijs te splitsen is: Toegang tot alle pagina’s via Pagina’s Elke pagina doorlopen en de . aanroepen Kopiëren methode. Sla het ten slotte op in een opgegeven pad.

  • Laad het Visio-bestand met het volledige pad met diagram klas . Herhaal elke pagina
  • Maak een nieuw Diagram class-object
  • Kopieer de pagina via Kopieer methode
  • Roep de methode save() aan en geef de bestandsnaam (volledig pad) met relevante SaveFormat door.
Java Code om Visio bestanden te splitsen
// 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);