Microsoft® Visio Fractionnement de fichiers via Java

Diviser un seul document Visio en différents fichiers à l'aide de code Java dans des applications basées sur Java

 

Java Visio Bibliothèque est capable de diviser le document Visio en plusieurs pages dans les applications basées sur Java. Les formats de fichiers pris en charge incluent VDW, VDX, VSD, VSDM, VSDX, VSS, VSSM,VSSX,VST,VSTM,VSTX,VSX,VTX.

Diviser Visio document en plusieurs fichiers

Le moyen le plus simple de diviser Visio fichiers par page est d’accéder à toutes les pages via pages Parcourant chaque page et en appelant le Copie méthode. Enfin, enregistrez-le dans un chemin spécifié.

  • Chargez le fichier Visio avec le chemin complet en utilisant diagram classe . Parcourez chaque page
  • Créer un nouvel objet de classe Diagram
  • Copiez la page via Méthode de copie
  • Appelez la méthode save() et transmettez le nom du fichier (chemin complet) ayant le SaveFormat pertinent.
Java code pour fractionner Visio fichiers
// 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);