Что делает свойство CapInsets FireMonkey TBitmapLink для стиля FireMonkey?

При создании пользовательского стиля FireMonkey вы часто сталкиваетесь с объектами стиля, такими как TButtonStyleObject, которые включают одно или несколько свойств (таких как TButtonStyleObject.NormalLink), которые являются коллекциями TBitmapLinks. Каждый отдельный TBitmapLink определяет три свойства: CapInsets, Scale и SourceRect. SourceRect содержит координаты сегмента растрового изображения, которое будет использоваться для отрисовки некоторого аспекта элемента управления (более подробно см. Использование TBitmapLinks с FireMonkey Style Designer).

У меня вопрос, что делает CapInsets?

1 ответ

Решение

Я думаю, что это связано с тем, как нарисовать изменяемый размер компонента с использованием одного растрового изображения. CapInsets должен представлять растягиваемую часть растрового изображения, разделяющую, например, границы, чтобы они не становились слишком тонкими или слишком большими при изменении размера компонента.

Подумайте о кнопке и растровом изображении размером 25x50 пикселей, чтобы быть фоном. Думаю, это один цветной прямоугольник с маленькой рамкой. Что если вы измените размер кнопки на 25x500 пикселей? Левая и правая границы станут слишком большими (и больше не будут пропорциональны верхней и нижней границе).

Никакой документации, кроме этой статьи на русском языке, я не нашел (перевод на итальянский очень плохой, английский мне тоже не очень понятен), поищите раздел "Фон" http://habrahabr.ru/post/137851/

НТН

Другие вопросы по тегам