2015-09-16 27 views
1

我想在MATLAB中顯示一個大的文本(準確的說是一個字符串)。我目前使用下面的代碼:在MATLAB中顯示一個大文本

fig = figure(3); 
hPan = uipanel(fig,'Units','normalized'); 
uicontrol(hPan, 'Style','text','HorizontalAlignment','center', ... 
'FontSize',25, 'Units','normalized', 'Position',[0 0 1 1], ... 
'String',decodedValue); 

但由於uicontrol不支持VerticalAlignment,我的輸出是目前貼在圖的頂部,而我想,使其中心:

enter image description here

有沒有其他方法可以在MATLAB中顯示大文本?

+0

我們可以假設編輯位置的大小不是一個選項嗎? – patrik

+0

@patrik任何事情都是可能的,只要我能讓我的字符串在圖形的中心打印得漂亮整齊。所以你建議打印幾行較低的文本。對? – Bababarghi

+0

是的,我認爲這就是Matlab如何完成它。此外,你認爲有一個包含整個數字的文本框是合理的嗎?這可能會導致複雜性(如文本框涵蓋其他類型的信息),迫使您編寫不必要的高級圖形處理機制。 – patrik

回答

0

您可以設置position和大小的uicontrol文本字段的在你的圖的中心:

decodedValue = 'Decoded Value: 2'; 

fig = figure(3); 
hPan = uipanel(fig,'Units','normalized'); 

uicontrol(hPan, 'Style','text', 'HorizontalAlignment','center', ... 
'FontSize',25, 'Units','normalized', 'Position',[0.2 0.4 0.6 0.2], ... 
'String',decodedValue); 

位置矢量具有以下含義:[left bottom width height]:數字/文本元素開始於left bottom並且尺寸爲width height