Nigma
Nigma
2 мин. читать
555 показов
237 открытий

Figsight #6: Метод тени

Как можно объединить преимущества разных способов ресайза текста — Fill и Hug — и использовать их одновременно? Как правильно поставить иконку рядом с текстом, не ломая макет? Давайте разберёмся вместе.

Фигмодробительный трюк

Пользователям Figma давно не хватает возможности располагать элемент сразу за последней буквой многострочного текста. Стандартные методы тут не помогут, ведь текстовый компонент имеет прямоугольный блок (баундинг-бокс). Комьюнити Figma нашло выход: векторный Intersect прямоугольника, совпадающего с размером строки текста, и самого текста позволяет получить нужный размер.

Пример реализации от Юрия показывает, сколько усилий Figma прилагает для обработки такого поведения 😁. Мы же попробуем сделать что-то попроще, но не менее полезное.

С чего начнём?

Легче всего описать задачу через визуальные примеры:

Здесь видно, что текст ведёт себя как Hug в первом примере и как Fill во втором. Задача не из простых, но, конечно, мы её решим.

Создаём слои: текстовой, иконку, и объединяем их в автолэйаут (АЛ).
Применяем метод из Figsight #1: добавляем пустой фрейм-филлер и меняем выравнивание родительского контейнера.

Второй кейс не сработал… Нужно что-то придумать.

Попробуем сделать дополнительный АЛ с абсолютным позиционированием, содержащим дубликат текстового слоя в режиме Fill, а в исходном слое уберём заливку. Конечно, для этого понадобится компонент.

Другое дело! Мы можем безболезненно назначить функцию Spacer-а Icon Wrapper-у. Gap от иконки до текста можно задать прямо в Content Wrapper-е, а компенсацию расстояния от иконки до правого края можно сделать в Caption Shadow Wrapper добавлением правого паддинга.

Поздравляю! Ещё одна нерешаемая задача оказалась не такой уж сложной. Надеюсь, этот метод поможет вам в исследованиях и проектах.


555

Подпишитесь на еженедельный дайджест с лучшими материалами

Каждый понедельник редакция отбирает и отправляет по почте самые интересные и полезные материалы за неделю.

Cпасибо за подписку!

Теперь каждый понедельник вам будет приходить на почту дайджест. Никакого спама, обещаем!

Читать ещё

Лучшее

Похожее

только для зарегистрированных
только для зарегистрированных
Подтвердите действие
Точно?
Сообщение
Текст
Ошибка загрузки файла
Рекомендуем {optim_res}px или больше. Вес файла не более 5МБ. Вы можете загрузить изображение в формате JPG, JPEG, HEIC, PNG или GIF.
Подтвердите действие