Xpoint
   [напомнить пароль]

SVG или Flash?

Метки: [без меток]
[удл]
2009-10-26 14:30:24 [обр] Костя[досье]
Здравствуйте, уважаемые.
Вопрос теоретический, отчасти идеологический.
На моём сайте имеется множество изображений, которые, как мне кажется, правильно было бы выполнить в виде векторной графики. Я сторонник открытых стандартов, хотел бы считать себя их энтузиастом. Но с другой стороны, "сражаться с мельницами", работать на заведомо провальный, в практическом отношении, результат, тоже не хочется.
По материалам, которые удалось просмотреть, складывается странная картина: статьи и книги начала века (и конца прошлого) сулят SVG головокружительный успех, скорейшее повсеместное распространение, полное вытеснение проприетарных стандартов (Flash). В реальности же (на сколько мне видится) ничего подобного не произошло. Сайтов, использующих SVG в практических (не академических) целях, практически не наблюдается. Эксплорер не имеет, и похоже не собирается заиметь встроенную поддержку SVG. Остальные браузеры имеют такую поддержку, но они пока ещё отстают от эксплорера по популярности. 58% посетителей моего сайта пользуются эксплорером. Если им придётся устанавливать плагин для просмотра сайта, уверен что они предпочтут перейти на один из других подобных сайтов, не требующих плагинов.
Хотел бы прочесть любые мнения/советы на эту тему.
Спасибо.
спустя 7 часов [обр] Давид Мзареулян(9/1003)[досье]
Это всё-таки зависит от самих изображений. Если какая-то генерируемая графика, то есть, например, http://raphaeljs.com/, который относительно успешно позволяет рисовать в SVG/VML, в зависимости от текущего браузера.
спустя 4 часа 46 минут [обр] AB...(0/233)[досье]
Ну и Flash для IE тоже устанавливать надо, как в прочем и для других броузеров. Я так думаю, что это не является вообщем проблемой. Если надо, то вы можете своим посетителям объяснить и дать ссылки для повышения знаний.
SVG в настоящий момент поддерживается всеми современными портативными устройствами включая iPhone и многими мобилными телефонами.
Для Linux и Mac уже достаточное количество прилодений позволяющие работать с SVG, а вот для MS Windows такого разнообразия не наблюдается пока.
Тем не мение, я считаю, что SVG лучший выбор.
спустя 2 часа 22 минуты [обр] Николай Комиссаров aka Survivor(0/81)[досье]

Ну с поддержкой SVG даже альтернативными браузерами не все так уж безоблачно. Тот же FF, например, трактует svg как документ, а не как картинку, соответственно конструкции типа

<img src="pic.svg" />

или

<svg:image xlink:href="pic.svg" />

работать не будут.
С ним же были проблемы с отображением текста (letter-spacing, например, он упорно не понимает). И у оперы тоже что-то было, уже не помню конкретно. Так что несмотря на все преимущества стоит оценить количество граблей, на которые придется наступить в разных браузерах, и только потом решить надо ли оно вам.

спустя 1 день 21 час [обр] Костя[досье]

Большое спасибо всем откликнувшимся. Если у кого будут ещё соображения по этому поводу, буду признателен. Может кто знает примеры работающих (не академических) сайтов, использующих SVG?

П.С. Речь идёт о статичных, не генерируемых и не анимированных изображениях.

спустя 24 дня [обр] AB...(0/233)[досье]

Уважаемый Николай Комиссаров aka Survivor[досье], а вы пробовали Flash в такой интерпритации как вы пробуете с SVG? Похоже это тоже просто не работает.
SVG это действительно XML документ и приложение преобразует в нормальный вид. Тоже самое происходит и с Flash и приложение мы называем Add-on.
Вот пожалуйста, работающие примеры включения SVG:

<embed src="test.svg" width="300" height="100"
type="image/svg+xml"
pluginspage="http://www.adobe.com/svg/viewer/install/" />

или

<object data="test.svg" width="300" height="100"
type="image/svg+xml"
codebase="http://www.adobe.com/svg/viewer/install/" />

