reckfellENGINE

StyleBoxTexture

Текстурный nine-patch стиль с независимыми полями и расширением рисунка.

На этой странице
class StyleBoxTextureReckfellSharpНаследует StyleBox

Назначьте Texture, RegionRect при использовании участка изображения и четыре TextureMargin для нарезки на девять областей. Углы сохраняют локальные размеры; края/середина растягиваются или повторяются по AxisStretchHorizontal/Vertical. RegionRect измеряется в исходных пикселях; нулевой Rect2 использует всю текстуру. Проверяйте, что неотрицательные суммы краёв помещаются в исходной области.

TextureMargin задаёт нарезку. ContentMargin определяет отступ содержимого: при отрицательном значении берёт соответствующий TextureMargin, явное число переопределяет его. Например, текстурный край 4 и ContentMarginLeft = 10 сохраняют нарезку 4, но дают отступ слева 10. Минимум определяется рассчитанными полями, даже если Texture = null; исходный размер всей текстуры не является минимумом стиля.

ExpandMargin расширяет только рисунок за переданный rect. Он не увеличивает ContentMargin, минимум или область клика. DrawCenter = false убирает середину рисунка, не меняя отступы. ModulateColor умножает цвет/альфу изображения, не редактируя исходные пиксели.

Changed испускается при замене Texture, но внутренний Changed назначенной текстуры не передаётся через StyleBoxTexture. Если изменение размеров/области динамического ресурса требует обновить потребителей, уведомите стиль явно через EmitChanged. Обычная Duplicate отделяет поля стиля, сохраняя общую Texture.

Для растягивания с сохранением узора выберите Tile или TileFit; последний подгоняет целое число повторений. Результат фильтрации и атласа проверяйте на целевом рендерере.

StyleBox.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Конструкторы1

StyleBoxTextureКонструктор
# StyleBoxTexture
C#
public StyleBoxTexture();

Создаёт стиль без Texture: поля нарезки/расширения 0, DrawCenter = true, ModulateColor белый, оба режима осей Stretch. ContentMargin наследует -1 для автоматических полей.

Свойства14

AxisStretchHorizontalСвойство
# AxisStretchHorizontal
C#
public StyleBoxTexture.AxisStretchMode AxisStretchHorizontal { get; set; }

Stretch, Tile или TileFit по горизонтали, Stretch по умолчанию. TileFit подгоняет целое число повторений. Не изменяет ContentMargin.

AxisStretchVerticalСвойство
# AxisStretchVertical
C#
public StyleBoxTexture.AxisStretchMode AxisStretchVertical { get; set; }

Независимый вертикальный Stretch/Tile/TileFit, Stretch по умолчанию. Не меняет минимум и числовые поля нарезки.

DrawCenterСвойство
# DrawCenter
C#
public bool DrawCenter { get; set; }

Рисовать середину nine-patch, true по умолчанию. false сохраняет поля и минимум; не делает сам Control контейнером или прозрачной маской ввода.

ExpandMarginBottomСвойство
# ExpandMarginBottom
C#
public float ExpandMarginBottom { get; set; }

Декоративное расширение рисунка Bottom, 0 по умолчанию. Не меняет минимум и отступ содержимого.

ExpandMarginLeftСвойство
# ExpandMarginLeft
C#
public float ExpandMarginLeft { get; set; }

Декоративное расширение рисунка Left, 0 по умолчанию. Не меняет минимум и отступ содержимого.

ExpandMarginRightСвойство
# ExpandMarginRight
C#
public float ExpandMarginRight { get; set; }

Декоративное расширение рисунка Right, 0 по умолчанию. Не меняет минимум и отступ содержимого.

ExpandMarginTopСвойство
# ExpandMarginTop
C#
public float ExpandMarginTop { get; set; }

Декоративное расширение рисунка Top, 0 по умолчанию. Не меняет минимум и отступ содержимого.

ModulateColorСвойство
# ModulateColor
C#
public Color ModulateColor { get; set; }

Множитель цвета/альфы рисунка, белый по умолчанию. Не редактирует Texture и не меняет поля содержимого.

RegionRectСвойство
# RegionRect
C#
public Rect2 RegionRect { get; set; }

Исходная область в пикселях, не UV; нулевой Rect2 означает всю текстуру. Не изменяет ContentMargin/TextureMargin автоматически.

TextureСвойство
# Texture
C#
public Texture2D Texture { get; set; }

Общая Texture2D либо null. Замена ссылки вызывает Changed; внутренний Changed ресурса не передаётся стилем автоматически. Минимум зависит от полей, не размера всей Texture.

TextureMarginBottomСвойство
# TextureMarginBottom
C#
public float TextureMarginBottom { get; set; }

