Tìm Thay thế Visio csharp

Các tệp Visio được sử dụng để tạo các sơ đồ như sơ đồ tổ chức, sơ đồ luồng, v.v. Các sơ đồ như vậy bao gồm các hình dạng khác nhau cũng có thể chứa thông tin văn bản. Trong một số trường hợp sử dụng, bạn có thể cần cập nhật văn bản ở bất kỳ hình dạng nào của sơ đồ Visio. Phù hợp với các yêu cầu như vậy, bài viết này trình bày cách tìm và thay thế văn bản trong bản vẽ Visio theo chương trình trong C#.

Tìm kiếm và Thay thế Văn bản trong Sơ đồ Visio - Cài đặt API C#

API Aspose.Diagram for .NET hỗ trợ tạo, chỉnh sửa và thao tác với các tệp Visio. Bạn có thể dễ dàng định cấu hình API bằng cách tải xuống tệp DLL từ phần Bản phát hành mới. Ngoài ra, bạn có thể cài đặt API từ thư viện NuGet bằng lệnh cài đặt bên dưới trong Microsoft Visual Studio:

PM> Install-Package Aspose.Diagram

Tìm và Thay thế Văn bản trong Sơ đồ Visio theo chương trình trong C#

Tệp Visio có thể chứa nhiều hình dạng trong một sơ đồ. Bạn có thể tìm và thay thế văn bản bằng cách làm theo các bước bên dưới:

  1. Chuẩn bị một tập hợp các chuỗi văn bản cũ và mới.
  2. Tải sơ đồ đầu vào và lặp lại qua từng hình dạng.
  3. Lưu sơ đồ Visio đầu ra.

Đoạn mã sau minh họa cách tìm và thay thế văn bản ở định dạng VSD hoặc VSDX tệp Visio theo chương trình bằng C#:

// Chuẩn bị một bộ sưu tập văn bản cũ và mới
Dictionary<string, string> replacements = new Dictionary<string, string>();
replacements.Add("[[CompanyName]]", "Research Society of XYZ");
replacements.Add("[[EmployeeName]]", "James Bond");
replacements.Add("[[SubjectTitle]]", "The affect of the internet on social behavior in the industrialize world");
replacements.Add("[[TimePeriod]]", DateTime.Now.AddYears(-1).ToString("dd/MMMM/yyyy") + " -- " + DateTime.Now.ToString("dd/MMMM/yyyy"));
replacements.Add("[[SubmissionDate]]", DateTime.Now.AddDays(-7).ToString("dd/MMMM/yyyy"));
replacements.Add("[[AmountReq]]", "$100,000");
replacements.Add("[[DateApproved]]", DateTime.Now.AddDays(1).ToString("dd/MMMM/yyyy"));

// Sơ đồ tải
Diagram diagram = new Diagram("FindReplaceText.vsdx");

// Lấy trang theo tên
Page page = diagram.Pages.GetPage("Page-1");

// Lặp lại các hình dạng của một trang
foreach (Shape shape in page.Shapes)
{
    foreach (KeyValuePair<string, string> kvp in replacements)
    {
        foreach (FormatTxt txt in shape.Text.Value)
        {
            Txt tx = txt as Txt;
            if (tx != null && tx.Text.Contains(kvp.Key))
            {
                // Tìm và thay thế văn bản của một hình dạng
                tx.Text = tx.Text.Replace(kvp.Key, kvp.Value);
            }
        }
    }
}
// Lưu sơ đồ
diagram.Save("FindReplaceText_out.vsdx", SaveFileFormat.Vsdx);

Sự kết luận

Tóm lại, bạn đã học cách tìm và thay thế văn bản trong sơ đồ Visio. Hơn nữa, bạn có thể cập nhật mã mẫu thành các mã quá tải khác để thay thế văn bản. Ví dụ: chỉ thay thế lần xuất hiện đầu tiên hoặc tất cả các lần xuất hiện của văn bản phù hợp dựa trên yêu cầu của bạn. Bạn có thể tìm hiểu một số tính năng khác của API bằng cách truy cập tài liệu. Hơn nữa, trong trường hợp có bất kỳ thắc mắc nào, vui lòng viết thư cho chúng tôi tại diễn đàn.

Xem thêm

Chèn hoặc xóa Đầu trang và Chân trang trong VSD Tệp VSDX trong C#