Aspose.Diagram for Javaは、MicrosoftVisioを必要とせずにVisioダイアグラムをプログラムで操作するための機能豊富なJavaAPIです。 APIは、VSD、VSDX、VDX、VSDM、VSSM、VSSXなどの一般的なVisio形式の操作をサポートしています。最近、Aspose.Diagram for Javaの機能を活用して、Node.jsアプリケーションにMSVisio自動化機能を実装できるようにしました。これらの機能を使用すると、Node.jsアプリケーション内でMS Visioダイアグラムを作成、操作、変換、および処理できます。

Java経由のNode.jsのAspose.Diagramは、Visioダイアグラムの作成または操作を自動化するための機能の完全なセットを提供します。数行のコードで、ダイアグラムの作成、読み取り、エクスポート、印刷、および保護を非常に簡単に行うことができます。この記事では、Node.jsアプリケーション内でVisioダイアグラムを最初から作成する方法について説明します。記事の残りの部分は、次のセクションに分かれています。

Node.jsVisioAPI-インストール

次のコマンドを使用して、Node.jsアプリケーションにAspose.Diagramパッケージをインストールします。

npm install aspose.diagram --save

Node.jsでMSVisioダイアグラムを作成する

空のVisioダイアグラム(VSDX)を最初から作成することから始めます。この操作を実行する手順は次のとおりです。

  • Diagramクラスのオブジェクトを作成します。
  • Diagram.save()メソッドを使用して、図をファイルとして保存します。

次のコードサンプルは、Node.jsアプリケーションでVisioダイアグラム(VSDX)を作成する方法を示しています。

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram();
diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

Node.jsのVisioダイアグラムにマスターを追加する

Visioステンシルには、Visioダイアグラムで図形を追加/コピーするために使用されるマスター図形のコレクションが含まれています。 VSSステンシルファイルを使用して、Visioダイアグラムにマスターを追加します。以下は、Aspose.Diagramを使用してマスターを追加する手順です。

  • Diagramクラスを使用して新しいVisio図を作成します。
  • ステンシルファイルのパスとマスターの名前/IDを使用して、図にマスターを追加します。
  • マスターの名前を使用して図に形状を追加します。
  • Diagram.save()メソッドを使用して図を保存します。

次のコードサンプルは、Node.jsのVisioダイアグラムにマスターを追加する方法を示しています。

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram();

// ステンシルをストリームにロードする
templateFileName = "NetApp-FAS-series.vss";

// ステンシルファイルパスとマスターIDを使用してマスターを追加します
masterName = "FAS80xx rear empty";
diagram.addMaster(templateFileName, 2);

// または、ステンシルファイルパスとマスター名を使用してマスターを追加します
diagram.addMaster(templateFileName, masterName);

// または、ソース図から図にマスターを追加します
src = new aspose.diagram.Diagram(templateFileName);
diagram.addMaster(src, masterName);

// 定義されたPinXとPinYで形状を追加します。
diagram.addShape(2.0, 2.0, masterName, 0);
diagram.addShape(6.0, 6.0, masterName, 0);

// 定義されたPinX、PinY、幅、高さで形状を追加します。
diagram.addShape(7.0, 3.0, 1.5, 1.5, masterName, 0);

diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

Node.jsのVisioダイアグラムにページを挿入する

図形を作成する前に、Visio図に少なくとも1つのページが必要です。 Visioダイアグラムの各ページには、そのページを一意に識別するために使用される名前とIDがあります。以下は、Visio図にページを追加する手順です。

  • Diagramクラスのインスタンスを作成します。
  • 最大ページIDを計算します。
  • Pageクラスを使用して新しいページを作成します。
  • Page.setName()メソッドとPage.setID()メソッドをそれぞれ使用して、ページの名前とIDを設定します。
  • Diagram.getPages().add()メソッドを使用して図にページを追加します。
  • Diagram.save()メソッドを使用してVisioダイアグラムを保存します。

次のコードサンプルは、Node.jsのVisioダイアグラムにページを挿入する方法を示しています。

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram();
// 最大ページIDを計算します
 max = 0;
if (diagram.getPages().getCount() != 0)
    max = diagram.getPages().get(0).getID();

for ( i = 1; i < diagram.getPages().getCount(); i++)
{
    if (max < diagram.getPages().get(i).getID())
        max = diagram.getPages().get(i).getID();
}
        
// 新しいページオブジェクトを初期化します
newPage = new aspose.diagram.Page();
// セット名
newPage.setName("new page");
// ページIDを設定する
newPage.setID(max + 1);

// または、Pageコンストラクターを試してください
// ページnewPage=new Page(MaxPageId + 1);

// 新しい空白のページを追加します
diagram.getPages().add(newPage);
diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

Node.jsのVisioダイアグラムで図形を作成する

ダイアグラムでページを作成したら、それに図形を追加できます。図形を作成して図に挿入する手順は次のとおりです。

  • Diagramクラスのオブジェクトを作成します。
  • ステンシルファイルのパスを使用して、図にマスターを追加します。
  • Diagram.addShape()メソッドを使用して長方形を追加します。
  • ID、テキスト、位置、塗りつぶしの色などの図形のプロパティを設定します。
  • Diagram.save()メソッドを使用して図を保存します。

次のコードサンプルは、Node.jsのVisioダイアグラムに図形を追加する方法を示しています。

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram("output.vsdx");

// 名前でページを取得
page = diagram.getPages()[.getPage("Page-2")];

// ステンシルファイルパスとマスターIDを使用してマスターを追加します
masterName = "Rectangle";
// ステンシルファイルパスとマスター名でマスターを追加します
diagram.addMaster("Basic Shapes.vss", masterName);
            
// ページのインデックス作成は0から始まります
PageIndex = 2;
width = 2, height = 2, pinX = 4.25, pinY = 4.5;
// 新しい長方形を追加します
rectangleId = diagram.addShape(pinX, pinY, width, height, masterName, PageIndex);
            
// 形状プロパティを設定する 
rectangle = page.getShapes().getShape(rectangleId);
rectangle.getXForm().getPinX().setValue(5);
rectangle.getXForm().getPinY().setValue(5);
rectangle.setType(TypeValue.SHAPE);
rectangle.getText().getValue().add(new Txt("Aspose Diagram"));
rectangle.setTextStyle(diagram.getStyleSheets().get(3));
rectangle.getLine().getLineColor().setValue("#ff0000");
rectangle.getLine().getLineWeight().setValue(0.03);
rectangle.getLine().getRounding().setValue(0.1);
rectangle.getFill().getFillBkgnd().setValue("#ff00ff");
rectangle.getFill().getFillForegnd().setValue("#ebf8df");

diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

Node.jsのVisioダイアグラムにテキストシェイプを追加する

Aspose.Diagramでは、Visio図にテキストを追加することもできます。この場合、テキストは図形として追加されます。以下は、Visioダイアグラムにテキストを追加する手順です。

  • Diagramクラスを使用して新しいVisio図を作成します。
  • Diagram.getPages().getPage(0).addText()メソッドを使用して、図にテキストの形状を追加します。
  • Diagram.save()メソッドを使用して図を保存します。

次のコードサンプルは、Node.jsのVisioダイアグラムにテキストの形を追加する方法を示しています。

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram();

// パラメータを設定する
PinX = 1, PinY = 1, Width = 1, Height = 1;
text = "Test text";

// Visioページにテキストを追加する
diagram.getPages().getPage(0).addText(PinX, PinY, Width, Height, text);

diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

Visioダイアグラムのハイパーリンクを使用して、あるページから別のページに移動したり、ファイルやWebページを図面にリンクしたりできます。以下は、Visioダイアグラムにハイパーリンクを追加する手順です。

  • 新しいVisioダイアグラムを作成します。
  • 図から目的のページを選択します。
  • 選択したページから目的の形状を選択します。
  • Hyperlinkクラスを使用して新しいハイパーリンクを作成し、そのプロパティを設定します。
  • Shape.getHyperlinks().add()メソッドを使用して、ハイパーリンクを図形に追加します。
  • 図を保存します。

次のコードサンプルは、Node.jsのVisioダイアグラムにハイパーリンクを追加する方法を示しています。

var aspose = aspose || {};
aspose.diagram = require("aspose.diagram");

var diagram = new aspose.diagram.Diagram();

page = diagram.getPages().getPage(0);
// IDで形を整える
shape = page.getShapes().getShape(2);

// ハイパーリンクオブジェクトを初期化します
hyperlink = new aspose.diagram.Hyperlink();
// アドレス値を設定する
hyperlink.getAddress().setValue("http://www.google.com/");
// サブアドレス値を設定する
hyperlink.getSubAddress().setValue("Sub address here");
// 説明値を設定する
hyperlink.getDescription().setValue("Description here");
// セット名
hyperlink.setName("MyHyperLink");

// 図形にハイパーリンクを追加する
shape.getHyperlinks().add(hyperlink); 

diagram.save("output.vsdx", aspose.diagram.SaveFileFormat.VSDX);

結論

この記事では、Node.jsアプリケーションでVisioの図/図面を最初から作成する方法を学びました。ステップバイステップのチュートリアルとコードサンプルは、数行のコードを使用して、Visioダイアグラムにマスター、ページ、図形、テキスト、およびハイパーリンクを追加する方法を示しました。 ドキュメントを使用して、Node.js用のVisioAPIの詳細を調べることができます。

関連記事