или используйте iframe.
Удобства состоит в том, что вы фактически используете HTML в вашем коде для внедрения любого текста и чего вам хочется в ваш SVG документ. Нужны дополнительные динамические вещи как во Flash, используйете нормальный DOM и JavaScript.

спустя 1 день [обр] Амир(0/4)[досье]

теперь понятно почему на сайте Оупен клипарт, многие thumbnail не видны даже с Firefox.

Пример страницы код со страницы :
<img alt="thumbnail" style="height: 128px; width: 128px;" src="http://openclipart.org/people/sinvision/sinvision_rostro_mujer.svg" class="cc_image_thumbnail_img"/>
не показывает thumbnail изображение, я думал firefox не поддерживает :(((.

А оказалось неправильная вёрстка.
openclipart.org/media/files/sinvision/14797

спустя 39 минут [обр] Амир(0/4)[досье]

они у себя в FAQ даже программиста ищут, чтобы решить эту проблемму:

Why are there no thumbnail previews on the search page?

The Thumbnails gallery is not currently programmed into the website. We are working on an update that will have thumbnails, and we are really excited about the developments! If you are a programmer with experience in AJAX, PHP, or CSS, and some time that you would like to donate in helping programming the Next version of the OCAL website, then please get in contact with Michael Krnac < michaelkrnac (at) googlemail (dot)com > .

openclipart.org/wiki/FAQ#Why_are_there_no_thumbnail_previews_on_the_search_page.3F


написал админу ссылку на эту тему.

спустя 1 час 48 минут [обр] balou(0/23)[досье]
кроме Flash и SVG есть еще canvas
тоже интересная штука и в IE будет работать после некоторых усилий
здесь можно почитать о SVG и canvas http://people.mozilla.com/~vladimir/xtech2006/
спустя 1 день [обр] AB...(0/233)[досье]
Canvas тоже очень хороший подход, вот только в Internet Explorer будет проблема и далеко не все сданут делать сложные манипуляции, что бы заставить работать под IE. С SVG и Flash проще, автоматом предложение установить компонент от Adobe.
Мне лично canvas очень даже подуше, тем более Mozilla продемонстрировала отменный продукт Bespin редактор.
спустя 10 часов [обр] Амир(0/4)[досье]
AB...[досье], для поддержки в браузере SVG есть от Adobe автоматический инсталятор тоже.
И глюков с вводом русского текста нет,
как у пользователей не Windows во Flash.
спустя 19 минут [обр] Амир(0/4)[досье]
извените перепутал =( с AIR кажись.
у Adobe тестовая страница есть http://www.adobe.com/svg/viewer/install/svgtest.html
и страница зпгрузки вьювера для различных ОС
http://www.adobe.com/svg/viewer/install/main.html
спустя 10 часов [обр] AB...(0/233)[досье]
И я про это Амир[досье]. С SVG как и с Flash не должно быть проблем.
спустя 14 часов [обр] Амир(0/4)[досье]

У меня стоит сервер lighttpd
который сам сжимает статичные файлы, расширение которых указано в конфиге сервера.

Вопрос, есть ли необходимость сжимать файлы *.svg и отдавать их как *.svgz,
или достаточно просто указать расширение *.svg в конфиге Lighttpd ?

И второй вопрос, как отдавать файлы .svg если их сжимал лайти, как *.svg или *.svgz ?

Просто хочу избежать *.svgz расширения, так как его не понимает IE8 (http://ru.wikipedia.org/wiki/SVG#SVGZ)

спустя 1 час 37 минут [обр] Костя[досье]
Меня тоже интересует вопрос про сжатие. Но, сколько я не пытался заставить браузеры понимать сжатый svg, мне это не удавалось. Похоже они не понимают не только расширение .svgz, а в принципе не работают со сжатым svg. И это странно, притом что совершенно без проблем понимают сжатый HTML, CSS, JS. Со сжатым XML - вообще что-то странное. Большинство браузеров его понимают (я использовал расширение xml.gz). Но при каких-то невыясняемых обстоятельствах, у некоторых посетителей, пользующихся теми же версиями тех же браузеров, оно не работает.
спустя 4 часа 29 минут [обр] Давид Мзареулян(9/1003)[досье]
Я, может, чего-то не понимаю, но что мешает отдавать обычный SVG с обычным “Content-Encoding: gzip”?
спустя 3 часа 54 минуты [обр] balou(0/23)[досье]
Canvas тоже очень хороший подход, вот только в Internet Explorer будет проблема и далеко не все сданут делать сложные манипуляции, что бы заставить работать под IE. С SVG и Flash проще, автоматом предложение установить компонент от Adobe.
в том то и дело, что в случае с canvas, усилие нужно приложить один раз и приложить его нужно разработчику сайта.
А пользователю не нужно будет совершать никаких дополнительных действий, на автоматом, ни пулеметом :-)
спустя 4 минуты [обр] balou(0/23)[досье]
к стати, есть библиотеки, использующие SVG и canvas паралельно, для более широкого охвата клиентов (в смысле браузеров)
спустя 6 часов [обр] AB...(0/233)[досье]

balou[досье] я с данной библиотекой не знаком.
А что касается разработчика:

что в случае с canvas, усилие нужно приложить один раз и приложить его нужно разработчику сайта

то как мне кажется, это не совсем верно. Тем не менее представители Microsoft в последней беседе, в которой я учавствовал, говорили, что планируют включить SVG в сделующей версии Internet Explorer.

спустя 4 часа 20 минут [обр] balou(0/23)[досье]
когда кажется ... :-)
вот здесь можно посмотреть (даже с помощью IE) примеры работы такой библиотеки http://www.liquidx.net/plotkit/
спустя 4 часа 43 минуты [обр] Амир(0/4)[досье]
с svg привлекает,то что мобилам без потерь качества контент можно отдавать и компам,
изменяя только стиль svg файла.
спустя 5 дней [обр] Костя[досье]

Насколько я понял, принципиальное различие между canvas и SVG заключается в том, что первый - алгоритмический язык, а второй - декларативный. Отсюда очевидно следуют и различия в сферах применения одного и другого. Программистам классической школы, очевидно, легче будет воспринять подход canvas. Однако, на мой взгляд, алгоритмический подход хорошо подходит для довольно узкой сферы применений - когда речь идёт о не очень сложной графике, возможно data driven, например построение графиков на клиентской стороне - очень хорошее применение. Когда же речь идёт о сложных изображениях, о требованиях гибкости (чтобы иметь возможность в последствии легко редактировать, корректировать и дополнять изображения), то подход декларативного языка SVG однозначно выигрывает. Представьте, если вам нужно начертить промышленный чертёж, скажем экскаватора. Впоследствии возможно понадобится поднять ему ковш, или заменить гусеницы на колёса и т.п. С декларативным SVG сделать это будет гораздо удобнее. К тому же, для декларативного языка (который по сути является определённым форматом данных) гораздо легче создать программные инструменты для создания и обработки изображений (как InkScape). Сомневаюсь, что подобное возможно с canvas.

Поддержка canvas в эксплорере обеспечивается путём эмуляции посредством VML. То есть, средствами JavaScript, DOM-объектам добавляются методы canvas, которые формируют VML-изображения. Трудно аргументировать, но по, так сказать, внутреннему чувству, как-то мне это кажется не очень надёжным и перспективным подходом. Всё ли можно эмулировать через VML? Будет ли оно вести себя точно так же, как "врождённый" canvas в других браузерах? Сомнительно.

спустя 2 часа 34 минуты [обр] AB...(0/233)[досье]
Adobe Illustrator позволяет сохранить в SVG тоже как и InkScape.
Я считаю, что SVG лучше вписывается как векторная графика.
спустя 3 часа 21 минуту [обр] Давид Мзареулян(9/1003)[досье]
Костя[досье] Canvas — это холст в браузере, на котором можно рисовать. Это НЕ формат графики!
спустя 6 дней [обр] Амир(0/4)[досье]
Powered by POEM™ Engine Copyright © 2002-2005