从管道中读取png图像

时间:2015-10-20 17:49:36

标签: julia

假设我有一个包含PNG图像的管道。具体来说,使用Graphs包

using Graphs
G = erdos_renyi_graph(12, 0.1; is_directed=false)
outp, inp, proc = readandwrite(`neato -Tpng`)
Graphs.to_dot(G, inp)
close(inp)

现在outp是一个包含原始图像数据的管道。如何用Images.jl将其读入图像,或者如何直接用IJulia显示它?

1 个答案:

答案 0 :(得分:5)

我最终可以使用Base.HTML和base64转换来解决它,就像Base.Markdown一样......

data = readbytes(outp)

Base.HTML() do io
    print(io, """<img src="data:image/png;base64,""")
    print(io, stringmime(MIME"image/png"(), data))
    print(io, "\" />")
end