Защитить снятие защиты с фигур Visio

Файлы Visio содержат различные типы фигур и соединителей для создания различных схем. В некоторых случаях может потребоваться защитить определенные фигуры от изменений. После таких сценариев в этой статье объясняется, как программно защитить или снять защиту с фигур на схеме Visio на C#.

Защита или снятие защиты с файлов Visio Shapes — установка .NET API

Aspose.Diagram for .NET API поддерживает создание и редактирование различных типов диаграмм, таких как блок-схемы, организационные диаграммы и т. д. Вы можете работать с различными форматами файлов без необходимости установки приложения Microsoft Visio. . Вы можете легко установить API, загрузив эталонный DLL-файл из раздела Загрузки или выполнив команду установки NuGet ниже:

PM> Install-Package Aspose.Diagram

Защита фигур Visio от изменений в C#

Вы можете установить различные свойства для защиты фигур на схемах Visio от изменений. Например, вы можете заблокировать редактирование текста, поворот, высоту и т. д. Чтобы защитить фигуры в файле схемы VSD или VSDX Visio, выполните следующие действия:

  1. Загрузите исходную диаграмму Visio с помощью класса Diagram.
  2. Получите доступ к странице, а затем к определенной фигуре, используя ее идентификатор.
  3. Защитите различные свойства формы от изменений.
  4. Сохраните выходную диаграмму.

В приведенном ниже фрагменте кода показано, как программно защитить фигуры Visio на C#.

// Диаграмма ввода нагрузки
Aspose.Diagram.Diagram diagram = new Aspose.Diagram.Diagram("ProtectAndUnprotect.vsd");

// Получить страницу по названию
Aspose.Diagram.Page page = diagram.Pages.GetPage("Flow 1");

// Получить форму по ID
Aspose.Diagram.Shape shape = page.Shapes.GetShape(1);

// Установить защиту
shape.Protection.LockAspect.Value = Aspose.Diagram.BOOL.True;
shape.Protection.LockCrop.Value = Aspose.Diagram.BOOL.True;
shape.Protection.LockCustProp.Value = Aspose.Diagram.BOOL.True;
shape.Protection.LockDelete.Value = Aspose.Diagram.BOOL.True;
shape.Protection.LockHeight.Value = Aspose.Diagram.BOOL.True;
shape.Protection.LockMoveX.Value = Aspose.Diagram.BOOL.True;
shape.Protection.LockMoveY.Value = Aspose.Diagram.BOOL.True;
shape.Protection.LockRotate.Value = Aspose.Diagram.BOOL.True;
shape.Protection.LockTextEdit.Value = Aspose.Diagram.BOOL.True;

// Сохранить защищенную выходную визуальную диаграмму
diagram.Save("VisioShapeProtection_Out.vdx", Aspose.Diagram.SaveFileFormat.VDX);

Снятие защиты с фигур Visio в C#

Вы можете снять защиту с фигур на схеме Visio, выполнив следующие действия:

  1. Загрузите входной файл схемы Visio.
  2. Снимите защиту с фигур, открыв определенную страницу и ее фигуры.
  3. Экспортируйте выходной файл Visio.

В следующем примере кода показано, как программно снять защиту с фигур на схеме Visio в C#.

// Диаграмма ввода нагрузки
Aspose.Diagram.Diagram diagram = new Aspose.Diagram.Diagram(dataDir + "ProtectAndUnprotect.vsd");

// Получить страницу по названию
Aspose.Diagram.Page page = diagram.Pages.GetPage("Flow 1");

// Получить форму по ID
Aspose.Diagram.Shape shape = page.Shapes.GetShape(1);

// Снять защиту с фигур Visio
shape.Protection.LockAspect.Value = Aspose.Diagram.BOOL.False;
shape.Protection.LockCrop.Value = Aspose.Diagram.BOOL.False;
shape.Protection.LockCustProp.Value = Aspose.Diagram.BOOL.False;
shape.Protection.LockDelete.Value = Aspose.Diagram.BOOL.False;
shape.Protection.LockHeight.Value = Aspose.Diagram.BOOL.False;
shape.Protection.LockMoveX.Value = Aspose.Diagram.BOOL.False;
shape.Protection.LockMoveY.Value = Aspose.Diagram.BOOL.False;
shape.Protection.LockRotate.Value = Aspose.Diagram.BOOL.False;
shape.Protection.LockTextEdit.Value = Aspose.Diagram.BOOL.False;

// Сохранить незащищенную выходную диаграмму Visio
diagram.Save("VisioShape_unProtect_Out.vdx", Aspose.Diagram.SaveFileFormat.VDX);

Вывод

В этой статье вы узнали, как защитить или снять защиту с фигур в файле схемы Visio в формате VSD или VSDX программными средствами на C#. Кроме того, вы можете заглянуть в раздел документация, чтобы узнать о различных других функциях API. Если у вас есть вопросы, обращайтесь к нам на форум.

Смотрите также