xwd.py 文件源码

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

项目:xwd2png 作者: drj11 项目源码 文件源码
def main(argv=None):
    if argv is None:
        argv = sys.argv

    opts, args = getopt.getopt(argv[1:], 'i', ['info', 'raw'])

    options = [o for o,v in opts]

    if len(args) == 0:
        inp = binary(sys.stdin)
        out = binary(sys.stdout)
    else:
        inp = open(args[0], 'rb')
        out = None

    xwd = xwd_open(inp)

    if '-i' in options or '--info' in options:
        info = xwd.info()
        dprint(info)
        return 0

    if '--raw' in options:
        for row in xwd:
            print(*row)
        return 0

    if out is None:
        try:
            inp.name
        except AttributeError:
            out = "xwd2png_out.png"
        else:
            out = re.sub(r'(\..*|)$', '.png', inp.name)
            if out == inp.name:
                # avoid overwriting input,
                # if, for some reason,
                # input is mysteriously named: input.png
                output_name += '.png'

    format = xwd.uni_format()

    assert format == "RGB8"

    import png
    apng = png.from_array(xwd, "RGB;8")
    apng.save(out)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号