Rubyでcanvasをいじる
昨日の日記のJSObject(http://d.hatena.ne.jp/miura1729/20080118/1200662536)を使って、canvasタグをDOMで挿入するという方法で、FireFoxで今見ているページの後ろに星の図形を書く、プログラムを作ってみました。FireFoxはMozReplを使えるようにしておいてください。
require 'jsobj.rb' def cp(dg) rad = (dg / 180.0) * Math::PI [250 + Math.sin(rad) * 250.0, 250 + Math.cos(rad) * 250.0] end canvas = $content.document.createElement('canvas') canvas.width = 500 canvas.height = 500 $content.document.body.appendChild(canvas) ctx = canvas.getContext('2d') ctx.beginPath(); ctx.moveTo(*cp(0)); ctx.lineTo(*cp(144)); ctx.lineTo(*cp(288)); ctx.lineTo(*cp(72)); ctx.lineTo(*cp(216)); ctx.closePath(); ctx.stroke();
昨日のページのプログラムをjsobj.rbという名前でセーブしてください。また、昨日のバージョンはバグがいくつかありますので、動かなかったら、コピーしなおしてください。