Здравств, нужно прочитать 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
Спасибо за помощь.