2008-08-30
SafariのCanvas::createPattern が反転する
JavaScript, 問題, canvas, uupaa.js
uupaa.js version 0.5のリリース作業に取り掛かっていますが、ひとつ非常にこまったバグが残っていたりします。
それは、Windows上のSafari3.1で発生するのですが、
<!DOCTYPE html> <html><head><title>Safari3.1(525.13.3) createPattern is overturnd</title></head><body> <div> <img id="img" src="cover0.jpg" alt="" /> <canvas id="canvas" style="outline: 1px solid blue" width="200" height="200"></canvas> </div> <script> window.onload = function() { var ctx = document.getElementById("canvas").getContext("2d"); var img = document.getElementById("img"); ctx.drawImage(img, 0, 0, 100, 100); var pattern = ctx.createPattern(ctx.canvas, ""); ctx.clearRect(0, 0, 200, 200); ctx.fillStyle = "green"; ctx.fillRect(0, 0, 200, 200); ctx.fillStyle = pattern; ctx.fillRect(10, 10, 190, 190); } </script></body></html>
こうすると、Safariだけパターンが反転した状態で描画されてしまうんです。
困ってしまって、 scale(1,-1) とか、rotate(180 * PI / 180) とかやってみたんですがダメっぽいのです。
時間を作ってWebKitのソースコードを追っかけてみるつもりですが、とりあえずversion 0.5でpunyosunset,waveエフェクトが上下反転するバグはそのままリリースする予定です。
トラックバック - http://d.hatena.ne.jp/uupaa/20080830/1220070361
リンク元
- 5 http://reader.livedoor.com/reader/
- 1 http://b.hatena.ne.jp/monjudoh/JavaScript/
- 1 http://d.hatena.ne.jp
- 1 http://d.hatena.ne.jp/diarylist?of=100&mode=rss&type=public
- 1 http://d.hatena.ne.jp/javascripter/?of=20
- 1 http://www.google.co.jp/search?hl=ja&c2coff=1&client=firefox-a&rls=org.mozilla:ja:official&hs=Aw1&q=スーパールイージ&btnG=検索&lr=lang_ja
- 1 http://www.google.co.jp/search?hl=ja&client=firefox-a&channel=s&rls=org.mozilla:ja:official&q=javascript+image+onload&btnG=検索&lr=
- 1 http://www.google.co.jp/search?hl=ja&client=firefox-a&rls=org.mozilla:ja:official&q=XPath+正規表現&btnG=検索&lr=lang_ja
- 1 http://www.google.co.jp/search?hl=ja&rlz=1B3GGGL_ja___JP226&q=dom+xpath+javascript&start=10&sa=N
- 1 http://www.google.co.jp/search?hl=ja&safe=off&q=javascript+遅延+画像&btnG=検索&lr=

