奶头挺立呻吟高潮av全片,成人试看120秒体验区,性欧美极品v,A片高潮抽搐揉捏奶头视频

java語言

用canvas就可以實現圖片的濾鏡轉化代碼實現

時間:2024-07-19 14:14:11 java語言 我要投稿
  • 相關推薦

用canvas就可以實現圖片的濾鏡轉化代碼實現

  導語:canvas的getImageData可以獲取canvas內圖像的沒一個像素點的顏色值獲取,而且可以改變,下面是小編給大家提供的用canvas就可以實現圖片的濾鏡轉化代碼實現,大家可以參考閱讀,更多詳情請關注應屆畢業生考試網。

  使用方法:

  1:先將圖片導入畫布。

  2:var canvasData = context.getImageData(0, 0, canvas.width, canvas.height); //用這個將圖片每個像素點的信息獲取出來,得到一個數組。注意得到的信息不是[[r,g,b,a],[r,g,b,a]]這樣的二維數組而是[r,g,b,a,r,g,b,a]這樣的按rgba順序排列的單個的數組。

  3:這一步就是開始將每個像素的rgba改變。這里簡單介紹一下灰度效果的算法及實現步驟。

  function gray(canvasData)

  {

  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];

  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;

  }

  }

  }

  return canvasData;

  }

  4:context.putImageData(canvasData, 0, 0); //處理完像素顏色值之后,記得要這一句將畫布重繪

  這些個代碼就是將圖片轉化為黑白效果的代碼,具體可以實現多少效果就得看你掌握的濾鏡算法有多少了。

【用canvas就可以實現圖片的濾鏡轉化代碼實現】相關文章:

使用python實現Linux異步epoll的代碼03-01

java構造函數實現代碼示例04-03

PHP實現大文件上傳源代碼11-23

php實現圖片縮放功能類03-31

JavaScript簡單實現放大鏡效果代碼12-09

C#實現協同過濾算法的實例代碼11-30

怎么運用PS實現圖片局部顏色的修改12-09

CSS如何實現中英文雙語菜單效果代碼12-04

純css實現藍色圓角效果水平導航菜單代碼12-04

主站蜘蛛池模板: 德江县| 静宁县| 乌拉特中旗| 巴青县| 镇雄县| 太原市| 雅安市| 鞍山市| 娄底市| 马关县| 衡水市| 庆元县| 灵宝市| 泸水县| 永昌县| 磐石市| 光泽县| 黄冈市| 巴南区| 云梦县| 广德县| 长泰县| 高安市| 枣阳市| 宁津县| 林州市| 山东省| 木兰县| 汾阳市| 武安市| 文化| 贵州省| 年辖:市辖区| 务川| 武威市| 镇雄县| 苍山县| 保定市| 伊宁市| 合江县| 乌拉特前旗|