3

Fabric.js要素のコンテキストで「アークパスに沿ったHTML5キャンバステキスト」を適用するにはどうすればよいですか?

http://www.html5canvastutorials.com/labs/html5-canvas-text-along-arc-path/ 上記のリンクを使用すると、湾曲したテキストを表示できます。fabric.js でこれを実現するにはどうすればよいですか??

JS フィドル :: http://jsfiddle.net/E5vnU/

      function drawTextAlongArc(context, str, centerX, centerY, radius, angle) {
    var len = str.length, s;
    context.save();
    context.translate(centerX, centerY);
    context.rotate(-1 * angle / 2);
    context.rotate(-1 * (angle / len) / 2);
    for(var n = 0; n < len; n++) {
      context.rotate(angle / len);
      context.save();
      context.translate(0, -1 * radius);
      s = str[n];
      context.fillText(s, 0, 0);
      context.restore();
    }
    context.restore();
  }
  var canvas = document.getElementById('myCanvas'), 
    context = canvas.getContext('2d'),
    centerX = canvas.width / 2,
    centerY = canvas.height - 30,
    angle = Math.PI * 0.8,
    radius = 150;

  context.font = '30pt Calibri';
  context.textAlign = 'center';
  context.fillStyle = 'blue';
  context.strokeStyle = 'blue';
  context.lineWidth = 4;
  drawTextAlongArc(context, 'Text along arc path', centerX, centerY, radius, angle);

  // draw circle underneath text
  context.arc(centerX, centerY, radius - 10, 0, 2 * Math.PI, false);
  context.stroke();
4

3 に答える 3

8

曲線テキストの実装が完了しました。

https://github.com/EffEPi/fabric.curvedText

他のfabric.Textオブジェクトと同じように使用できます。

于 2013-09-28T20:00:45.167 に答える
4

曲線テキストも実装しましたが、

こっち見て、

https://github.com/swabha1/Path_Text_V0.2.git

実際には、円、線、円弧、長方形などであるかどうかに関係なく、パス入力でテキストをレンダリングするのはパス テキストです。

于 2016-03-29T13:40:53.963 に答える