Android: Рендеринг представлений (текста и изображения) в приложении для создания богатых баннеров? - PullRequest
0 голосов
/ 11 октября 2019

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

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

Думайте о нем как о слайдах в Power Point, где пользователь может добавить свой собственный текст и отформатировать его, а также иметь фоны. Там должно быть много настроек

Мне нужно решить, какие инструменты использовать для разработки этого. Основная проблема заключается в том, как визуализировать тексты динамически. Вот варианты, о которых я думал:

  1. Использование TextViews / EditTexts и других классов представления верхнего уровня
  2. Использование пользовательских представлений, например Canvas
  3. Использование более продвинутых и более низкихмногоуровневый подход, такой как библиотека ImageProcessing для рендеринга текста или даже чего-то похожего на рендеринг трехмерной графики.

Мне нужно сделать выбор, который не является несовместимым для поддержки будущих эффектов, которые могут потребоваться,Я уверен, что TextViews / EditTexts и т. Д. Не будут решением здесь. Я не уверен, насколько мощен класс Canvas и возможно ли создать такое приложение, просто используя CustomViews.

Переходя к ImageProcessing или 3D-графике, его можно использовать для гораздо большего контроля над эффектами. с помощью PixelShading / Transformations и т. д., но это имеет свои недостатки. т.е. низкий уровень абстракции и, возможно, более высокое время разработки.

Могут ли некоторые более опытные люди дать некоторые идеи? Спасибо!

1 Ответ

0 голосов
/ 11 октября 2019

Используйте Обработка изображений и для разных тем используйте lotte-Animations.

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