How to format a text box annotation?

65 次查看(过去 30 天)
I have an annonation on my image in matlab but I'm trying to have it with green text, a black outline and a purple background. I want my text font to be italic and in the Comic Sans format. Anyone know how to incorporate these characteristics in my code:
davis = imread('DavisHall.jpg');
figure(1), imagesc(davis), axis image
helpdlg(sprintf('Pick four corners of a window in this picture.\nPick top right corner first.\nPick bottom right corner second.\nPick bottom left corner third.\nPick top left corner fourth.'))
PickCorners = ginput(4)
x = [PickCorners(:,1)];
y = [PickCorners(:,2)];
h = gca;
hold(h, 'on');
plot(h, x', y');
plot(h, [x;x(1)]', [y;y(1)]');
dim = [.2 .5 .3 .3];
str = 'Window'
annotation('textbox',dim,'String',str,'FitBoxToText','on');

采纳的回答

Adam Danz
Adam Danz 2018-12-1
编辑:Adam Danz 2020-8-31
You need the handle to the annotation object.
Once you have the handle, you can see the list of editable properties.
ah = annotation('textbox',dim,'String',str,'FitBoxToText','on');
Now look at all of the properties by executing 'ah' in the command window.
ah.Color = 'g'; %or = [0 .5 0] Green text
ah.FontName = 'Comic Sans MS'; %use listfonts command to see list of available fonts
ah.BackgroundColor = [.5 0 .5]; %purple background
EdgeColor will set the box color but it's already black when it's created.
  4 个评论
micholeodon
micholeodon 2020-8-31
编辑:micholeodon 2020-8-31
I wonder why formatiing below not works (text is not aligned in plot):
figure
nlogl = randn; mi = randn; ma = randn;
dim = [0.37 0.15 0.4 0.3];
str = sprintf('\n NLOGL\t = %+8.2f \n min\t = %+8.2f \n max\t = %+8.2f', nlogl, mi, ma);
txtbox = annotation('textbox', dim, 'String', str, 'FitBoxToText', 'on');
txtbox.FontName = 'FixedWidth';
Am I doing sth wrong?
When I type
str
in Command Window it displays nicely aligned text.
Adam Danz
Adam Danz 2020-8-31
Remove the spaces following "\n".
str = sprintf('NLOGL\t = %+8.2f \nmin\t = %+8.2f \nmax\t = %+8.2f', nlogl, mi, ma);

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Annotations 的更多信息

标签

产品


版本

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by