2016-10-04 9 views
0

キャンバスのピクセル操作をしようとしています。それは、私がfillRectを使用しているが、ハードドライブから画像を読み取っていないときに機能しますか?私がしようとしているのは、スプライトを使って画像を編集することです。私は画像を読んでみたい。それはあなたのハードドライブ上に置くことができません画像をロードするキャンバスためにはHTML5ピクセル操作の問題。キャンバスは私のイメージを読んでいません(オンラインではありません)

count = 3; 
for (var i = 0; i < 172000; ++i) { 
    switch (i % 480) { 
    case 240: 
     count = count - 1918; 
     break; 
    case 0: 
     count = count + 1918 
     break; 
    } 
    var hold = 4 * i + count; 
    var nn = (imageData.data[hold] >> 1) % 64; 
    var mm = screen[i] * 8 + (imageData.data[hold + 1] >> 5); 
    var hq = (imageData.data[hold + 1] % 18); 
    var sq = 18 * (imageData.data[hold] % 2); 
    var m = (RELUM[mm][nn] * 36 + hq + sq); 
    //ading hue to luminance 
    var value = (m % 216); 
    //outpuutting color 
    var r = imageData.data[4 * value]; 
    var g = imageData.data[4 * value + 1]; 
    var b = imageData.data[4 * value + 2]; 
    var a = imageData.data[4 * value + 3]; 
    //Little endian 
    data[i] = (a << 24) | 
    (b << 16) | 
    (g << 8) | 
    r; 
} 
+0

ドメインの問題が発生している可能性があります。クロスドメインの問題が発生することなく、ローカルドライブからイメージを読み込むためにFileReaderを参照してください。 – markE

答えて

0

は、それがサーバー(ローカルまたはそうでない)上にある必要があり、それが有効になって、同じドメインまたはCORS上にある必要があります。

簡単な回避策は、base64イメージを使用することです。サイトlike this oneを使用してイメージをbase65文字列に変換します。イメージは、イメージsrc URLを使用するのと同じ方法で使用でき、ロードされます。

+0

オフラインイメージを使用できる他のhtml5ピクセル操作はありますか – Infinity8378

関連する問題