通过使用Aspose.Diagram 17.8新版本连接索引来控制SVG质量以及连接形状

Aspose.Diagram for .NET logo我们很高兴地宣布,Aspose.Diagram API的新版本17.8现在已经存在。 新版本的API在将Visio绘图导出为SVG格式,并使用连接索引将形状与动态连接器连接时,增加了控制图像质量的功能。 我们建议我们的客户端加入Aspose.Diagram API的最新升级,以利于改进的功能和错误修复。 请使用以下链接下载Aspose.Diagram for .NET和Java程序集。

导出Visio绘图到SVG并控制质量

Aspose.Diagram API支持将Visio图形导出为SVG格式,并根据客户要求,我们已经添加Quality成员到SVGSaveOptions类中。我们使用SVGSaveOptions 类来定义SVG导出设置,现在开发人员可以控制SVG图像质量。 开发人员可以使用以下代码示例来控制SVG图像的质量:

C#

string dataDir = @"c:\temp\";
// Load an existing drawing
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx");
// specify SVG export settings
SVGSaveOptions options = new SVGSaveOptions();
// set image quality
options.Quality = 100;
// save drawing in the SVG format
diagram.Save(dataDir + "UseSVGSaveOptions_out.svg", options);

Java

String dataDir = "c:\\temp\\";
// Load an existing drawing
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx");
// specify SVG export settings
SVGSaveOptions options = new SVGSaveOptions();
// set image quality
options.setQuality(100);
// save drawing in the SVG format
diagram.save(dataDir + "UseSVGSaveOptions_out.svg", options);

开发人员可以找到有关将Visio绘图导出到SVG的更多细节。 请参考这个帮助主题: Convert Visio drawing to SVG

在连接索引的帮助下连接Visio形状

以前版本的Aspose.Diagram API可以连接上,下,中,左,右连接点的形状。 开发人员能够为形状添加新的连接点,但连接形状的方式有限。 我们增强了连接形状的方式,开发人员可以通过连接索引来连接Visio形状。 我们已经在Page类中添加了ConnectShapesViaConnectorIndex方法。 开发人员可以使用以下代码从现有的Visio绘图中检索两个形状,并在连接索引的帮助下连接形状:

C#

string dataDir = @"c:\temp\";
// Load an existing drawing
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx");
// get shapes by ID
Aspose.Diagram.Shape shape1 = diagram.Pages[0].Shapes.GetShape(1);
Aspose.Diagram.Shape shape2 = diagram.Pages[0].Shapes.GetShape(2);
// add connector shapes
Aspose.Diagram.Shape connector1 = new Aspose.Diagram.Shape();
long connecter1Id = diagram.AddShape(connector1, "Dynamic connector", 0);
// connect shapes by index of conneecting points
diagram.Pages[0].ConnectShapesViaConnectorIndex(shape1.ID, 6, shape2.ID, 3, connecter1Id);
// save drawing
diagram.Save(dataDir + "UseSVGSaveOptions_out.vsdx", SaveFileFormat.VSDX);

Java

String dataDir = "c:\\temp\\";
// Load an existing drawing
Diagram diagram = new Diagram(dataDir + "Drawing1.vsdx");
// get shapes by ID
Shape shape1 = diagram.getPages().get(0).getShapes().getShape(1);
Shape shape2 = diagram.getPages().get(0).getShapes().getShape(2);
// add connector shapes
Shape connector1 = new Shape();
long connecter1Id = diagram.addShape(connector1, "Dynamic connector", 0);
// connect shapes by index of conneecting points
diagram.getPages().get(0).connectShapesViaConnectorIndex(
                shape1.getID(), 6, shape2.getID(), 3, connecter1Id);
// save drawing
diagram.save(dataDir + "UseSVGSaveOptions_out.vsdx", SaveFileFormat.VSDX);

除此之外,我们还加入了一些常规的错误修复和增强功能。

Public .NET Diagram API 变更

新版本中的以下API更改值得注意:

  • Quality?成员添加到SVGSaveOptions类中。它有助于控制生成的图像的质量。
  • ConnectShapesViaConnectorIndex成员添加到Page类中。它有助于通过连接索引连接形状。

Aspose.Diagram for .NET资源

以下资源将帮助您使用Aspose.Diagram for .NET: