Aspose.Diagram for Java는 Microsoft Visio 없이 프로그래밍 방식으로 Visio 다이어그램을 조작하기 위한 기능이 풍부한 Java API입니다. API는 VSD, VSDX, VDX, VSDM, VSSM 및 VSSX를 비롯한 널리 사용되는 Visio 형식 작업을 지원합니다. 최근에 Java용 Aspose.Diagram의 기능을 활용하여 Node.js 애플리케이션에서 MS Visio 자동화 기능을 구현할 수 있게 되었습니다. 이러한 기능을 사용하면 Node.js 애플리케이션 내에서 MS Visio 다이어그램을 생성, 조작, 변환 및 처리할 수 있습니다.

Java를 통한 Node.js용 Aspose.Diagram은 Visio 다이어그램의 생성 또는 조작을 자동화하는 완전한 기능 세트를 제공합니다. 몇 줄의 코드로 다이어그램을 아주 쉽게 생성, 읽기, 내보내기, 인쇄 및 보호할 수 있습니다. 이 기사에서는 Node.js 애플리케이션 내에서 처음부터 Visio 다이어그램을 만드는 방법을 다룰 것입니다. 기사의 나머지 부분은 다음 섹션으로 나뉩니다.

Node.js Visio API - 설치

다음 명령을 사용하여 Node.js 애플리케이션에 Aspose.Diagram 패키지를 설치합니다.

npm install aspose.diagram --save

Node.js에서 MS Visio 다이어그램 만들기

처음부터 빈 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,Width 및 Height로 모양을 추가합니다.
diagram.addShape(7.0, 3.0, 1.5, 1.5, masterName, 0);

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

Node.js의 Visio 다이어그램에 페이지 삽입

셰이프를 만들기 전에 Visio 다이어그램에 하나 이상의 페이지가 있어야 합니다. 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);

// 또는 페이지 생성자를 사용해보십시오.
// 페이지 newPage = 새 페이지(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 다이어그램의 하이퍼링크를 사용하여 한 페이지에서 다른 페이지로 이동하거나 파일 또는 웹 페이지를 드로잉에 연결할 수 있습니다. 다음은 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/");
// F-코드 값 설정
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용 Visio API에 대해 자세히 알아볼 수 있습니다.

관련 기사