public static void Run() { // ExStart:GroupShapes // The path to the documents directory. string dataDir = RunExamples.GetDataDir_Shapes(); // Load a Visio diagram Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx"); // Get page by name Page page = diagram.Pages.GetPage("Page-3"); // Initialize an array of shapes Aspose.Diagram.Shape[] ss = new Aspose.Diagram.Shape[3]; // Extract and assign shapes to the array ss[0] = page.Shapes.GetShape(15); ss[1] = page.Shapes.GetShape(16); ss[2] = page.Shapes.GetShape(17); // Mark array shapes as group page.Shapes.Group(ss); // Save visio diagram diagram.Save(dataDir + "GroupShapes_out.vsdx", SaveFileFormat.VSDX); // ExEnd:GroupShapes }
public static void Run() { // ExStart:GroupShapes // The path to the documents directory. string dataDir = RunExamples.GetDataDir_Shapes(); // Load a Visio diagram Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx"); // Get page by name Page page = diagram.Pages.GetPage("Page-3"); // Initialize an array of shapes Aspose.Diagram.Shape[] ss = new Aspose.Diagram.Shape[3]; // Extract and assign shapes to the array ss[0] = page.Shapes.GetShape(15); ss[1] = page.Shapes.GetShape(16); ss[2] = page.Shapes.GetShape(17); // Mark array shapes as group page.Shapes.Group(ss); // Save visio diagram diagram.Save(dataDir + "GroupShapes_Out.vsdx", SaveFileFormat.VSDX); // ExEnd:GroupShapes }
public static void Run() { // ExStart:SettingCellsInEventSection // The path to the documents directory. string dataDir = RunExamples.GetDataDir_EventSection(); // Load diagram Diagram diagram = new Diagram(dataDir + "TestTemplate.vsdm"); // Get page Aspose.Diagram.Page page = diagram.Pages.GetPage(0); // Get shape id long shapeId = page.AddShape(3.0, 3.0, 0.36, 0.36, "Square"); // Get shape Aspose.Diagram.Shape shape = page.Shapes.GetShape(shapeId); // Set event cells in the ShapeSheet shape.Event.EventXFMod.Ufe.F = "CALLTHIS(\"ThisDocument.ShowAlert\")"; shape.Event.EventDblClick.Ufe.F = "CALLTHIS(\"ThisDocument.ShowAlert\")"; shape.Event.EventDrop.Ufe.F = "CALLTHIS(\"ThisDocument.ShowAlert\")"; shape.Event.EventMultiDrop.Ufe.F = "CALLTHIS(\"ThisDocument.ShowAlert\")"; shape.Event.TheText.Ufe.F = "CALLTHIS(\"ThisDocument.ShowAlert\")"; shape.Event.TheData.Ufe.F = "CALLTHIS(\"ThisDocument.ShowAlert\")"; // Save diagram diagram.Save(dataDir + "SettingCellsInEventSection_out_.vsdm", SaveFileFormat.VSDM); // ExEnd:SettingCellsInEventSection }
public static void Run() { // ExStart:ManipulateObjects // The path to the documents directory. string dataDir = RunExamples.GetDataDir_OLEObjects(); // Load a Visio diagram Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx"); // Get page of the Visio diagram by name Aspose.Diagram.Page page = diagram.Pages.GetPage("Page-1"); // Get shape of the Visio diagram by ID Aspose.Diagram.Shape OLE_Shape = page.Shapes.GetShape(1); // Filter shapes by type Foreign if (OLE_Shape.Type == Aspose.Diagram.TypeValue.Foreign) { if (OLE_Shape.ForeignData.ForeignType == ForeignType.Object) { Stream Ole_stream = new MemoryStream(OLE_Shape.ForeignData.ObjectData); // Get format of the OLE file object Aspose.Words.FileFormatInfo info = Aspose.Words.FileFormatUtil.DetectFileFormat(Ole_stream); if (info.LoadFormat == Aspose.Words.LoadFormat.Doc || info.LoadFormat == Aspose.Words.LoadFormat.Docx) { // Modify an OLE object var doc = new Aspose.Words.Document(new MemoryStream(OLE_Shape.ForeignData.ObjectData)); doc.Range.Replace("testing", "Aspose", new Words.Replacing.FindReplaceOptions() { FindWholeWordsOnly = false, MatchCase = true }); MemoryStream outStream = new MemoryStream(); doc.Save(outStream, Aspose.Words.SaveFormat.Docx); // Save back an OLE object OLE_Shape.ForeignData.ObjectData = outStream.ToArray(); } } } // Save Visio diagram diagram.Save(dataDir + "ManipulateObjects_out.vsdx", SaveFileFormat.VSDX); // ExEnd:ManipulateObjects }
public static void Run() { // ExStart:SetLineData // The path to the documents directory. string dataDir = RunExamples.GetDataDir_Shapes(); // Load a Visio diagram Diagram diagram = new Diagram(dataDir + "SetLineData.vsd"); // Get the page by its name Aspose.Diagram.Page page1 = diagram.Pages.GetPage("Page-1"); // Get shape by its ID Aspose.Diagram.Shape shape = page1.Shapes.GetShape(1); // Set line dash type by index shape.Line.LinePattern.Value = 4; // Set line weight, defualt in PT shape.Line.LineWeight.Value = 2; // Set color of the shape's line shape.Line.LineColor.Ufe.F = "RGB(95,108,53)"; // Set line rounding, default in inch shape.Line.Rounding.Value = 0.3125; // Set line caps shape.Line.LineCap.Value = BOOL.True; // Set line color transparency in percent shape.Line.LineColorTrans.Value = 50; /* add arrows to the connector or curve shapes */ // Select arrow type by index shape.Line.BeginArrow.Value = 4; shape.Line.EndArrow.Value = 4; // Set arrow size shape.Line.BeginArrowSize.Value = ArrowSizeValue.Large; shape.Line.BeginArrowSize.Value = ArrowSizeValue.Large; // Save the Visio diagram.Save(dataDir + "SetLineData_out.vsdx", SaveFileFormat.VSDX); // ExEnd:SetLineData }
private static void GetShapeText(Aspose.Diagram.Shape shape) { // Filter shape text if (shape.Text.Value.Text != "") { text += Regex.Replace(shape.Text.Value.Text, "\\<.*?>", ""); } // For image shapes if (shape.Type == TypeValue.Foreign) { text += (shape.Name); } // For group shapes if (shape.Type == TypeValue.Group) { foreach (Aspose.Diagram.Shape subshape in shape.Shapes) { GetShapeText(subshape); } } }
public static void Run() { // ExStart:FormatShapeTextBlockSection // The path to the documents directory. string dataDir = RunExamples.GetDataDir_ShapeTextBoxData(); // Load source Visio diagram Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx"); // Get the page by its name Aspose.Diagram.Page page1 = diagram.Pages.GetPage("Page-1"); // Get shape by its ID Aspose.Diagram.Shape shape = page1.Shapes.GetShape(1); // Set orientation angle DoubleValue margin = new DoubleValue(4, MeasureConst.PT); // Set left, right, top and bottom margins of the shape's text block shape.TextBlock.LeftMargin = margin; shape.TextBlock.RightMargin = margin; shape.TextBlock.TopMargin = margin; shape.TextBlock.BottomMargin = margin; // Set the text direction shape.TextBlock.TextDirection.Value = TextDirectionValue.Vertical; // Set the text alignment shape.TextBlock.VerticalAlign.Value = VerticalAlignValue.Middle; // Set the text block background color shape.TextBlock.TextBkgnd.Ufe.F = "RGB(95,108,53)"; // Set the background color transparency in percent shape.TextBlock.TextBkgndTrans.Value = 50; // Set the distance between default tab stops for the selected shape. shape.TextBlock.DefaultTabStop.Value = 2; // Save Visio diagram.Save(dataDir + "FormatShapeTextBlockSection_Out.vsdx", SaveFileFormat.VSDX); // ExEnd:FormatShapeTextBlockSection }
public static void Run() { //ExStart:SaveVisioShapeInOtherFormats // The path to the documents directory. string dataDir = RunExamples.GetDataDir_Shapes(); // call a Diagram class constructor to load the VSDX diagram Diagram srcVisio = new Diagram(dataDir + "Drawing1.vsdx"); double shapeWidth = 0; double shapeHeight = 0; // get Visio page Aspose.Diagram.Page srcPage = srcVisio.Pages.GetPage("Page-3"); // remove background page srcPage.BackPage = null; // get hash table of shapes, it holds id and name Hashtable remShapes = new Hashtable(); //Hashtable<Long, String> remShapes = new Hashtable<Long, String>(); foreach (Aspose.Diagram.Shape shape in srcPage.Shapes) { // for the normal shape remShapes.Add(shape.ID, shape.Name); } // iterate through the hash table foreach (DictionaryEntry shapeEntry in remShapes) { long key = (long)shapeEntry.Key; string val = (string)shapeEntry.Value; Aspose.Diagram.Shape shape = srcPage.Shapes.GetShape(key); // check of the shape name if (val.Equals("GroupShape1")) { // move shape to the origin corner shapeWidth = shape.XForm.Width.Value; shapeHeight = shape.XForm.Height.Value; shape.MoveTo(shapeWidth * 0.5, shapeHeight * 0.5); // trim page size srcPage.PageSheet.PageProps.PageWidth.Value = shapeWidth; srcPage.PageSheet.PageProps.PageHeight.Value = shapeHeight; } else { // remove shape from the Visio page and hash table srcPage.Shapes.Remove(shape); } } remShapes.Clear(); // specify saving options Aspose.Diagram.Saving.PdfSaveOptions opts = new Aspose.Diagram.Saving.PdfSaveOptions(); // set page count to save opts.PageCount = 1; // set starting index of the page opts.PageIndex = 1; // save it srcVisio.Save(dataDir + "SaveVisioShapeInOtherFormats_Out.pdf", opts); //ExEnd:SaveVisioShapeInOtherFormats }