外部图像为灰度

时间:2012-12-18 22:38:34

标签: php jquery html grayscale securityexception

我正在为我的大学开展一个小项目,我遇到了一个问题,即在我的横幅中将灰度应用于Google的Picasa服务器中的外部加载图像。 我尝试创建任何加载图像的灰度画布,但在尝试获取图像数据时,我可以看到安全错误。

我使用的是jQuery,HTML,PHP和Ajax语言。

您可以在此处找到整个项目: Google Code Project

我尝试使用这个库: $getImageData

但我得到的信息是我的请求无法处理。 我还尝试了许多其他库和代码,但没有结果。

2 个答案:

答案 0 :(得分:0)

您正在使用“json”数据类型进行跨域请求,该数据类型不是有效的跨域数据类型。您应该得到相同的原始错误。您需要切换到jsonp数据类型。

jQuery('.container').ready(function() {
    jQuery.ajax({
        type: 'GET',
        dataType:'jsonp',
        url: 'https://picasaweb.google.com/data/feed/base/user/115131339234962778181/album/jsite?access=public&kind=photo&alt=json-in-script',

注意,我也改变了网址,不要错过这个改变,这很重要。

https://developers.google.com/gdata/docs/json

答案 1 :(得分:0)

将外部数据绘制到画布上时,会将其标记为受污染。污染会禁用从画布中恢复图像数据的能力。但是,您应该能够使用.crossOrigin attribute

更改该行为