FabricJS를 사용하여 캔버스의 뷰포트를 사용자 정의하는 방법은 무엇입니까?

王林
풀어 주다: 2023-09-03 10:13:05
앞으로
622명이 탐색했습니다.

FabricJS를 사용하여 캔버스의 뷰포트를 사용자 정의하는 방법은 무엇입니까?

이 기사에서는 FabricJS를 사용하여 캔버스의 뷰포트를 사용자 정의하는 방법을 알아봅니다. 뷰포트는 사용자가 볼 수 있는 캔버스 영역입니다. viewportTransform 속성을 사용하여 뷰포트를 사용자 정의할 수 있습니다. 이를 통해 뷰포트의 변환을 제어할 수 있습니다.

Syntax

new fabric.Canvas(element: HTMLElement|String, { viewportTransform: Array }: Object)
로그인 후 복사

Parameters

  • Element - 이 매개변수는 요소 자체이며 다음과 같이 될 수 있습니다. 요소 자체의 ID에서 파생된 Document.getElementById() 또는 를 사용했습니다. FabricJS 캔버스는 이 요소에서 초기화됩니다.

  • Options(선택 사항) - 이 매개변수는 캔버스에 대한 추가 사용자 정의를 제공하는 개체입니다. 이 매개변수를 사용하면 색상, 커서, 테두리 너비 및 캔버스와 관련된 기타 여러 속성을 변경할 수 있으며 그 중 viewportTransform이 속성입니다. 평면에서의 변환을 결정하는 데 사용되는 6개 값의 배열을 허용합니다. 기본값은 canvas.viewportTransform = [1, 0, 0, 1, 0, 0]입니다.

예제 1

viewportTransform 속성을 클래스의 키로 전달

코드 예제를 통해 캔버스의 뷰포트를 사용자 정의하는 방법을 살펴보겠습니다. 이 예에서는 [0.7, 0.1, 0.5, 0.9, 20, 50] 값을 사용하여 scaleX, SkewY, SkewX, scaleY, TranslationtranslationY을 각각 나타냈습니다.

<!DOCTYPE html>
<html>
<head>
   <!-- Adding the Fabric JS Library-->
   <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script>
</head>
<body>
   <h2>Customizing the viewport of the canvas using FabricJS </h2>
   <p>Select an area around the object to see the viewports.</p>
   <canvas id="canvas"></canvas>
   <script>
      // Initiate a canvas instance
      var canvas = new fabric.Canvas("canvas", {
         viewportTransform: [0.7, 0.1, 0.5, 0.9, 20, 50]
      });
      // Creating an instance of the fabric.Rect class
      var circle = new fabric.Circle({
         left: 215,
         top: 100,
         radius: 50,
         fill: "red",
      });
      // Adding it to the canvas
      canvas.add(circle);
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);
   </script>
</body>
</html>
로그인 후 복사
예제 2

객체를 축소하려면 viewportTransform 속성을 사용자 정의 값이 포함된 키로 전달하세요.

크기가 80%로 확대되고 기울이지 않고 오른쪽 하단으로 이동하는 변환을 보여주는 또 다른 코드 예를 살펴보겠습니다.

rreee

위 내용은 FabricJS를 사용하여 캔버스의 뷰포트를 사용자 정의하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!