Толщина края Bottom нарезки в исходных пикселях, 0 по умолчанию. Также используется как автоматическое поле содержимого, но явный ContentMargin имеет приоритет.

TextureMarginLeftСвойство
# TextureMarginLeft
C#
public float TextureMarginLeft { get; set; }

Толщина края Left нарезки в исходных пикселях, 0 по умолчанию. Также используется как автоматическое поле содержимого, но явный ContentMargin имеет приоритет.

TextureMarginRightСвойство
# TextureMarginRight
C#
public float TextureMarginRight { get; set; }

Толщина края Right нарезки в исходных пикселях, 0 по умолчанию. Также используется как автоматическое поле содержимого, но явный ContentMargin имеет приоритет.

TextureMarginTopСвойство
# TextureMarginTop
C#
public float TextureMarginTop { get; set; }

Толщина края Top нарезки в исходных пикселях, 0 по умолчанию. Также используется как автоматическое поле содержимого, но явный ContentMargin имеет приоритет.

Методы18

GetExpandMarginfloat
# GetExpandMargin
C#
public float GetExpandMargin(Side margin);

Возвращает декоративное расширение рисунка со стороны. Это не рассчитанный отступ содержимого.

Параметры
ИмяТипПо умолчанию
marginSide—
margin

Сторона Side.Left, Top, Right или Bottom.

Возвращает float

Расширение рисунка стороны в пикселях.

GetHAxisStretchModeStyleBoxTexture.AxisStretchMode
# GetHAxisStretchMode
C#
public StyleBoxTexture.AxisStretchMode GetHAxisStretchMode();

Stretch, Tile или TileFit по горизонтали, Stretch по умолчанию. TileFit подгоняет целое число повторений. Не изменяет ContentMargin.

Возвращает StyleBoxTexture.AxisStretchMode

Выбранный горизонтальный AxisStretchMode.

GetModulateColor
# GetModulate
C#
public Color GetModulate();

Множитель цвета/альфы рисунка, белый по умолчанию. Не редактирует Texture и не меняет поля содержимого.

Возвращает Color

Множитель цвета и альфы рисунка.

GetRegionRectRect2
# GetRegionRect
C#
public Rect2 GetRegionRect();

Исходная область в пикселях, не UV; нулевой Rect2 означает всю текстуру. Не изменяет ContentMargin/TextureMargin автоматически.

Возвращает Rect2

Сохранённый Rect2 исходной области в пикселях.

GetTextureTexture2D
# GetTexture
C#
public Texture2D GetTexture();

Общая Texture2D либо null. Замена ссылки вызывает Changed; внутренний Changed ресурса не передаётся стилем автоматически. Минимум зависит от полей, не размера всей Texture.

Возвращает Texture2D

Общая Texture2D либо null.

GetTextureMarginfloat
# GetTextureMargin
C#
public float GetTextureMargin(Side margin);

Возвращает толщину края нарезки в пикселях. Используется как автоматическое поле содержимого, если соответствующий ContentMargin отрицателен.

Параметры
ИмяТипПо умолчанию
marginSide—
margin

Сторона Side.Left, Top, Right или Bottom.

Возвращает float

Толщина края нарезки в пикселях.

GetVAxisStretchModeStyleBoxTexture.AxisStretchMode
# GetVAxisStretchMode
C#
public StyleBoxTexture.AxisStretchMode GetVAxisStretchMode();

Независимый вертикальный Stretch/Tile/TileFit, Stretch по умолчанию. Не меняет минимум и числовые поля нарезки.

Возвращает StyleBoxTexture.AxisStretchMode

Выбранный вертикальный AxisStretchMode.

IsDrawCenterEnabledbool
# IsDrawCenterEnabled
C#
public bool IsDrawCenterEnabled();

Рисовать середину nine-patch, true по умолчанию. false сохраняет поля и минимум; не делает сам Control контейнером или прозрачной маской ввода.

Возвращает bool

true, если рисуется середина.

SetDrawCentervoid
# SetDrawCenter
C#
public void SetDrawCenter(bool enable);

Рисовать середину nine-patch, true по умолчанию. false сохраняет поля и минимум; не делает сам Control контейнером или прозрачной маской ввода.

Параметры
ИмяТипПо умолчанию
enablebool—
enable

Рисовать середину nine-patch, true по умолчанию. false сохраняет поля и минимум; не делает сам Control контейнером или прозрачной маской ввода.

SetExpandMarginvoid
# SetExpandMargin
C#
public void SetExpandMargin(Side margin, float size);

Задаёт декоративный выход рисунка за rect и испускает Changed. Не увеличивает ContentMargin, минимум или область попадания Control.

Параметры
ИмяТипПо умолчанию
marginSide—
sizefloat—
margin

Сторона Side.Left, Top, Right или Bottom.

size

