Комментарии 13
Картинки у вас в статье хорошие. Как раз к месту.
Только из за них и читал. Но, к чести сказать, осилил.
Только из за них и читал. Но, к чести сказать, осилил.
+4
НЛО прилетело и опубликовало эту надпись здесь
Очень хотелось бы сравнить производительность и плавность анимациии между Flash и HTML5.
0
Конечно, имею в виду именно результаты вашей работы. Их можно увидеть? спасибо
0
Сравнить-то можно, даже без нашего изделия (встроенного в древнючего корпоративного монстра, посему линк дать не на что, это ж веб-сервис, а логина к целевой системе у меня и самого нет), примеров рисования на канвасе море разливанное. Разницы-то нет — квадратик там или SVG картинка. Вот собственно пример, который заказчика вдохновлял.
На десктопе отлично рисует, да.
Если интересны результаты — то тут картинка своеобразная.
Флэш — вне конкуренции, ест памяти в разы меньше, терпимо рисует даже на симбиане с 200МГц процессором. Но у него есть серьезный недостаток — нет на устройствах фруктовой компании.
По рисованию SVG в канвасе с анимациями ситуация следующая.
1. На десктопе требуется FF 14+, Хром, или Safari 5.1.4+. Оперу не пробовали.
2. На андроиде 3.1+/4.0+ рисует родным браузером на ять. Но FF 14+ рисует на нем же еще лучше.
3. На симбиане — проще застрелиться. Банально не хватает ресурсов.
4. На айфонах и айпадах ситуация крайне неоднозначная.
У фруктовых
а. много картинок за раз не рисует — падает по нехватке памяти. На первом айпаде это особенно заметно.
б. банальное рисование без setTimeout() стопает напрочь жесты, вот радости с демки если на нее клик приползает не пойми когда.
в. setTimeout(foo, 1) приходит когда вздумается.
Вот простой тест
при z = 25 и отрисовке мегабайтной SVG-шки (с отшейпленными текстами и растром внутри) до пяти секунд требует на первом айпаде. На втором получше.
На десктопе отлично рисует, да.
Если интересны результаты — то тут картинка своеобразная.
Флэш — вне конкуренции, ест памяти в разы меньше, терпимо рисует даже на симбиане с 200МГц процессором. Но у него есть серьезный недостаток — нет на устройствах фруктовой компании.
По рисованию SVG в канвасе с анимациями ситуация следующая.
1. На десктопе требуется FF 14+, Хром, или Safari 5.1.4+. Оперу не пробовали.
2. На андроиде 3.1+/4.0+ рисует родным браузером на ять. Но FF 14+ рисует на нем же еще лучше.
3. На симбиане — проще застрелиться. Банально не хватает ресурсов.
4. На айфонах и айпадах ситуация крайне неоднозначная.
У фруктовых
а. много картинок за раз не рисует — падает по нехватке памяти. На первом айпаде это особенно заметно.
б. банальное рисование без setTimeout() стопает напрочь жесты, вот радости с демки если на нее клик приползает не пойми когда.
в. setTimeout(foo, 1) приходит когда вздумается.
Вот простой тест
var x = 0;
function y(){ ++x; /* paint on canvas */; if(x < z) setTimeout(y, 1); }
y()
при z = 25 и отрисовке мегабайтной SVG-шки (с отшейпленными текстами и растром внутри) до пяти секунд требует на первом айпаде. На втором получше.
0
работать должно обязательно в браузере? Просто для продуктов Apple можно сделать приложение на AIR(использовать код flash версии) и немного дописать взаимодействие с устройством. Уверен, работать будет лучше чем в браузерах на яблочных девайсах.
0
Бюджет-то не резиновый — давайте тогда и для андроидов свое нарисуем, сколько их там для тестов надо, 240 аппаратов? ;-)
Тут же возникают оргвопросы — а как это в аппстор засовывать, «клиент к не пойми чему с параноидальным шифрованием для показа рекламы сейлам лавки ХХХ»? Или собирать список устройств? И сколько нам понадобится версий под конкретные отделы? А апдейтить как? А что будет с отделом безопасности, когда на рабочие аппараты доступ к аппстору потребуется, собирать со всех работников железки для апгрейда? А если они на трех континентах, тогда что?
Что называется — «а давайте добавим на наш корпоративный сайт без доп-кап-вложений для наших сейлов актуальные интерактивные каталоги», да.
Может ну его, это приложение под айфон? ;-)
Тут же возникают оргвопросы — а как это в аппстор засовывать, «клиент к не пойми чему с параноидальным шифрованием для показа рекламы сейлам лавки ХХХ»? Или собирать список устройств? И сколько нам понадобится версий под конкретные отделы? А апдейтить как? А что будет с отделом безопасности, когда на рабочие аппараты доступ к аппстору потребуется, собирать со всех работников железки для апгрейда? А если они на трех континентах, тогда что?
Что называется — «а давайте добавим на наш корпоративный сайт без доп-кап-вложений для наших сейлов актуальные интерактивные каталоги», да.
Может ну его, это приложение под айфон? ;-)
0
Вообще под Андроид вы получите версию тоже, сейчас AIR прижения идут сразу на 4 платформы Win-Mac-Android-iOS, от вас нужно минимум. Собирать под разные устройства не нужно, за вас это делать AIR, нужно только поддерживать разные разрешния экрана, но это не сложно.
В плане, что будет из себя представлять приложение, по сути это будет что-то вроде плеера, все данные, как и в случае с браузером будут приходить с сервера.
Вообще, я только предложил, потому что знаю проблемы которые бывают с HTML5
В плане, что будет из себя представлять приложение, по сути это будет что-то вроде плеера, все данные, как и в случае с браузером будут приходить с сервера.
Вообще, я только предложил, потому что знаю проблемы которые бывают с HTML5
0
Оргвопросы — вот корень всех бед.
Так-то c виду все ясно — сейл со своей планшеткой ходит, тут же в ней на корпоративном сайте — клиенты, их покупки, скидки, предложения и т. д. Тут же он в один клик включает плеер, поворачивает клиенту планшет — вот глянь чего еще есть в комплект!!! И оно там анимирует слайды из каталога.
И клиент радостно расстается со своими кровными.
Заметь — не надо возить с собой тонны бумаги, не надо ничего готовить специально — задача то несложная. В электронном виде каталоги есть, разобрать их и нарезать в стопочку — дело от силы пары недель, плеер там вообще примитивный по сути — скачивает список слайдов, крутит, у каждого слайда есть длинное описание и линки на сайт, по клику все это показывается. Ну, зуминг еще и паранойя.
А вот дальше — дальше песня, дальше отделы, подотделы, разделение труда, специализации, права доступа, премии сейлам, клиенты персонально опекаемые и потенциальные, и т.д. и т.п. Как всегда — нюансы.
И уперевшись в айпад — решили что ну его нафиг, кто будет все это потом поддерживать? А как распространять? И есть ли смысл ради второстепенной но понтовой фишки тратить в разы больше? Давайте остановимся на браузере.
Случай — типичный, многим сейчас надо в струю попасть — чтобы что-то было и на мобильных устройствах. Но при этом выделять под них отдельный бюджет как под новый авиалайнер — готоых еще поискать надо.
Так-то c виду все ясно — сейл со своей планшеткой ходит, тут же в ней на корпоративном сайте — клиенты, их покупки, скидки, предложения и т. д. Тут же он в один клик включает плеер, поворачивает клиенту планшет — вот глянь чего еще есть в комплект!!! И оно там анимирует слайды из каталога.
И клиент радостно расстается со своими кровными.
Заметь — не надо возить с собой тонны бумаги, не надо ничего готовить специально — задача то несложная. В электронном виде каталоги есть, разобрать их и нарезать в стопочку — дело от силы пары недель, плеер там вообще примитивный по сути — скачивает список слайдов, крутит, у каждого слайда есть длинное описание и линки на сайт, по клику все это показывается. Ну, зуминг еще и паранойя.
А вот дальше — дальше песня, дальше отделы, подотделы, разделение труда, специализации, права доступа, премии сейлам, клиенты персонально опекаемые и потенциальные, и т.д. и т.п. Как всегда — нюансы.
И уперевшись в айпад — решили что ну его нафиг, кто будет все это потом поддерживать? А как распространять? И есть ли смысл ради второстепенной но понтовой фишки тратить в разы больше? Давайте остановимся на браузере.
Случай — типичный, многим сейчас надо в струю попасть — чтобы что-то было и на мобильных устройствах. Но при этом выделять под них отдельный бюджет как под новый авиалайнер — готоых еще поискать надо.
0
То, что ImageMagick будет зверски тормозить, можно было бы, в общем, догадаться заранее: PDF оно растеризует, вызывая GhostScript, и это медленно само по себе. В принципе, можно использовать сам GS прямо. И не забывать, что в этом случае лучший путь уменьшить возню — это растеризовать сразу с маленьким разрешением (в духе 50dpi).
0
Дурная мощь под капотом в амазоне как-то предполагает, что экономить надо на труде программиста ;-)
Одна портянка конвертится час? Возьмем двадцать пять серверов на амазоне и запустим одновременно, опа! уже получаем не час, а 3 минуты на каждую.
Другое дело когда вдруг понадобилось 20 000 переконвертить, вот тут задумаешься — это ж больше месяца получается даже на феерической мощи 25 серверов. А удвоение счета дает аж 15 суток работы ghostscript.
И тут ускорение в шесть раз реально спасает ситуацию. Дает всего 5 дней пожирания электричества вместо 30ти. Фактически, кратковременно удвоив мощь молотилки, справились за выходные.
Одна портянка конвертится час? Возьмем двадцать пять серверов на амазоне и запустим одновременно, опа! уже получаем не час, а 3 минуты на каждую.
Другое дело когда вдруг понадобилось 20 000 переконвертить, вот тут задумаешься — это ж больше месяца получается даже на феерической мощи 25 серверов. А удвоение счета дает аж 15 суток работы ghostscript.
И тут ускорение в шесть раз реально спасает ситуацию. Дает всего 5 дней пожирания электричества вместо 30ти. Фактически, кратковременно удвоив мощь молотилки, справились за выходные.
0
Молодец, классно реализовал на java! Когда-то сталкивался с выкорчевыванием изображений из PDF и генерацией PDF в других апликухах, остался неприятный осадок от open source библиотек на java, все приходилось допиливать напильником.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
О том как я на Java из PDF флэш получал