Reduce the line height for an annotation textbox

The following code
annotation('textbox','String',{'\fontsize{10}TEST', '\fontsize{15}7,987,157', '\fontsize{10}+8,829'},'FontName','Consolas')
creates this box
One can notice that the third string is farther than the first one from the the middle one.
Moreover, by increasing the fontsize of the middle string, the last one will go even far away. Also the first string will go a little far away.
annotation('textbox','String',{'\fontsize{10}TEST', '\fontsize{25}7,987,157', '\fontsize{10}+8,829'},'FontName','Consolas')
Is there a way to reduce the line height or, similarly, to reduce the distance between the strings?

8 Comments

Look ok on my computer (2013v)
Did you try another font?
I tried with default font, arial, verdana, times new roman, but in all cases the strings are far away
Here is the last idea i have
opengl software
Output doesn't change :c thanks anyway for help
giannit, can you tell what MATLAB release are you using and on which operating system. I tried it on macOS with R2020a, and I get the same output as you. But if I run this on the MATLAB online, it doesn't have extra space (image shown below). MATLAB online use Linux VM. I don't have access to a window machine to cannot try there.
on windows 10.
I just tried on matlab online, the simple 1 line command of the question works without adding extra space, but when I add more sofisticated stuff, other things start to not work properly. I think this is due to limitation of matlab online
I guess these functions were never intended for sophisticated text formatting with multi-line text. That is why there are some issues if the command becomes complex.
The problem is reproduced in r2020a using Windows 7. It appears that the space between lines n and n+1 is based on the fontsize that is in line n.
Note that the default verticalAlignment of the annotation is "top" but that only affects the entire text box as a whole, not each component within the textbox.

Sign in to comment.

 Accepted Answer

A workaround is simply to move the fontsize command of the last string to the middle string, that is
annotation('textbox','String',{'\fontsize{10}TEST', '\fontsize{25}7,987,157\fontsize{10}', '+8,829'},'FontName','Consolas')

More Answers (0)

Categories

Tags

Asked:

on 28 Apr 2020

Commented:

on 1 May 2020

Community Treasure Hunt

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

Start Hunting!