Задаёт декоративный выход рисунка за rect и испускает Changed. Не увеличивает ContentMargin, минимум или область попадания Control.

SetExpandMarginAllvoid
# SetExpandMarginAll
C#
public void SetExpandMarginAll(float size);

Задаёт одинаковое расширение рисунка всем сторонам и испускает Changed один раз. Раскладка не резервирует эту область.

Параметры
ИмяТипПо умолчанию
sizefloat—
size

Задаёт одинаковое расширение рисунка всем сторонам и испускает Changed один раз. Раскладка не резервирует эту область.

SetHAxisStretchModevoid
# SetHAxisStretchMode
C#
public void SetHAxisStretchMode(StyleBoxTexture.AxisStretchMode mode);

Stretch, Tile или TileFit по горизонтали, Stretch по умолчанию. TileFit подгоняет целое число повторений. Не изменяет ContentMargin.

Параметры
ИмяТипПо умолчанию
modeStyleBoxTexture.AxisStretchMode—
mode

Stretch, Tile или TileFit по горизонтали, Stretch по умолчанию. TileFit подгоняет целое число повторений. Не изменяет ContentMargin.

SetModulatevoid
# SetModulate
C#
public void SetModulate(Color color);

Множитель цвета/альфы рисунка, белый по умолчанию. Не редактирует Texture и не меняет поля содержимого.

Параметры
ИмяТипПо умолчанию
colorColor—
color

Множитель цвета/альфы рисунка, белый по умолчанию. Не редактирует Texture и не меняет поля содержимого.

SetRegionRectvoid
# SetRegionRect
C#
public void SetRegionRect(Rect2 region);

Исходная область в пикселях, не UV; нулевой Rect2 означает всю текстуру. Не изменяет ContentMargin/TextureMargin автоматически.

Параметры
ИмяТипПо умолчанию
regionRect2—
region

Исходная область в пикселях, не UV; нулевой Rect2 означает всю текстуру. Не изменяет ContentMargin/TextureMargin автоматически.

SetTexturevoid
# SetTexture
C#
public void SetTexture(Texture2D texture);

Общая Texture2D либо null. Замена ссылки вызывает Changed; внутренний Changed ресурса не передаётся стилем автоматически. Минимум зависит от полей, не размера всей Texture.

Параметры
ИмяТипПо умолчанию
textureTexture2D—
texture

Общая Texture2D либо null. Замена ссылки вызывает Changed; внутренний Changed ресурса не передаётся стилем автоматически. Минимум зависит от полей, не размера всей Texture.

SetTextureMarginvoid
# SetTextureMargin
C#
public void SetTextureMargin(Side margin, float size);

Задаёт толщину края нарезки и испускает Changed. Используйте неотрицательные значения с допустимой суммой противоположных краёв в исходной области. Может изменить автоматический минимум.

Параметры
ИмяТипПо умолчанию
marginSide—
sizefloat—
margin

Сторона Side.Left, Top, Right или Bottom.

size

Задаёт толщину края нарезки и испускает Changed. Используйте неотрицательные значения с допустимой суммой противоположных краёв в исходной области. Может изменить автоматический минимум.

SetTextureMarginAllvoid
# SetTextureMarginAll
C#
public void SetTextureMarginAll(float size);

Задаёт одинаковый край нарезки со всех сторон, испускает Changed один раз. Явные ContentMargin не переписываются.

Параметры
ИмяТипПо умолчанию
sizefloat—
size

Задаёт одинаковый край нарезки со всех сторон, испускает Changed один раз. Явные ContentMargin не переписываются.

SetVAxisStretchModevoid
# SetVAxisStretchMode
C#
public void SetVAxisStretchMode(StyleBoxTexture.AxisStretchMode mode);

Независимый вертикальный Stretch/Tile/TileFit, Stretch по умолчанию. Не меняет минимум и числовые поля нарезки.

Параметры
ИмяТипПо умолчанию
modeStyleBoxTexture.AxisStretchMode—
mode

Независимый вертикальный Stretch/Tile/TileFit, Stretch по умолчанию. Не меняет минимум и числовые поля нарезки.

StyleBoxTexture.AxisStretchMode

ЗначениеОписание
Stretch = 0

Растянуть текстуру stylebox. Это приведет к видимым искажениям, если только размер текстуры не будет идеально соответствовать размеру stylebox.

Tile = 1

Повторяет текстуру stylebox, чтобы она соответствовала размеру stylebox в соответствии с системой девяти частей.

TileFit = 2

Повторяет текстуру stylebox для соответствия размеру stylebox в соответствии с системой из девяти частей. В отличие от StyleBoxTexture.AxisStretchMode.Tile, текстура может быть слегка растянута, чтобы сделать текстуру из девяти частей бесшовной.

Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.