<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • HTML5組件Canvas實現圖像灰度化教程

    時間:2024-10-20 16:35:48 HTML DOM 我要投稿
    • 相關推薦

    關于HTML5組件Canvas實現圖像灰度化教程

      新建一個html頁面,在body tag之間加入

      Gray Filter

      添加一段最簡單的JavaScript 腳本

      window.onload = function() {

      var canvas = document.getElementById("myCanvas");

      // TODO: do something here

      }

      從Canvas對象獲取繪制對象上下文Context的代碼如下:

      var context = canvas.getContext("2d");

      在html頁面中加入一幅圖像的html代碼如下

      完全源代碼如下:

      window.onload = function() {

      var canvas = document.getElementById("myCanvas");

      var image = document.getElementById("imageSource");

      // re-size the canvas deminsion

      canvas.width = image.width;

      canvas.height = image.height;

      // get 2D render object

      var context = canvas.getContext("2d");

      context.drawImage(image, 0, 0);

      var canvasData = context.getImageData(0, 0, canvas.width, canvas.height);

      alert(canvasData.width.toString());

      alert(canvasData.height.toString());

      // gray filter

      for ( var x = 0; x < canvasData.width; x++) {

      for ( var y = 0; y < canvasData.height; y++) {

      // Index of the pixel in the array

      var idx = (x + y * canvasData.width) * 4;

      var r = canvasData.data[idx + 0];

      var g = canvasData.data[idx + 1];

      var b = canvasData.data[idx + 2];

      // calculate gray scale value

      var gray = .299 * r + .587 * g + .114 * b;

      // assign gray scale value

      canvasData.data[idx + 0] = gray; // Red channel

      canvasData.data[idx + 1] = gray; // Green channel

      canvasData.data[idx + 2] = gray; // Blue channel

      canvasData.data[idx + 3] = 255; // Alpha channel

      // add black border

      if(x < 8 || y < 8 || x > (canvasData.width - 8) || y > (canvasData.height - 8))

      {

      canvasData.data[idx + 0] = 0;

      canvasData.data[idx + 1] = 0;

      canvasData.data[idx + 2] = 0;

      }

      }

      }

      context.putImageData(canvasData, 0, 0); // at coords 0,0

      }

      Gray Filter

      代碼中的文件可以替換任意你想要看到的圖片文件

      HTML5, 原來如此神奇。程序在google瀏覽器中測試通過,

      最后的忠告,千萬不要在本地嘗試運行上面的代碼,google瀏覽器的安全檢查會自動阻止從瀏覽器中讀寫非domain的文件

      最好在tomcat或者任意個web container的server上發布以后從google瀏覽器查看效果即可。

    【HTML5組件Canvas實現圖像灰度化教程】相關文章:

    Dreamweaver插入圖像的教程07-13

    實現html方法結構化10-01

    旅游企業如何實現信息化07-01

    如何實現生產標準化管理10-22

    HTML5的發展08-15

    嵌入式系統的虛擬化怎么實現12-27

    實現企業管理標準化的措施01-13

    關于辦公自動化系統的設計與實現07-28

    企業物流管理如何實現現代化11-02

    如何實現企業信息管理現代化12-08

    主站蜘蛛池模板: 亚洲日韩精品无码一区二区三区 | 91不卡在线精品国产| 国产精品无打码在线播放| 亚洲av永久无码精品秋霞电影影院 | 国产精品久久久久乳精品爆| 日本aⅴ精品中文字幕| 精品国产福利盛宴在线观看| 1000部精品久久久久久久久| 正在播放国产精品每日更新 | 精品久久8x国产免费观看| 久久中文精品无码中文字幕| 国产91精品黄网在线观看| AV无码精品一区二区三区| 亚洲AV无码国产精品麻豆天美 | 亚洲?V无码乱码国产精品| jizz国产精品| 亚洲国产精品久久久久| 国产成人精品高清在线观看99 | 欧美精品一区二区精品久久| 97热久久免费频精品99| 久久青青草原精品国产| 久久水蜜桃亚洲av无码精品麻豆| 亚洲精品无码av人在线观看| 亚洲?V无码乱码国产精品| 久久五月精品中文字幕| 精品无码国产污污污免费网站国产| 国产激情精品一区二区三区| 在线精品视频播放| 精品一区二区三区中文字幕| 91久久婷婷国产综合精品青草| 精品视频无码一区二区三区| 久久久久久夜精品精品免费啦| 日韩人妻无码精品久久久不卡 | 国产一区二区精品久久凹凸| 99久久精品免费看国产一区二区三区 | 成人精品在线视频| 国产99视频精品一区| 国产精品一二三区| 精品午夜久久福利大片| 91精品国产高清久久久久久国产嫩草 | 亚洲欧美日韩精品久久|