2016-10-04 36 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