Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Вёрстка веб-сайтов > картинка без src


Автор: kulibin 20.7.2007, 11:57
такая задачка: вёрстка отчётов средствами субд постгрес. отчёт на клиентское приложение передаётся как текст хтмл. при этом возможно отчёты некоторые будут содержать картинки - в основном думаю это логотипы мелкие будут. картинки эти будут в бд храниться. и задача такая: в текст хтмл зашить картинку. прямо в текст - как массив байт или как угодно - только чтобы было это одним файлом - и пикчерс - и хтмл. Т.е. как я представляю это: допустим функия на явке (наверное без неё никак - или  можно?). задаётся картинка массивом байт в виде литерала - а потом допустим при загрузке страницы там как-то по типу документ.врайт(массив_байт_картинки) - как-то так наверное должно это делаться. Кто силён в нелёгком деле вебдизяйна - подскажите плз как реализовать этот хитрый манёвр.

Автор: SelenIT 20.7.2007, 12:44
kulibin, вот http://www.ridgway.co.za/archive/2005/11/13/dynamicjavascriptimagegenerationwithxbmimages.aspx упомянуты все известные мне маневры: XBM-формат (только ч/б, притом у меня запустился только в FF), base64 (FF + Opera9) и имитация картинки HTML-ем (в примере однопиксельными span-ами, имхо проще таблицей). Думаю, последний вариант - самый надежный и универсальный. Другие варианты лично мне неизвестны...

Автор: sith 20.7.2007, 16:33
... а почему нельзя получать картинку прямо из БД... и генерить отчет...???

Автор: kulibin 8.8.2007, 11:23
картинку прямо из бд мона и нуна - токо куды тыкать то её? юзверю неудобно будет если картинка будет отдельным файлом.
а массивом байт никак нельзя? на явке может что-то слепить - чтобы картинка сама была литералом массива байт - и потом как-то допустим ява-скриптом лепилась на страничку например по онлоэд?

Автор: kulibin 8.8.2007, 11:41
вот интересный пример - спасибо за ссылку!

<img src="data:image/gif;base64,R0lGODlhDwAPAKECAAAAzMzM/////
wAAACwAAAAADwAPAAACIISPeQHsrZ5ModrLlN48CXF8m2iQ3YmmKqVlRtW4ML
wWACH+H09wdGltaXplZCBieSBVbGVhZCBTbWFydFNhdmVyIQAAOw=="
alt="Base64 encoded image" width="150" height="150"/>

только х его знает как в виде вот этого "Base64 encoded image" рисунок получить из массива байт :(.

Автор: kulibin 8.8.2007, 13:38
разобрался с base64. токо проблема от этого не решилась :(. у меня отчёты эти просматриваются микрософтовским контролом webbrauser - и у него такой как оказалось странный глюк: он этого всего не понимает - и кроме того ещё и как-то ухитряется сволочь переврать исходный текст хтмл! интернетэкспловер тоже не понимает. и фишка в том, что даже когда сохраняется в файл отчёт из проги моей - при этом тупо вырезается утот кусок кода. в результате там получается img src="" - и усё :(. такая вот фигня :(. 
с дивами не охота заморачиваться - да и файл отчёта от этого в размере увеличится нормально наверное. и мне куча гемора с формированием такой ерунды. это ж не то, что один рисунок так в дивы перевести - это алгоритм нужно разработать. Вот разве что бы готовый на явке найти. у меня субд постгрискл - там есть язык плява - думаю не оч отличающийся от явы - думаю переконвертировать можно будет.
вобщем это мне не оч подходит. нужно или что-то попроще и покомпактнее по типу утого с base64 - или вообще забросить дурь эту - т.к. в принципе это излишество и необходимостью не является.
есть у кого ещё какие мысли как можно это сделать?

Добавлено через 8 минут и 18 секунд
вот эту ссылку интернетэкспловером открыл. 
http://www.sxlist.com/techref/language/java/script/dnyimgtst.htm
там несколько примеров вставки картинки на страницу. нихрена не фурычит :(.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)