MS Visio adalah aplikasi populer yang memungkinkan Anda membuat berbagai macam diagram seperti diagram alur, diagram aliran data, model proses bisnis, dll. VSDX adalah format file yang digunakan MS Visio untuk menyimpan diagram. Untuk mengotomatiskan manipulasi VSDX, artikel ini memberi Anda tutorial dasar tentang cara membuat diagram Visio dari awal di C#. Selain itu, ini mencakup cara menyisipkan halaman, bentuk, dan teks dalam diagram VSDX dari dalam aplikasi .NET.

C# Visio API - Unduhan Gratis

Aspose.Diagram for .NET adalah API kaya fitur yang memungkinkan Anda membuat, mengedit, mengonversi, dan memproses diagram MS Visio dari dalam aplikasi .NET Anda. API memudahkan Anda untuk memanipulasi diagram VSDX dengan properti dan metode yang mudah digunakan. Anda dapat mengunduh DLL API atau menginstalnya dalam aplikasi .NET Anda menggunakan NuGet.

Install-Package Aspose.Diagram

Buat Diagram Visio VSDX menggunakan C#

Pertama-tama, mari buat diagram VSDX kosong dari awal. Berikut ini adalah langkah-langkah untuk melakukannya:

Contoh kode berikut menunjukkan cara membuat diagram Visio VSDX di C#.

// Untuk contoh lengkap dan file data, silakan buka https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Path ke direktori dokumen.
string dataDir = RunExamples.GetDataDir_Diagrams();

// Buat direktori jika belum ada.
bool IsExists = System.IO.Directory.Exists(dataDir);
if (!IsExists)
    System.IO.Directory.CreateDirectory(dataDir);
// Inisialisasi Visio baru
Diagram diagram = new Diagram();
dataDir = dataDir + "CreateDiagram_out.vsdx";
// Simpan dalam format VSDX
diagram.Save(dataDir, SaveFileFormat.VSDX);

Tambahkan Master ke Visio Diagram di C#

Master digunakan untuk menambahkan stensil yang berisi kumpulan bentuk yang akan digunakan dalam diagram. Jika Anda ingin menambahkan master, Anda memerlukan file stensil VSS dan ID master. Berikut adalah langkah-langkah menambahkan master ke diagram Visio menggunakan Aspose.Diagram.

Contoh kode berikut menunjukkan cara menambahkan master ke diagram Visio menggunakan C#.

// Untuk contoh lengkap dan file data, silakan buka https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Path ke direktori dokumen.
string dataDir = RunExamples.GetDataDir_Master();

// Memuat diagram
Diagram diagram = new Diagram();

// Muat stensil ke aliran
string templateFileName = dataDir + "NetApp-FAS-series.vss";
Stream stream = new FileStream(templateFileName, FileMode.Open);

// Tambahkan master dengan jalur file stensil dan id master
string masterName = "FAS80xx rear empty";
diagram.AddMaster(templateFileName, 2);

// Tambahkan master dengan jalur file stensil dan nama master
diagram.AddMaster(templateFileName, masterName);

// Tambahkan master dengan aliran file stensil dan id master
diagram.AddMaster(stream, 2);

// Menambahkan master ke diagram dari diagram sumber
Diagram src = new Diagram(templateFileName);
diagram.AddMaster(src, masterName);

// Tambahkan master dengan aliran file stensil dan id master
diagram.AddMaster(stream, masterName);

// Menambahkan bentuk dengan PinX dan PinY yang ditentukan.
diagram.AddShape(2.0, 2.0, masterName, 0);
diagram.AddShape(6.0, 6.0, masterName, 0);

// Menambahkan bentuk dengan PinX, PinY, Lebar, dan Tinggi yang ditentukan.
diagram.AddShape(7.0, 3.0, 1.5, 1.5, masterName, 0);

Untuk detail lebih lanjut, silakan kunjungi bekerja dengan master.

Sisipkan Halaman dalam Diagram Visio di C#

Diagram MS Visio terdiri dari satu atau lebih halaman dan setiap halaman berisi diagram. Karena itu, sebelum menambahkan bentuk, Anda perlu menambahkan halaman menggunakan langkah-langkah berikut.

Contoh kode berikut menunjukkan cara menambahkan halaman dalam diagram Visio VSDX menggunakan C#.

// Untuk contoh lengkap dan file data, silakan buka https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Path ke direktori dokumen.
string dataDir = RunExamples.GetDataDir_VisioPages();

// Memuat diagram
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx");

