Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Matlab中将图形内容保存到矩阵(不使用getframe,也不保存到文件)_Matlab_Figure - Fatal编程技术网

在Matlab中将图形内容保存到矩阵(不使用getframe,也不保存到文件)

在Matlab中将图形内容保存到矩阵(不使用getframe,也不保存到文件),matlab,figure,Matlab,Figure,函数getframe捕获屏幕上可见的任何内容。但是,在我的应用程序中,我希望图形在矩阵中存储其内容时不可见。因此getframe所做的是,在短时间内,它使图形可见并捕获其内容,然后将“visibile”属性设置回屏幕捕获之前的状态。 我不希望屏幕上出现闪光灯。此外,保存文件并将其读回会降低速度。一定有办法解决这个问题 hFig=figure('Visible','off'') text ('String','ABC','fontsize',300) imageData = getframe(hF

函数getframe捕获屏幕上可见的任何内容。但是,在我的应用程序中,我希望图形在矩阵中存储其内容时不可见。因此getframe所做的是,在短时间内,它使图形可见并捕获其内容,然后将“visibile”属性设置回屏幕捕获之前的状态。 我不希望屏幕上出现闪光灯。此外,保存文件并将其读回会降低速度。一定有办法解决这个问题

hFig=figure('Visible','off'')
text ('String','ABC','fontsize',300)
imageData = getframe(hFig);       
img = imageData.cdata; % img is what I am interested in

我知道的唯一方法是将图形打印到临时文件中。例如:

%Create a figure
hFig=figure('Visible','off')
text ('String','ABC','fontsize',300)

%Save the figure to a tiff file using a salted name
tmpName = sprintf('Temp_Figure_%04d.tiff', floor(rand*1000));
print(['-f' num2str(hFig)], '-dtiff', tmpName)

%Read the data
img = imread(tmpName);

%Delete the temporary figure
delete(tmpName);

这不是最漂亮的东西,但似乎很管用。

谢谢,但我特别提到我对使用文件不感兴趣。