Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.08.2012, 16:57
Аспирант
Отправить личное сообщение для JDev Посмотреть профиль Найти все сообщения от JDev
 
Регистрация: 19.11.2011
Сообщений: 77

Чтение ImageMetadata из сгенерированного image?
Здравств, нужно прочитать ImageMetadata с помощью JavaScript.

Нашел вот такую вот инфу.
Чтение метаднных плагином: http://blog.nihilogic.dk/2008/08/ima...data-with.html
Чтение метаднных jQuery-плагином: http://blog.nihilogic.dk/2008/05/jqu...ta-plugin.html

Больше ничего толкового не нашел.
jQuery-плагин работает, но особо данных не выдает.
первый плагин у меня рубит какую-то ошибку.

Фишка в том, что я на сервере генерирую картинку и с помощью вот такого кода загоняю в нее метаданные.
Потом хочу JavaScript-ом эти данные прочитать. Кто-то делал похожее? Кто-то знает как это сделать?

Код:
	private byte[] writeMetadataToImage(ByteArrayOutputStream baos) throws Exception {
		
		InputStream in = new ByteArrayInputStream(baos.toByteArray());
		BufferedImage bImageFromConvert = ImageIO.read(in);
		
		ImageWriter writer = ImageIO.getImageWritersByFormatName("png").next();

		ImageWriteParam writeParam = writer.getDefaultWriteParam();
		ImageTypeSpecifier typeSpecifier = ImageTypeSpecifier.createFromBufferedImageType(BufferedImage.TYPE_INT_RGB);

		IIOMetadata metadata = writer.getDefaultImageMetadata(typeSpecifier, writeParam);
		
		IIOMetadataNode textEntry = new IIOMetadataNode("tEXtEntry");
		textEntry.setAttribute("keyword", "Blup");
		textEntry.setAttribute("value", "Flup");

		IIOMetadataNode text = new IIOMetadataNode("Oleg");
		text.appendChild(textEntry);


	    IIOMetadataNode root = new IIOMetadataNode("javax_imageio_png_1.0");
	    root.appendChild(text);


		ByteArrayOutputStream baos2 = new ByteArrayOutputStream();
		ImageOutputStream stream = ImageIO.createImageOutputStream(baos2);

		writer.setOutput(stream);
		writer.write(metadata, new IIOImage(bImageFromConvert, null, metadata), writeParam);
		
		stream.close();

		return baos2.toByteArray();

	}
Код взят отсюда: http://stackoverflow.com/questions/6...735707#8735707

Спасибо за помощь.
Ответить с цитированием
  #2 (permalink)  
Старый 08.08.2012, 17:13
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

попробуйте свою картинку записать на жесткий диск и прочитать с помощью
http://all-html5.narod.ru/3/dataStream/jpeg.html
только для формата jpg
может получится что то прочитать-я пробовал читать метаданные из файлов mp3 но не получается

Последний раз редактировалось vadim5june, 08.08.2012 в 17:17.
Ответить с цитированием
  #3 (permalink)  
Старый 08.08.2012, 17:19
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

