小编Mik*_*ike的帖子

Javascript用于检测不透明的PNG区域的方法

我正在寻找一种在透明PNG中检测图像的javascript方法.例如,我将使用940x680的透明画布创建一个PNG,然后在该画布中的某处放置一个完整的不透明对象.

我希望能够检测到画布中不透明的对象的大小(h/w)和顶部+左侧位置

这是原始图像的示例带图像对象的透明PNG画布 这是我想要实现的一个例子.(边框重叠,顶部+左边距数据)

结果图片

我发现了一个资源,它做了一些透明度检测,但我不知道我如何将这样的东西扩展到我正在寻找的东西.

var imgData,
    width = 200,
    height = 200;

$('#mask').bind('mousemove', function(ev){
    if(!imgData){ initCanvas(); }
    var imgPos = $(this).offset(),
      mousePos = {x : ev.pageX - imgPos.left, y : ev.pageY - imgPos.top},
      pixelPos = 4*(mousePos.x + height*mousePos.y),
         alpha = imgData.data[pixelPos+3];

    $('#opacity').text('Opacity = ' + ((100*alpha/255) << 0) + '%');
});

function initCanvas(){
    var canvas = $('<canvas width="'+width+'" height="'+height+'" />')[0],
           ctx = canvas.getContext('2d');

    ctx.drawImage($('#mask')[0], 0, 0);
    imgData = ctx.getImageData(0, 0, width, height);
}
Run Code Online (Sandbox Code Playgroud)

小提琴

javascript html5 png canvas html5-canvas

5
推荐指数
1
解决办法
2896
查看次数

使用从REST服务检索的PHP数组

我希望使用从RESTful服务获得的PHP数组。

它们数组只是输出如下的简单数组,

array (
  0 => 
  stdClass::__set_state(array(
     'id' => '375',
     'primary_name' => 'Beaufort 3',
     'price' => '',
     'sqft' => '2435',
     'bdrm' => '3',
     'bthm' => '2.5',
     'display_title' => 'Traditional A1',
     'full_img_path' => '',
     'thumb_path' => '',
     'available_in' => 'a:2:{i:0;s:1:"2";i:1;s:1:"5";}',
     'display_first' => '',
  )),
)
Run Code Online (Sandbox Code Playgroud)

我正在使用file_get_contents但现在不再是数组来获取数据。将其转换回可用数组的最佳方法是什么?

php arrays rest

1
推荐指数
1
解决办法
683
查看次数

标签 统计

arrays ×1

canvas ×1

html5 ×1

html5-canvas ×1

javascript ×1

php ×1

png ×1

rest ×1