Слегка изогнутый / арочный текст в Flex - PullRequest
0 голосов
/ 20 июля 2010

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

Я изучил искривление / изгиб текста во Flex, но решения, которые я нашел, кажутся излишними для моих запросов.

Кто-нибудь знает, как я могу слегка изгибать текст во Flex без особых хлопот?

Это то, чего я хочу достичь http://i.imgur.com/wZIW8.png

Спасибо.

Ответы [ 4 ]

1 голос
/ 24 мая 2011

В http://code11.com/lab/experiments/flex/text-on-circle-flex-component/ есть простые гибкие компоненты, которые обеспечат вас средствами для этого.

1 голос
/ 21 июля 2010

Если это фиксированная одиночная дуга (т. Е. Ее можно рассчитать путем «сжимания» части полукруга), вы можете сделать это, но это займет несколько часов работы.Вот как я бы решил эту проблему:

  1. Измерьте текст с помощью UIText и используйте его, чтобы получить позицию x каждой буквы
  2. Используйте несколько простых триггеров для получения новогобазовая позиция и угол поворота каждой буквы
  3. Используйте еще несколько триггеров для преобразования каждой позиции и поворота, чтобы учесть, что игрок выполняет положение и поворот вокруг верхнего левого угла объектов DisplayObjects.
  4. Использовать UIText длякаждую букву, применяя указанные параметры положения и поворота.

Шаги 2 и 3 будут такими, которые вы могли бы создать в AS3, а затем перенести на PixelBender, если он был слишком медленным.

Или ... Сгенерируйте текст в виде изображений, в Photoshop, если он должен выглядеть лучше, или ImageMagick на сервере, если он должен быть динамичным.

1 голос
/ 21 июля 2010

2 способа выполнения этой задачи мне известны, оба они выполнимы, но оба требуют довольно большой работы:

a) Замените одно динамическое текстовое поле последовательностью динамических текстовых полей> по одному на каждого персонажа.А затем поверните каждый символ вокруг программной кривой.

http://blog.tsclausing.com/post/49

b) Используйте класс DisplacementMapFilter для манипулирования пикселями одного динамического текстового поля в нужную изогнутую форму.

0 голосов
/ 20 июля 2010

Может ли Деграфа быть решением? http://algorithmist.wordpress.com/2008/10/08/text-along-a-spline-iii/

Но я боюсь, что это тоже "перебор", но imho простого решения нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...