점 편집을 통해 향상된 사용자 정의 도형(Shape) 지원 도입 > 블로그 & Tips

본문 바로가기

Spread.NET

블로그 & Tips

점 편집을 통해 향상된 사용자 정의 도형(Shape) 지원 도입

페이지 정보

작성자 GrapeCity 작성일 21-04-09 16:21 조회 245회 댓글 0건

본문

Spread. NET v14는 점 편집으로 향상된 사용자 정의 셰이프 지원을 도입하였습니다. 이 새로운 기능을 통해 셰이프용 점을 편집할 수 있습니다. 또한 점을 추가 및 제거할 수 있고, 선을 편집하여 곡선 또는 직선으로 만들 수 있습니다. 아래 그림은 제가 점 편집 기능을 사용해 만든 간단한 흐름도입니다.


점 편집을 통해 향상된 사용자 정의 셰이프 지원 도입


점 편집 시작하기

점 편집을 위한 옵션을 활성화하려면 먼저 "EnhancedShapeEngine"을 "True"로 설정해야 합니다. “기능”에서 이 속성을 찾을 수 있습니다.

점 편집을 통해 향상된 사용자 정의 셰이프 지원 도입


향상된 셰이프 엔진을 활성화한 후에는 점을 편집할 수 있습니다. "삽입"으로 이동하여 셰이프를 선택합니다. 이 예시를 위해 정사각형을 선택하겠습니다.


디자이너에서 셰이프를 선택해 배치한 후에 셰이프 형식으로 이동해 셰이프가 선택되는 동안 점 편집을 선택합니다.

점 편집을 통해 향상된 사용자 정의 셰이프 지원 도입


셰이프를 배치하고 나서 모서리 점을 마우스 오른쪽 버튼으로 클릭하면 옵션이 표시됩니다.

점 편집을 통해 향상된 사용자 정의 셰이프 지원 도입


매끄러운 점을 클릭하면 다음과 같은 셰이프 조작이 표시됩니다.

점 편집을 통해 향상된 사용자 정의 셰이프 지원 도입


점과 점 사이를 마우스 오른쪽 버튼으로 클릭하여 선을 편집할 수도 있습니다.

다음 그림에서 보시는 것과 같이 각 선은 굽은 모양입니다.

점 편집을 통해 향상된 사용자 정의 셰이프 지원 도입


점을 추가할 수도 있습니다.

이 그림에서는 정사각형을 선택하고 상단 왼쪽 점 편집과 오른쪽 점 편집 사이에 점을 추가하였습니다.

점 편집을 통해 향상된 사용자 정의 셰이프 지원 도입


점을 제거하려면 Ctrl 키와 마우스 오른쪽 버튼을 함께 누르거나 점을 마우스 오른쪽 버튼으로 클릭하고 “제거”를 선택하여 점을 삭제할 수 있습니다.


C# 및 VB에서 점 편집을 사용하는 방법


이제 C# 및 VB를 사용해 API를 통해 셰이프를 추가하고 점을 지정하는 작업을 간단히 살펴보겠습니다.


먼저 향상된 셰이프 엔진을 활성화한 후 별을 추가하겠습니다.


C#

// Enable EnhancedShapeEngine  
fpSpread1.Features.EnhancedShapeEngine = true;  
// Add FivePointedStar Shape    
fpSpread1.AsWorkbook().ActiveSheet.Shapes.AddShape(GrapeCity.Spreadsheet.Drawing.AutoShapeType.FivePointedStar, 100, 100, 100, 100);


VB

' Enable EnhancedShapeEngine  
FpSpread1.Features.EnhancedShapeEngine = True  
' Add FivePointedStar Shape  
FpSpread1.AsWorkbook().ActiveSheet.Shapes.AddShape(GrapeCity.Spreadsheet.Drawing.AutoShapeType.FivePointedStar, 100, 100, 100, 100)


점 편집을 통해 향상된 사용자 정의 셰이프 지원 도입

이어서 별의 하단 오른쪽 끝점에 노드를 삽입해 보겠습니다.


C#

fpSpread1.AsWorkbook().ActiveSheet.Shapes[0].Nodes.Insert(6, GrapeCity.Spreadsheet.Drawing.SegmentType.Curve, GrapeCity.Spreadsheet.Drawing.EditingType.Corner, 50, 100, 50, 130, 100, 100);


VB

fpSpread1.AsWorkbook().ActiveSheet.Shapes(0).Nodes.Insert(6, GrapeCity.Spreadsheet.Drawing.SegmentType.Curve, GrapeCity.Spreadsheet.Drawing.EditingType.Corner, 50, 100, 50, 130, 100, 100)


점 편집을 통해 향상된 사용자 정의 셰이프 지원 도입

그런 다음, 삽입한 노드를 다음과 같은 코드를 사용해 제거할 수 있습니다.


C#

fpSpread1.AsWorkbook().ActiveSheet.Shapes[0].Nodes.Delete(6);


VB

fpSpread1.AsWorkbook().ActiveSheet.Shapes(0).Nodes.Delete(1)


점 편집을 통해 향상된 사용자 정의 셰이프 지원 도입

자유 폼 빌더를 사용하려면 다음과 같이 하면 됩니다.


C#

IFreeFormBuilder freeform = fpSpread1.AsWorkbook().ActiveSheet.Shapes.BuildFreeform(EditingType.Corner, 160, 10);  
freeform.AddNodes(SegmentType.Curve, EditingType.Corner, 180, 30, 200, 50, 250, 100);  
freeform.AddNodes(SegmentType.Curve, EditingType.Auto, 280, 10);  
freeform.AddNodes(SegmentType.Curve, EditingType.Auto, 280, 200);  
freeform.AddNodes(SegmentType.Line, EditingType.Auto, 160, 10);  
freeform.ConvertToShape();


VB

Dim freeform As IFreeFormBuilder = fpSpread1.AsWorkbook().ActiveSheet.Shapes.BuildFreeform(EditingType.Corner, 160, 10)  
freeform.AddNodes(SegmentType.Curve, EditingType.Corner, 180, 30, 200, 50, 250, 100)  
freeform.AddNodes(SegmentType.Curve, EditingType.Auto, 280, 10)  
freeform.AddNodes(SegmentType.Curve, EditingType.Auto, 280, 200)  
freeform.AddNodes(SegmentType.Line, EditingType.Auto, 160, 10)  
freeform.ConvertToShape()


점 편집을 통해 향상된 사용자 정의 셰이프 지원 도입


  • 페이스북으로 공유
  • 트위터로  공유
  • 구글플러스로 공유
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.

그레이프시티 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기

태그

그레이프시티 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
이메일 : sales-kor@grapecity.com | 전화 : 1670-0583 | 경기도 안양시 동안구 시민대로 230, B-703(관양동, 아크로타워) 그레이프시티(주) 대표자 : 허경명 | 사업자등록번호 : 123-84-00981 | 통신판매업신고번호 : 2013-경기안양-00331 Copyright ⓒ 2021 GrapeCity inc.