Trova Sostituisci Visio Java

I file di Visio possono includere forme, connettori, immagini o testo per rappresentare diversi diagrammi utilizzati per creare diagrammi come organigrammi, diagrammi di flusso e così via. In alcuni scenari, potresti voler trovare e sostituire del testo in un formato VSD o VSDX Diagramma di Visio. Di conseguenza, questo articolo spiega come trovare e sostituire il testo nei disegni di Visio a livello di codice in Java.

Cerca e sostituisci testo nel diagramma di Visio – Installazione dell’API Java

L’API Aspose.Diagram for Java supporta l’utilizzo di diversi formati di file Visio, inclusi VSD, VSDX, VSDM, VSSX, ecc. È possibile scaricare i file JAR dalla sezione Download oppure utilizzare quanto segue configurazioni nel file pom.xml del tuo progetto per accedere all’API da Aspose Repository:

Archivio:

 <repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>http://repository.aspose.com/repo/</url>
    </repository>
</repositories>

Dipendenza:

 <dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-diagram</artifactId>
        <version>22.4</version>
        <classifier>jdk16</classifier>
    </dependency>
</dependencies>

Trova e sostituisci testo nel diagramma di Visio a livello di codice in Java

È possibile trovare e sostituire il testo in un file Visio in formato VSD VSDX con i passaggi seguenti:

  1. Crea una raccolta di stringhe per cercare e sostituire il testo.
  2. Carica il file del diagramma di Visio di origine e scorre il testo in ciascuna forma.
  3. Scrivere il file del diagramma di Visio di output.

L’esempio di codice seguente mostra come trovare e sostituire il testo in un file Visio a livello di codice utilizzando Java:

// Carica il diagramma di input
Diagram diagram = new Diagram("FindReplaceText.vsdx");

DateFormat dateFormat = new SimpleDateFormat("dd/MMMM/yyyy");
Date myDate = new Date(System.currentTimeMillis());
Calendar cal = Calendar.getInstance();

// Prepara una raccolta di testo vecchio e nuovo
Hashtable<String, String> replacements = new Hashtable<String, String>();
replacements.put("[[CompanyName]]", "Research Society of XYZ");
replacements.put("[[CompanyName]]", "Research Society of XYZ");
replacements.put("[[EmplyeeName]]", "James Bond");
replacements.put("[[SubjectTitle]]", "The affect of the internet on social behavior in the industrialize world");

cal.setTime(myDate);
cal.add(Calendar.YEAR, -1);
System.out.println(dateFormat.format(cal.getTime()));
replacements.put("[[TimePeriod]]", dateFormat.format(cal.getTime()) + " -- " + dateFormat.format(myDate));

cal.setTime(myDate);
cal.add(Calendar.DAY_OF_MONTH, -7);
System.out.println(dateFormat.format(cal.getTime()));
replacements.put("[[SubmissionDate]]", dateFormat.format(cal.getTime()));
replacements.put("[[AmountReq]]", "$100,000");

cal.setTime(myDate);
cal.add(Calendar.DAY_OF_MONTH, 1);
System.out.println(dateFormat.format(cal.getTime()));
replacements.put("[[DateApproved]]", dateFormat.format(cal.getTime()));

// Scorri le forme di una pagina
for (Shape shape : (Iterable<Shape>) diagram.getPages().getPage("Page-1").getShapes())
{
    Set<String> keys = replacements.keySet();
    for(String key: keys)
    {
        for (FormatTxt txt : (Iterable<FormatTxt>) shape.getText().getValue())
        {
       	    Txt tx = (Txt)((txt instanceof Txt) ? txt : null);
            if (tx != null && tx.getText().contains(key))
            {
                // Trova e sostituisci il testo di una forma
                tx.setText(tx.getText().replace(key, replacements.get(key)));
            }
        }
    }
}

// Salva il diagramma
diagram.save("FindReplaceText_Out.vsdx", SaveFileFormat.VSDX);

Conclusione

In conclusione, hai capito come trovare e sostituire il testo nei diagrammi di Visio. Puoi anche improvvisare il frammento di codice in modo che funzioni con altri overload del metodo di sostituzione. Ad esempio, sostituendo tutte le istanze di testo corrispondente o solo la prima occorrenza del termine di ricerca nel file di Visio. Puoi visitare lo spazio documentazione per apprendere diverse altre funzionalità per manipolare o convertire file MS Visio. Nel caso abbiate bisogno di discutere qualsiasi vostra preoccupazione o esigenza, contattateci al forum.

Guarda anche

Convertire il file Visio VSD o VSDX in XAML in Java