2012-09-19 1 views
0

Скажем, у меня есть программа для смешивания изображений, написанная на Python. Я хочу показать процесс смешивания изображений в режиме реального времени в интерфейсе, когда пользователь настраивает параметры (скажем, несколько полос прокрутки), для чего может потребоваться Javascript.Python при поддержке JS при интеграции с внешним интерфейсом

Я предполагаю, что один из способов сделать это - использовать библиотеки, упомянутые в этом similar question: сначала напишите класс Python, способный выполнять бэкэнд-работу, скомпилировать его в JS-код и вызвать его из интерфейса. Любые лучшие способы?

Задача манипулирования изображениями может быть более тяжелой в будущем, поэтому я пишу на Python, а не непосредственно в JS.

+1

Я бы порекомендовал делать такую ​​сторону клиента, а не на стороне сервера, иначе у вас могут возникнуть проблемы при одновременном подключении нескольких пользователей. –

+0

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

+1

js будет отлично работать со многими инструментами jquery ... чем дороже операция, тем лучше выбор для использования на стороне клиента, поскольку вам нужно думать о 100 пользователях, одновременно поражающих сервер с помощью дорогого кода ... Я бы на самом деле рекомендуем html5 canvas или flash для такого рода вещей –

ответ

1

В зависимости от операций, которые вы собираетесь реализовать, возможно, вы можете написать параллельную реализацию ваших алгоритмов с использованием холста HTML5. Затем покажите, что в минимальном разрешении или каким-то образом настройте видоискатель (в основном обрезанная часть целого). Как только фактическая работа будет выполнена, покажите полный результат.

Возможно, вы также захотите использовать Node.js для чего-то подобного. По сути, это позволит вам использовать почти тот же код для обоих бэкэнд и интерфейсов, что уменьшает дублирование алгоритмов.

Вы также можете попытаться переосмыслить, как вы выполняете манипуляции. Aviary поощряет пользователей выполнять одну операцию за раз. Кроме того, они обеспечивают отмену (легко реализовать). Такая схема будет очень хорошо работать с Canvas.

Смежные вопросы