// Ini menghitung id halaman maks
int max = 0;
if (diagram.Pages.Count != 0)
    max = diagram.Pages[0].ID;

for (int i = 1; i < diagram.Pages.Count; i++)
{
    if (max < diagram.Pages[i].ID)
        max = diagram.Pages[i].ID;
}

// Tetapkan ID halaman maks
int MaxPageId = max;

// Inisialisasi objek halaman baru
Page newPage = new Page();
// Tetapkan nama
newPage.Name = "new page";
// Tetapkan ID halaman
newPage.ID = MaxPageId + 1;

// Atau coba konstruktor Halaman
// Halaman halaman baru = Halaman baru (MaxPageId + 1);

// Tambahkan halaman kosong baru
diagram.Pages.Add(newPage);

// Simpan diagram
diagram.Save(dataDir + "InsertBlankPage_out.vsdx", SaveFileFormat.VSDX);

Untuk detail lebih lanjut, silakan kunjungi bekerja dengan halaman.

Buat Bentuk dalam Diagram Visio menggunakan C#

Bentuk adalah blok penyusun diagram Visio. MS Visio mendukung berbagai bentuk untuk membuat diagram di berbagai domain. Langkah-langkah berikut menunjukkan cara menyisipkan bentuk di Diagram Visio.

Contoh kode berikut memperlihatkan cara menambahkan bentuk dalam diagram Visio menggunakan C#.

// Untuk contoh lengkap dan file data, silakan buka https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Path ke direktori dokumen.
string dataDir = RunExamples.GetDataDir_Shapes();

// Muat diagram
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx");
// Dapatkan halaman dengan nama
Page page = diagram.Pages.GetPage("Page-2");

// Tambahkan master dengan jalur file stensil dan nama master
string masterName = "Rectangle";
diagram.AddMaster(dataDir + "Basic Shapes.vss", masterName);
            
// Pengindeksan halaman dimulai dari 0
int PageIndex = 1;
double width = 2, height = 2, pinX = 4.25, pinY = 4.5;
// Tambahkan bentuk persegi panjang baru
long rectangleId = diagram.AddShape(pinX, pinY, width, height, masterName, PageIndex);
            
// Tetapkan properti bentuk 
Shape rectangle = page.Shapes.GetShape(rectangleId);
rectangle.XForm.PinX.Value = 5;
rectangle.XForm.PinY.Value = 5;
rectangle.Type = TypeValue.Shape;
rectangle.Text.Value.Add(new Txt("Aspose Diagram"));
rectangle.TextStyle = diagram.StyleSheets[3];
rectangle.Line.LineColor.Value = "#ff0000";
rectangle.Line.LineWeight.Value = 0.03;
rectangle.Line.Rounding.Value = 0.1;
rectangle.Fill.FillBkgnd.Value = "#ff00ff";
rectangle.Fill.FillForegnd.Value = "#ebf8df";

diagram.Save(dataDir + "AddShape_out.vsdx", SaveFileFormat.VSDX);
Console.WriteLine("Shape has been added.");

Untuk detail lebih lanjut, silakan kunjungi bekerja dengan bentuk.

Tambahkan Bentuk Teks di Halaman Visio di C#

Dalam berbagai kasus, Anda juga perlu menambahkan teks ke diagram Visio. Untuk ini, Anda dapat mengikuti langkah-langkah di bawah ini.

Contoh kode berikut menunjukkan cara menambahkan teks dalam diagram VSDX menggunakan C#.

// Untuk contoh lengkap dan file data, silakan buka https://github.com/aspose-diagram/Aspose.Diagram-for-.NET
// Path ke direktori dokumen.
string dataDir = RunExamples.GetDataDir_ShapeText();

// Buat diagram baru
Diagram diagram = new Diagram();
// Tetapkan parameter dan tambahkan teks ke halaman Visio
double PinX = 1, PinY = 1, Width = 1, Height = 1;                  
diagram.Pages[0].AddText(PinX, PinY, Width, Height, "Test text");
// Simpan diagram 
diagram.Save(dataDir + "InsertTextShape_out.vsdx", SaveFileFormat.VSDX);

Untuk detail selengkapnya, silakan kunjungi bekerja dengan teks.

Kesimpulan

Dalam posting ini, Anda telah mempelajari beberapa fitur dasar Aspose.Diagram for .NET untuk membuat diagram Visio VSDX dari awal. Contoh kode telah menunjukkan cara menambahkan master, halaman, bentuk, dan teks dalam diagram VSDX menggunakan C#. Anda dapat mempelajari lebih lanjut tentang API menggunakan dokumentasi.

Lihat juga