<img id=sdf00 src="data:image/png;base64,
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD
UUlEQVR42lWTWUwTURSGaUtIKY5QweISTUzceDGu0Rj1xURjTNQEE+ODGn0hPhBEQdqZztahBbrA
tFih1Fprh9IBiVLLErZSU7BUoS7VqNH44ovx0S0ovdfO4Ez04cw9Ofec7/5zzr15NEnkUxSVFx8O
bZ1x7nzHN6z9nOhnzOFwWCnECcKoEFbBRrrp6iF/XRvD0BoplkdTuAiIhtt3P3Fu+jJlKlkM1WoX
LFjVeSnpXrC94gV3ciJp1X0L1K7+NtDfvXdpj1TmmUwm8QTfLa867T+ceWTSwO5r5b87XNaDEoBr
v3p2Ai+AU1Qh5OiDGS4UXi4roAisQHBiYfJS2obAVPMyELYcGxViOIaKcLaNLXzadej5nBUBPXW6
hdYW0z4RQOYUXK2tUfr8QeXL0Kn4JKEBk7QWdtrrLggJJEmoCBxVCf50qIaaa0HABFkEPZaLNnGf
wPNFGV0u05Y554bvMQoBPLbxs9t9QydJpHP/KayRbsf+pG1NdgTTgDuGXa8dbS41ZtArxaQYT1Wl
HVqYaloGOcvJIan4X2MdViTl3vExbS+GPfXlvzzutj1LPch9HrYea59t0YIRtAAO+PQuIWYwNKik
Yty41Iuk/3TvMzsCB9HcQR7msgzgjZs7Z5rLQPR6PojeJW2d3oDCoG/IlwAYqlexbp/i9eB19ziu
BoMoAlrR03YZ0G8+0JFhS8EjuhD6zWfuCTEjppcBOKYX1bwaqA5MM2oYZ4pBy7XjrAyY7sPqU01F
cNZW/jtwZeXXVpt5u1RM4JhYzHFBddqz5/28fUU2NwngtVUbZUCE79o6x67/MYiXLiSbS8D9xp1v
I7znkLvDK07A5/MiT7mzdxMMAsdMqxaiWDHkgzePigBUXy9KTfdWeVKNSjjPrvv5uKkYxszlIHX7
eDLeVfkgbt30bt5eAlOOtT9nLRrI03szrOumOtcb4SrTSj2KKfr4nuUZ7kR8HFPAYXLlYqxRl43T
GjjTWAhHCC1MNK/+lWA0cJLRgfsh95G/N1H136z7+BCSuHMuMEGVLo4a1XCKKcuO0WXZBw1FcNig
hmPWbe8jIeeJpdFiCrkHguWUyM92NBKseBut8T92bfsw66z49IyrHH2T5CvlqeCYUvL/ANIZ7+oh
XSdWAAAAAElFTkSuQmCC">

<style type="text/css"></style>
<script type="text/javascript">
alert(document.getElementById('sdf00').src)

</script>

Последний раз редактировалось Deff, 08.08.2012 в 17:27.
Ответить с цитированием
  #4 (permalink)  
Старый 08.08.2012, 17:45
Аспирант
Отправить личное сообщение для JDev Посмотреть профиль Найти все сообщения от JDev
 
Регистрация: 19.11.2011
Сообщений: 77

Сообщение от vadim5june
попробуйте свою картинку записать на жесткий диск и прочитать с помощью
http://all-html5.narod.ru/3/dataStream/jpeg.html
только для формата jpg
может получится что то прочитать-я пробовал читать метаданные из файлов mp3 но не получается
нужно для png

Deff - а для png такое пойдет?
Ответить с цитированием
  #5 (permalink)  
Старый 08.08.2012, 17:55
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от JDev
для png такое пойдет
у него png и загружена-data:image/png
Ответить с цитированием
  #6 (permalink)  
Старый 08.08.2012, 17:59
Аспирант
Отправить личное сообщение для JDev Посмотреть профиль Найти все сообщения от JDev
 
Регистрация: 19.11.2011
Сообщений: 77

Сообщение от vadim5june Посмотреть сообщение
у него png и загружена-data:image/png
- что-то я не совсем понимаю, как это, что это?
Ответить с цитированием
  #7 (permalink)  
Старый 08.08.2012, 18:05
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от JDev Посмотреть сообщение
- что-то я не совсем понимаю, как это, что это?
Deff показал картинку в формате dataURL
http://www.xiper.net/collect/html-an.../data-url.html
там закодированы в base64
Ответить с цитированием
  #8 (permalink)  
Старый 08.08.2012, 18:15
Аспирант
Отправить личное сообщение для JDev Посмотреть профиль Найти все сообщения от JDev
 
Регистрация: 19.11.2011
Сообщений: 77

посмотрел сгенериную картинку вот этим
http://entropymine.com/jason/tweakpng/
оказывается что жаба ничего не записала в файл.
Ответить с цитированием
  #9 (permalink)  
Старый 08.08.2012, 20:07
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

JDev,
http://habrahabr.ru/post/133351/ http://habrahabr.ru/post/132489/
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Автоматическая смена картинок через заданное время herotic Элементы интерфейса 45 15.05.2020 16:44
Что нужно дописать в коде чтобы изображение менялось постоянно. vadim90k (X)HTML/CSS 22 09.07.2012 16:33
Плагин для файрфокса - чтение изображений SunnyDay Общие вопросы Javascript 4 28.04.2009 17:30