最新公告
  • 欢迎您光临码农资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!加入我们
  • FabricJS – 确定对于多边形对象应该首先绘制填充还是描边?

    fabricjs – 确定对于多边形对象应该首先绘制填充还是描边?

    我们可以通过创建fabric.Polygon的实例来创建一个Polygon对象。多边形对象的特征可以是由一组连接的直线段组成的任何闭合形状。由于它是 FabricJS 的基本元素之一,因此我们还可以通过应用角度、不透明度等属性轻松自定义它。为了确定应该先绘制填充还是描边,我们使用 paintFirst财产。

    语法

    new fabric.Polygon( points: Array, { paintFirst: String }: Object )
    

    参数

    • points– 此参数接受一个Array,它表示组成多边形对象的点数组,其中每个点都在具有 x 和 y 的对象。

    • 选项(可选) – 此参数是一个对象,它为我们的对象提供额外的自定义。使用此参数,可以更改与 Polygon 对象相关的原点、描边宽度和许多其他属性,其中 paintFirst 是该对象的属性。

    选项键

    paintFirst– 此属性接受一个 String 值,该值定义是否首先绘制填充或描边。默认值为“填充”。

    示例 1:多边形对象的默认外观

    让我们看一个代码示例,了解未应用 paintFirst 属性时多边形对象的显示方式。在本例中,使用默认值“fill”。这意味着在绘制对象时,将首先绘制填充颜色,然后绘制描边颜色。

    <!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>Default appearance of polygon object</h2>
       <p>You can see the default appearance of polygon object</p>
       <canvas id="canvas"></canvas>
       <script>
          
          // Initiate a canvas instance
          var canvas = new fabric.Canvas("canvas");
          canvas.setWidth(document.body.scrollWidth);
          canvas.setHeight(250);
          
          // Initiating a polygon object
          var polygon = new fabric.Polygon(
             [
                { x: 200, y: 10 },
                { x: 250, y: 50 },
                { x: 250, y: 180 },
                { x: 150, y: 180 },
                { x: 150, y: 50 },
                { x: 200, y: 10 },
             ],
             {
                fill: "green",
                stroke: "blue",
                strokeWidth: 20,
             }
          );
          
          // Adding it to the canvas
          canvas.add(polygon);
       </script>
    </body> 
    </html> 
    

    示例2:使用paintFirst属性

    让我们看一个代码示例,了解如何使用 paintFirst 属性更改多边形对象的默认行为。在这里,我们向 paintFirst 属性传递了值“lines”。这确保首先绘制笔划而不是填充。

    <!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>Using the paintFirst property</h2>
       <p>You can see that the stroke is painted first now</p>
       <canvas id="canvas"></canvas>
       <script>
          
          // Initiate a canvas instance
          var canvas = new fabric.Canvas("canvas");
          canvas.setWidth(document.body.scrollWidth);
          canvas.setHeight(250);
          
          // Initiating a polygon object
          var polygon = new fabric.Polygon(
             [
                { x: 200, y: 10 },
                { x: 250, y: 50 },
                { x: 250, y: 180 },
                { x: 150, y: 180 },
                { x: 150, y: 50 },
                { x: 200, y: 10 },
             ],
             {
                fill: "green",
                stroke: "blue",
                strokeWidth: 20,
                paintFirst: "stroke",
             }
          );
          
          // Adding it to the canvas
          canvas.add(polygon);
       </script>
    </body> 
    </html>
    

    结论

    在本教程中,我们使用两个简单的示例来演示如何使用 FabricJS 确定应首先为多边形绘制填充还是描边。

    想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
    本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
    如有侵权请发送邮件至1943759704@qq.com删除

    码农资源网 » FabricJS – 确定对于多边形对象应该首先绘制填充还是描边?
    • 7会员总数(位)
    • 25846资源总数(个)
    • 0本周发布(个)
    • 0 今日发布(个)
    • 292稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情