主要内容

TextBox 属性

文本框的外观和行为

TextBox 属性控制 TextBox 对象的外观和行为。通过更改属性值,您可以修改文本框的特定方面。使用圆点表示法查询和设置属性。

t = annotation("textbox");
sz = t.FontSize;
t.FontSize = 12;

文本

全部展开

要显示的文本,指定为字符向量、字符向量元胞数组、字符串数组、分类数组或数值。根据您需要的文本外观指定一个值。下表列出了最常见的情况。

文本外观值的描述示例
一行文本 字符向量或 1×1 字符串数组。

str = 'My Text'
str = "My Text"

多行文本字符向量元胞数组或字符串数组。

str = {'First line','Second line'};
str = ["First line", "Second line"];

包含数值变量的文本包含已转换为 char 数组的数值的数组。使用 num2str 转换值。

x = 42;
str = ['The value is ',num2str(x)];

包含特殊字符(例如希腊字母或数学符号)的文本包含 TeX 标记的数组。有关支持的标记的列表,请参阅 Interpreter 属性。

str = 'x ranges from 0 to 2\pi'

注意

  • defaultfactoryremove 是保留字,当作为标准字符引用时不显示在文本中。要在文本中单独显示这些单词中的任意单词,需在该单词之前放置反斜杠,例如 '\default''\remove'

  • 如果将此属性指定为分类数组,MATLAB® 将使用数组中的值,而不是类别。

  • 如果您指定仅包含数值的文本,此数值将会使用 sprintf('%g',value) 转换。例如,12345678 显示为 1.23457e+07

文本颜色,指定为 RGB 三元组、十六进制颜色代码、颜色名称或短名称。默认值 [0 0 0] 对应于黑色。

对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。

  • RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于 [0,1] 范围内,例如 [0.4 0.6 0.7]

  • 十六进制颜色代码是字符串标量或字符向量,以井号 (#) 开头,后跟三个或六个十六进制数字,范围可以是 0F。这些值不区分大小写。因此,颜色代码 "#FF8800""#ff8800""#F80""#f80" 是等效的。

此外,还可以按名称指定一些常见的颜色。下表列出了一些命名颜色选项、其等效 RGB 三元组及十六进制颜色代码。

颜色名称短名称RGB 三元组十六进制颜色代码外观
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"不适用不适用不适用无颜色

下表列出了浅色和深色主题中绘图的默认调色板。

调色板调色板颜色

"gem" - 浅色主题默认值

在 R2025a 之前的版本中: 大多数绘图默认使用这些颜色。

Sample of the "gem" color palette

"glow" - 深色主题默认值

Sample of the "glow" color palette

您可以使用 orderedcolorsrgb2hex 函数获取这些调色板的 RGB 三元组和十六进制颜色代码。例如,获取 "gem" 调色板的 RGB 三元组并将其转换为十六进制颜色代码。

RGB = orderedcolors("gem");
H = rgb2hex(RGB);

在 R2023b 之前的版本中: 使用 RGB = get(groot,"FactoryAxesColorOrder") 获取 RGB 三元组。

在 R2024a 之前的版本中: 使用 H = compose("#%02X%02X%02X",round(RGB*255)) 获取十六进制颜色代码。

示例: 'blue'

示例: [0 0 1]

示例: '#0000FF'

文本解释器,指定为下列值之一:

  • 'tex' - 使用 TeX 标记子集解释字符。

  • 'latex' - 使用 LaTeX 标记解释字符。

  • 'none' - 显示字面字符。

TeX 标记

默认情况下,MATLAB 支持一部分 TeX 标记。使用 TeX 标记可添加下标和上标,修改字体类型和颜色,并在文本中包括特殊字符。

修饰符会一直作用到文本结尾,但上标和下标除外,因为它们仅修饰下一个字符或花括号中的字符。当您将解释器设置为 "tex" 时,支持的修饰符如下所示。

修饰符描述示例
^{ }上标"text^{superscript}"
_{ }下标"text_{subscript}"
\bf粗体"\bf text"
\it斜体"\it text"
\sl伪斜体(通常与斜体相同)"\sl text"
\rm常规字体"\rm text"
\fontname{specifier}字体名称 - 将 specifier 替换为字体系列的名称。您可以将此说明符与其他修饰符结合使用。"\fontname{Courier} text"
\fontsize{specifier}字体大小 - 将 specifier 替换为以磅为单位的数值标量值。"\fontsize{15} text"
\color{specifier}字体颜色 - 将 specifier 替换为以下颜色之一:redgreenyellowmagentablueblackwhitegraydarkGreenorangelightBlue"\color{magenta} text"
\color[rgb]{specifier}自定义字体颜色 - 将 specifier 替换为三元素 RGB 三元组。"\color[rgb]{0,0.5,0.5} text"

下表列出了 "tex" 解释器所支持的特殊字符。

字符序列符号字符序列符号字符序列符号

\alpha

α

\upsilon

υ

\sim

~

\angle

\phi

ϕ

\leq

\ast

*

\chi

χ

\infty

\beta

β

\psi

ψ

\clubsuit

\gamma

γ

\omega

ω

\diamondsuit

\delta

δ

\Gamma

Γ

\heartsuit

\epsilon

ϵ

\Delta

Δ

\spadesuit

\zeta

ζ

\Theta

Θ

\leftrightarrow

\eta

η

\Lambda

Λ

\leftarrow

\theta

θ

\Xi

Ξ

\Leftarrow

\vartheta

ϑ

\Pi

Π

\uparrow

\iota

ι

\Sigma

Σ

\rightarrow

\kappa

κ

\Upsilon

ϒ

\Rightarrow

\lambda

λ

\Phi

Φ

\downarrow

\mu

µ

\Psi

Ψ

\circ

º

\nu

ν

\Omega

Ω

\pm

±

\xi

ξ

\forall

\geq

\pi

π

\exists

\propto

\rho

ρ

\ni

\partial

\sigma

σ

\cong

\bullet

\varsigma

ς

\approx

\div

÷

\tau

τ

\Re

\neq

\equiv

\oplus

\aleph

\Im

\cup

\wp

\otimes

\subseteq

\oslash

\cap

\in

\supseteq

\supset

\lceil

\subset

\int

\cdot

·

\o

ο

\rfloor

\neg

¬

\nabla

\lfloor

\times

x

\ldots

...

\perp

\surd

\prime

´

\wedge

\varpi

ϖ

\0

\rceil

\rangle

\mid

|

\vee

\langle

\copyright

©

LaTeX 标记

要使用 LaTeX 标记,请将解释器设置为 "latex"。对于行内模式,用单美元符号 ($) 将标记括起来。对于显示模式,用双美元符号 ($$) 将标记括起来。

LaTeX 模式示例结果
行内

"$\int_1^{20} x^2 dx$"

Equation with LaTeX inline mode

显示

"$$\int_1^{20} x^2 dx$$"

Equation with LaTeX display mode

显示的文本将使用默认的 LaTeX 字体样式。FontNameFontWeightFontAngle 属性不起任何作用。要更改字体样式,请使用 LaTeX 标记。

用于 LaTeX 解释器的文本最多可以包含 1200 个字符。对于多行文本,请在此数量的基础上每行减少约 10 个字符。

MATLAB 支持大多数标准 LaTeX 数学模式命令。有关详细信息,请参阅支持的 LaTeX 命令。有关使用 TeX 和 LaTeX 的示例,请参阅图文本中的希腊字母和特殊字符

字体

全部展开

字体名称,指定为支持的字体名称或 "FixedWidth"。要正确显示和打印文本,您必须选择系统支持的字体。默认字体取决于您的操作系统和区域设置。

要使用在任何区域设置中都有较好显示效果的等宽字体,请使用 "FixedWidth"。等宽字体依赖于根 FixedWidthFontName 属性。设置根 FixedWidthFontName 属性会导致立即更新显示方式以使用新字体。

字体大小,指定为大于 0 的标量值(以磅为单位)。默认字体大小取决于具体操作系统和区域设置。一磅等于 1/72 英寸。要更改字体单位,请使用 FontUnits 属性。

示例: 12

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

字符粗细,指定为 'normal''bold'

MATLAB 使用 FontWeight 属性从系统提供的字体中选择一种字体。并非所有字体都有加粗字体。因此,指定加粗字体仍可能得到普通字体。

字符倾斜,指定为 'normal''italic'

并非所有字体都有两种字体样式。因此,斜体可能看上去和常规字体一样。

字体大小单位,指定为此表中的一个值。

Units描述
'points'磅。一磅等于 1/72 英寸。
'inches'英寸。
'centimeters'厘米。
'normalized' 将字体大小解释为父容器高度的几分之一,通常为数字。如果您调整容器的大小,字体大小也会相应地修改。例如,如果 FontSize0.1(归一化单位),则文本为容器高度的 1/10。
'pixels'

像素。

在 Windows®Macintosh 系统上,像素的大小为 1/96 英寸。此大小与系统分辨率无关。

在 Linux® 系统上,一个像素的大小由系统分辨率确定。

如果在一次函数调用中同时设置字体大小和字体单位,必须先设置 FontUnits 属性以使坐标区能正确解释指定的字体大小。

文本框

全部展开

使框宽和框高适合文本的选项,指定为 'on''off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。

  • 'on' - 重新调整文本框的大小以适合文本。

  • 'off' - 使文本换行以适合文本框的宽度。换行会导致某些文本延伸到文本框底部以外的位置。

如果您在绘图编辑模式下调整文本框的大小,或者更改 Position 属性,则 FitBoxToText 属性将更改为 'off'

框轮廓的颜色,指定为三元素 RGB 三元组、十六进制颜色代码、颜色名称或短名称。默认值 [0 0 0] 对应于黑色。

对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。

  • RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于 [0,1] 范围内,例如 [0.4 0.6 0.7]

  • 十六进制颜色代码是字符串标量或字符向量,以井号 (#) 开头,后跟三个或六个十六进制数字,范围可以是 0F。这些值不区分大小写。因此,颜色代码 "#FF8800""#ff8800""#F80""#f80" 是等效的。

此外,还可以按名称指定一些常见的颜色。下表列出了一些命名颜色选项、其等效 RGB 三元组及十六进制颜色代码。

颜色名称短名称RGB 三元组十六进制颜色代码外观
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"不适用不适用不适用无颜色

下表列出了浅色和深色主题中绘图的默认调色板。

调色板调色板颜色

"gem" - 浅色主题默认值

在 R2025a 之前的版本中: 大多数绘图默认使用这些颜色。

Sample of the "gem" color palette

"glow" - 深色主题默认值

Sample of the "glow" color palette

您可以使用 orderedcolorsrgb2hex 函数获取这些调色板的 RGB 三元组和十六进制颜色代码。例如,获取 "gem" 调色板的 RGB 三元组并将其转换为十六进制颜色代码。

RGB = orderedcolors("gem");
H = rgb2hex(RGB);

在 R2023b 之前的版本中: 使用 RGB = get(groot,"FactoryAxesColorOrder") 获取 RGB 三元组。

在 R2024a 之前的版本中: 使用 H = compose("#%02X%02X%02X",round(RGB*255)) 获取十六进制颜色代码。

示例: "blue"

示例: [0 0 1]

示例: "#0000FF"

文本框背景色,指定为 RGB 三元组、十六进制颜色代码、颜色名称或短名称。

对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。

  • RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于 [0,1] 范围内,例如 [0.4 0.6 0.7]

  • 十六进制颜色代码是字符串标量或字符向量,以井号 (#) 开头,后跟三个或六个十六进制数字,范围可以是 0F。这些值不区分大小写。因此,颜色代码 "#FF8800""#ff8800""#F80""#f80" 是等效的。

此外,还可以按名称指定一些常见的颜色。下表列出了一些命名颜色选项、其等效 RGB 三元组及十六进制颜色代码。

颜色名称短名称RGB 三元组十六进制颜色代码外观
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"不适用不适用不适用无颜色

下表列出了浅色和深色主题中绘图的默认调色板。

调色板调色板颜色

"gem" - 浅色主题默认值

在 R2025a 之前的版本中: 大多数绘图默认使用这些颜色。

Sample of the "gem" color palette

"glow" - 深色主题默认值

Sample of the "glow" color palette

您可以使用 orderedcolorsrgb2hex 函数获取这些调色板的 RGB 三元组和十六进制颜色代码。例如,获取 "gem" 调色板的 RGB 三元组并将其转换为十六进制颜色代码。

RGB = orderedcolors("gem");
H = rgb2hex(RGB);

在 R2023b 之前的版本中: 使用 RGB = get(groot,"FactoryAxesColorOrder") 获取 RGB 三元组。

在 R2024a 之前的版本中: 使用 H = compose("#%02X%02X%02X",round(RGB*255)) 获取十六进制颜色代码。

示例: "blue"

示例: [0 0 1]

示例: "#0000FF"

背景色的透明度,指定为介于 0 和 1 之间的一个标量值。如果值为 1,则颜色是不透明的。要增加透明度,请将该属性设置为接近 0 的值,其中 0 表示完全透明。

框轮廓的线型,指定为下表中列出的选项之一。

线型描述表示的线条
"-"实线

Sample of solid line

"--"虚线

Sample of dashed line

":"点线

Sample of dotted line

"-."点划线

Sample of dash-dotted line, with alternating dashes and dots

"none"无线条无线条

框轮廓的宽度,指定为数值标量(以磅为单位)。一磅等于 1/72 英寸。

示例: 1.5

文本框中文本周围的空间,指定为以像素为单位的数值标量。

位置

全部展开

尺寸和位置,指定为 [x_begin y_begin length height] 形式的四元素向量。前两个元素指定文本框的左下角坐标。后两个元素指定文本框的长度和高度。

默认情况下,使用归一化的图窗单位。图窗的左下角映射到 (0,0),右上角映射到 (1,1)。要更改单位,请使用 Units 属性。

注意

如果 FitBoxToText 属性设置为 "on",而您又更改了 String 属性,则 Position 属性可能要等到下次屏幕刷新时才会反映最新的更改。为确保位置值反映最新更改,请在使用脚本或函数时调用 drawnow,然后再查询位置。

示例: [0.2 0.3 0.4 0.5]

以度为单位的旋转角度,指定为数值标量。旋转角度是绝对角度,并非相对于以前的旋转的相对角度。

下表显示使用可能的 Rotation 值所生成的注解旋转。

旋转值生成的旋转
0未旋转
正标量值逆时针旋转指定的度数
负标量值顺时针旋转指定的度数

旋转的锚点是由 Position 属性向量的前两个元素指定的位置,由 [x y] 值指示。

示例: 45

位置单位,指定为此表中的一个值。

Units描述
"normalized"(默认值)针对包含注解的图窗、uipanel 或 uitab 进行归一化。容器的左下角映射到 (0,0),右上角映射到 (1,1)
"inches"英寸。
"centimeters"厘米。
"characters"

基于默认系统字体的字符大小。

  • 字符宽度 = 字母 x 的宽度。

  • 字符高度 = 两个文本行的基线之间的距离。

"points"磅。一磅等于 1/72 英寸。
"pixels"

像素。

在 Windows 和 Macintosh 系统上,像素的大小为 1/96 英寸。此大小与系统分辨率无关。

在 Linux 系统上,一个像素的大小由系统分辨率确定。

所有单位都是从图窗窗口左下角进行测量的。

此属性会影响 Position 属性。如果您更改单位,则比较好的做法是在完成计算后将其恢复为默认值,以便不影响其他假定 Units 设置为默认值的函数。

如果您在创建对象时使用名称-值参量指定 PositionUnits 属性,则指定顺序很重要。如果想用特定单位定义位置,则必须在设置 Position 属性之前先设置 Units 属性。

文本框中文本的水平对齐方式,指定为此表中的一个值。

结果
"left"

Sample of left-aligned text

"center"

Sample of horizontally centered text

"right"

Sample of right-aligned text

文本框中文本的垂直对齐方式,指定为此表中的一个值。

结果
'top'

Sample of top-aligned text

'middle'

Sample of vertically centered text

'bottom'

Sample of bottom-aligned text

注意

不推荐使用 'cap''baseline' 值。请分别改用 'top''bottom' 值。

版本历史记录

在 R2006a 之前推出

全部展开