מצא החלף Visio csharp

קבצי Visio משמשים ליצירת דיאגרמות כמו תרשימים ארגוניים, תרשימי זרימה וכו’. דיאגרמות כאלה מכילות צורות שונות שיכולות להכיל גם מידע טקסט. במקרים מסוימים, ייתכן שיהיה עליך לעדכן את הטקסט בכל צורה של דיאגרמת Visio. בהתאם לדרישות כאלה, מאמר זה מכסה כיצד למצוא ולהחליף טקסט בשרטוטי Visio באופן פרוגרמטי ב-C#.

חפש והחלף טקסט בתרשים Visio - התקנת API של C#

Aspose.Diagram for .NET API תומך ביצירה, עריכה וטיפול בקובצי Visio. אתה יכול בקלות להגדיר את ה-API על ידי הורדת קובץ ה-DLL מהקטע מהדורות חדשות. לחלופין, אתה יכול להתקין את ה-API מהגלריה NuGet עם פקודת ההתקנה שלהלן ב-Microsoft Visual Studio:

PM> Install-Package Aspose.Diagram

מצא והחלף טקסט בדיאגרמה של Visio באופן פרוגרמטי ב-C#

קובצי Visio יכולים להכיל צורות מרובות בתרשים. תוכל למצוא ולהחליף טקסט על ידי ביצוע השלבים הבאים:

  1. הכן אוסף של מחרוזות טקסט ישנות וחדשות.
  2. טען את דיאגרמת הקלט וחזור על כל צורה.
  3. שמור את דיאגרמת Visio הפלט.

קטע הקוד הבא מדגים כיצד למצוא ולהחליף טקסט בקובץ Visio בפורמט VSD או VSDX באופן פרוגרמטי באמצעות C#:

// הכן אוסף טקסט ישן וחדש
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"));

// דיאגרמת עומס
Diagram diagram = new Diagram("FindReplaceText.vsdx");

// קבל עמוד לפי שם
Page page = diagram.Pages.GetPage("Page-1");

// חזור על צורות של דף
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))
            {
                // מצא והחלף טקסט של צורה
                tx.Text = tx.Text.Replace(kvp.Key, kvp.Value);
            }
        }
    }
}
// שמור את התרשים
diagram.Save("FindReplaceText_out.vsdx", SaveFileFormat.Vsdx);

סיכום

לסיכום, למדת כיצד למצוא ולהחליף טקסט בדיאגרמות Visio. יתר על כן, אתה יכול לעדכן את הקוד לדוגמה לעומסי יתר האחרים להחלפת הטקסט. לדוגמה, החלפת רק את המופע הראשון או את כל המופעים של טקסט תואם בהתאם לדרישות שלך. תוכל ללמוד עוד כמה תכונות של ממשק ה-API על ידי ביקור בתיעוד. יתר על כן, בכל שאלה, אנא אל תהסס לכתוב לנו בפורום.

ראה גם

הוסף או הסר כותרת עליונה ותחתונה בקבצי VSD VSDX ב-C#