Najít Nahradit Visio csharp

Soubory Visio se používají k vytváření diagramů, jako jsou organizační diagramy, vývojové diagramy atd. Takové diagramy obsahují různé tvary, které mohou obsahovat také textové informace. V některých případech použití může být nutné aktualizovat text v libovolném tvaru diagramu aplikace Visio. V souladu s takovými požadavky tento článek popisuje, jak najít a nahradit text ve výkresech Visia programově v C#.

Hledání a nahrazování textu v diagramu Visio – Instalace C# API

Aspose.Diagram for .NET API podporuje vytváření, úpravy a manipulaci se soubory Visio. Rozhraní API můžete snadno nakonfigurovat stažením souboru DLL ze sekce Nové zprávy. Alternativně můžete API nainstalovat z galerie NuGet pomocí níže uvedeného instalačního příkazu v Microsoft Visual Studio:

PM> Install-Package Aspose.Diagram

Najít a nahradit text v diagramu Visio programově v C#

Soubory aplikace Visio mohou obsahovat více obrazců v diagramu. Text můžete najít a nahradit podle následujících kroků:

  1. Připravte sbírku starých a nových textových řetězců.
  2. Načtěte vstupní diagram a procházejte každý tvar.
  3. Uložte výstupní diagram aplikace Visio.

Následující fragment kódu ukazuje, jak najít a nahradit text v souboru Visio ve formátu VSD nebo VSDX programově pomocí C#:

// Připravte sbírku starého a nového textu
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"));

// Zátěžový diagram
Diagram diagram = new Diagram("FindReplaceText.vsdx");

// Získejte stránku podle jména
Page page = diagram.Pages.GetPage("Page-1");

// Procházejte tvary stránky
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))
            {
                // Najít a nahradit text tvaru
                tx.Text = tx.Text.Replace(kvp.Key, kvp.Value);
            }
        }
    }
}
// Uložte diagram
diagram.Save("FindReplaceText_out.vsdx", SaveFileFormat.Vsdx);

Závěr

Na závěr jste se naučili, jak najít a nahradit text v diagramech aplikace Visio. Kromě toho můžete aktualizovat ukázkový kód na jiná přetížení pro nahrazení textu. Například nahrazení pouze prvního výskytu nebo všech výskytů shodného textu na základě vašich požadavků. Můžete se dozvědět několik dalších funkcí API návštěvou dokumentace. Navíc v případě jakýchkoliv dotazů nám neváhejte napsat na fórum.

Viz také

Vložit nebo odebrat záhlaví a zápatí v souborech VSD VSDX v jazyce C#