Mettre à jour les propriétés de forme dans VSTO et Aspose.Diagram

VSTO

VSTO vous permet de programmer avec les fichiers Microsoft Visio. Pour mettre à jour les propriétés de la forme :

  1. Créez un objet d’application Visio.
  2. Rendre l’objet d’application invisible.
  3. Ouvrez un fichier Visio VSD existant.
  4. Trouvez la forme requise.
  5. Mettez à jour les propriétés de la forme (texte, style de texte, position et taille).
  6. Enregistrez le fichier sous VDX.
 Visio.Application vsdApp = null;

Visio.Document vsdDoc = null;

try

{

	//Create Visio Application Object

	vsdApp = Application;

	//Make Visio Application Invisible

	vsdApp.Visible = false;

	//Create a document object and load a diagram

	vsdDoc = vsdApp.Documents.Open( "Drawing.vsd");

	//Create page object to get required page

	Visio.Page page = vsdApp.ActivePage;

	//Create shape object to get required shape

	Visio.Shape shape = page.Shapes["Process1"];

	//Set shape text and text style

	shape.Text = "Hello World";

	shape.TextStyle = "CustomStyle1";

	//Set shape's position

	shape.get_Cells("PinX").ResultIU = 5;

	shape.get_Cells("PinY").ResultIU = 5;

	//Set shape's height and width

	shape.get_Cells("Height").ResultIU = 2;

	shape.get_Cells("Width").ResultIU = 3;

	//Save file as VDX

	vsdDoc.SaveAs("Drawing1.vdx");

}

catch (Exception ex)

{

	Console.WriteLine(ex.Message);

}

finally

{

	//Close active document and quit

	vsdDoc.Close();

	vsdApp.Quit();

}

Aspose.Diagram

Lors de la programmation avec Aspose.Diagram, vous n’avez pas besoin de Microsoft Visio sur la machine et vous pouvez travailler indépendamment de Microsoft Office Automation. Pour mettre à jour les propriétés de la forme avec Aspose.Diagram for .NET :

  1. Ouvrez un fichier Visio VSD existant.
  2. Trouvez la forme requise.
  3. Mettez à jour les propriétés de la forme (texte, style de texte, position et taille).
  4. Enregistrez le fichier sous VDX.
 	//Save the uploaded file as PDF

	Diagram diagram = new Diagram("Drawing1.vsd");

	//Find a particular shape and update its properties

	foreach (Aspose.Diagram.Shape shape in diagram.Pages[0].Shapes)

	{

		if (shape.Name.ToLower() == "process1")

		{

			shape.Text.Value.Clear();

			shape.Text.Value.Add(new Txt("Hello World"));

			//Find custom style sheet and set as shape's text style

			foreach (StyleSheet styleSheet in diagram.StyleSheets)

			{

				if (styleSheet.Name == "CustomStyle1")

				{

					shape.TextStyle = styleSheet;

				}

			}

			//Set horizontal and vertical position of the shape

			shape.XForm.PinX.Value = 5;

			shape.XForm.PinY.Value = 5;

			//Set height and width of the shape

			shape.XForm.Height.Value = 2;

			shape.XForm.Width.Value = 3;

		}

	}

	//Save shape as VDX

	diagram.Save("Drawing1.vdx", SaveFileFormat.VDX);

}

catch (Exception ex)

{

	Console.WriteLine(ex.Message);

}

Télécharger l’exemple de code