祝你今天愉快 .

在我的开发环境中,我尝试裁剪存储在谷歌 Cloud 存储中的图像,我们可以使用以下URL访问并显示该图像:
http://127.0.0.1:8080/_ah/img/encoded_gs_file:YXBwX2RlZmF1bHRfYnVja2V0LzIwMTUvNy8yMy90aG9kYW4uanBn
with "encoded_gs_file:YXBwX2RlZmF1bHRfYnVja2V0LzIwMTUvNy8yMy90aG9kYW4uanBn"是blob的blob_key,用于存储图像 .

我用了

class google.appengine.api.images.Image(image_data=None, blob_key=None, filename=None)[source]

在此GAE API链接中:https://cloud.google.com/appengine/docs/python/refdocs/google.appengine.api.images

这是我裁剪该图像的代码:

import google.appengine.api.images as _gimage


    blob_key = 'encoded_gs_file:YXBwX2RlZmF1bHRfYnVja2V0LzIwMTUvNy8yMy90aG9kYW4uanBn'
    img = _gimage.Image(blob_key=blob_key)
    logger.debug('BLOB KEY: %s' % blob_key)

    left = 0.0
    top= 0.0
    right = 0.3
    bottom = 0.3
    cropped_img = img.crop(left_x=left, top_y=top, right_x=width, bottom_y=height)
    #img.resize(width=80, height=100)
    logger.debug('CROPPED IMAGE: %r' % cropped_img)

但是,“cropped_img”返回None对象,这意味着这种作物真的失败了 . 日志显示如下:

2015-07-23 07:19:43,683:DEBUG:BLOB KEY: encoded_gs_file:YXBwX2RlZmF1bHRfYnVja2V0LzIwMTUvNy8yMy90aG9kYW4uanBn
2015-07-23 07:19:43,684:DEBUG:Handled logservice.Flush in 0.0002
2015-07-23 07:19:43,689:DEBUG:Handled images.GetUrlBase in 0.0031
2015-07-23 07:19:43,691:DEBUG:Handled logservice.Flush in 0.0003
2015-07-23 07:19:43,692:DEBUG:<google.appengine.api.images.Image object at 0x7f1eac1873d0>
2015-07-23 07:19:43,694:DEBUG:Handled logservice.Flush in 0.0004
2015-07-23 07:19:43,694:DEBUG:CROPPED IMAGE: None

我无法找出这个问题的根本原因 . 你能帮我解释一下这个错误吗?非常感谢你提前 .

希望你能帮忙 .