我正在使用export_fig()
函数(可用here)来生成MATLAB中生成的数字的光栅图形。
使用参数'-zbuffer'
,我能够使用image()
命令生成包含放置在图上的图像的图形图形。但是,图像中的任何透明度都会丢失,并被黑色取代。我制作的数字由多个图像元素组成,这些图像元素相互叠加,每个image()
的透明度都可以使用,因此可以在下面看到其他图像元素。
有人知道如何将export_fig()
与包含透明度的image()
一起使用吗?
n.b。 '-transparent'
参数无法实现此目的。
答案 0 :(得分:0)
如果您阅读properties of different renderers上的MATLAB注释,您会发现OpenGL是唯一支持透明补丁对象的渲染器。因此,您需要使用-opengl
选项,而不是-zbuffer
选项。
答案 1 :(得分:0)
使用-opengl渲染器。
示例: export_fig(。,' - opengl')
我看了看这个功能。并且该函数的注释部分具有以下描述:
“渲染器(opengl,zbuffer或画家)的选择产生很大影响 关于产出的质量。虽然是默认值(位图的opengl, 如果不是,那么矢量格式的画家通常会给出好的结果 满意然后尝试另一个渲染器。
注意:
1)对于矢量格式(eps,pdf),只有画家会生成矢量图形。
2)对于位图,只有opengl可以正确渲染透明的补丁对象。
3)对于位图,只有画家在放大或消除锯齿时才能正确缩放线条划线和点长度。
4)使用画家时字体可以用Courier替代。“
希望它有所帮助。