Temukan Ganti Visio Java

File Visio dapat menyertakan bentuk, konektor, gambar, atau teks untuk menggambarkan berbagai diagram yang digunakan untuk membuat diagram seperti bagan organisasi, bagan alur, dll. Dalam skenario tertentu, Anda mungkin ingin mencari dan mengganti beberapa teks dalam format VSD atau VSDX Diagram visio. Oleh karena itu, artikel ini menjelaskan cara menemukan dan mengganti teks dalam gambar Visio secara terprogram di Java.

Cari dan Ganti Teks di Diagram Visio – Instalasi Java API

Aspose.Diagram for Java API mendukung bekerja dengan berbagai format file Visio termasuk VSD, VSDX, VSDM, VSSX, dll. Anda dapat mengunduh file JAR dari bagian Unduhan, atau gunakan yang berikut ini konfigurasi di file pom.xml proyek Anda untuk mengakses API dari Aspose Repository:

Gudang:

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

Ketergantungan:

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

Temukan dan Ganti Teks di Diagram Visio Secara terprogram di Java

Anda dapat menemukan dan mengganti teks dalam file Visio format VSD VSDX dengan langkah-langkah di bawah ini:

  1. Buat kumpulan string untuk mencari dan mengganti teks.
  2. Muat file diagram Visio sumber dan ulangi teks di setiap bentuk.
  3. Tulis file diagram Visio keluaran.

Contoh kode di bawah ini menunjukkan cara menemukan dan mengganti teks dalam file Visio secara terprogram menggunakan Java:

// Muat diagram masukan
Diagram diagram = new Diagram("FindReplaceText.vsdx");

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

// Siapkan koleksi teks lama dan baru
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()));

// Ulangi melalui bentuk halaman
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))
            {
                // Temukan dan ganti teks bentuk
                tx.setText(tx.getText().replace(key, replacements.get(key)));
            }
        }
    }
}

// Simpan diagramnya
diagram.save("FindReplaceText_Out.vsdx", SaveFileFormat.VSDX);

Kesimpulan

Kesimpulannya, Anda telah memahami cara mencari dan mengganti teks dalam diagram Visio. Anda juga dapat mengimprovisasi cuplikan kode untuk bekerja dengan kelebihan lain dari metode penggantian. Misalnya, mengganti semua contoh teks yang cocok atau hanya kemunculan pertama dari istilah pencarian di file Visio. Anda dapat mengunjungi ruang dokumentasi untuk mempelajari beberapa fitur lain untuk memanipulasi atau mengonversi file MS Visio. Jika Anda perlu mendiskusikan masalah atau kebutuhan Anda, harap hubungi kami di forum.

Lihat juga

Konversi File Visio VSD atau VSDX ke XAML di Java