png_bakery.py 文件源码

python
阅读 18 收藏 0 点赞 0 评论 0

项目:openbadges-bakery 作者: concentricsky 项目源码 文件源码
def bake(imageFile, assertion_string, newfile=None):
    """
    Embeds a serialized representation of a badge instance in a PNG image file.
    """
    encoded_assertion_string = codecs.getwriter('utf-8')(assertion_string)
    reader = png.Reader(file=imageFile)

    if newfile is None:
        newfile = NamedTemporaryFile(suffix='.png')

    chunkheader = b'openbadges\x00\x00\x00\x00\x00'
    chunk_content = chunkheader + encoded_assertion_string.stream.encode('utf-8')
    badge_chunk = ('iTXt', chunk_content)
    png.write_chunks(newfile, baked_chunks(reader.chunks(), badge_chunk))

    newfile.seek(0)
    return newfile
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号