「Pascal HTML5 Graphics」または「Rainbow DashでOperaがしたこと」

My Little Ponyシリーズ専用のテーマサイトで、古いGraphモジュールを使用していくつかの文字を描画するTurbo Pascalコードを見ました。



コードには関数呼び出しとコメントのみが含まれ、javascriptは完全にparsilでした。 グラフィック機能を追加するだけです。



最終版



var colors = ["#000000", "#0000AA", "#00AA00", "#00AAAA", "#AA0000", "#AA00AA", "#AA5500", "#AAAAAA", "#555555", "#5555FF", "#55FF55", "#55FFFF", "#FF5555", "#FF55FF", "#FFFF55", "#FFFFFF"]; function setcolor(colorIndex) { ctx.strokeStyle = colors[colorIndex]; } function line(x1, y1, x2, y2) { ctx.beginPath(); ctx.moveTo(x1, y1); ctx.lineTo(x2, y2); ctx.stroke(); ctx.closePath(); } function setlinestyle(p, t, width) { ctx.lineWidth = width; } function setfillstyle(t, colorIndex) { ctx.fillStyle = colors[colorIndex]; } function ellipse(x, y, st, end, xrad, yrad) { ctx.save(); ctx.translate(x, y); ctx.scale(xrad, -yrad); ctx.beginPath(); ctx.arc(0, 0, 1, st * Math.PI / 180.0, end * Math.PI / 180.0, false); ctx.restore(); ctx.stroke(); } function fillellipse(x, y, xrad, yrad) { ctx.save(); ctx.translate(x, y); ctx.scale(xrad, yrad); ctx.beginPath(); ctx.arc(0, 0, 1, 0, Math.PI * 2, true); ctx.fill(); ctx.closePath(); ctx.restore(); }
      
      







それが起こった

Operaは、ellipse()関数の実装に対する反応が不十分です。





バグが報告されました。



しかし、私はそこで止まりませんでした、そして結果はここで観察することができます







現時点では、他の方法でこれを加速する方法を考えています。 アイデア?



All Articles