@SuppressWarnings("unchecked") @Override public void onRegistration(final ServiceRegistry registry, final Class<?> category) { // Make sure we're ordered before the new JEP 262 JRE bundled TIFF plugin ImageWriterSpi sunSpi = lookupProviderByName(registry, "com.sun.imageio.plugins.tiff.TIFFImageWriterSpi", ImageWriterSpi.class); if (sunSpi != null && sunSpi.getVendorName() != null && sunSpi.getVendorName().startsWith("Oracle")) { registry.setOrdering((Class<ImageWriterSpi>) category, this, sunSpi); } }
@Override public String getVendorName() { return String.format("%s/%s", super.getVendorName(), delegateProvider.getVendorName()); }
protected final void writeComments(final IIOMetadata metadata, final ImageWriterSpi provider) throws IOException { // TODO: Only write creator if not already present imageOutput.write(String.format("# CREATOR: %s %s\n", provider.getVendorName(), provider.getDescription(Locale.getDefault())).getBytes(UTF8)); // Comments from metadata if (metadata != null && metadata.isStandardMetadataFormatSupported()) { IIOMetadataNode root = (IIOMetadataNode) metadata.getAsTree(IIOMetadataFormatImpl.standardMetadataFormatName); NodeList textEntries = root.getElementsByTagName("TextEntry"); for (int i = 0; i < textEntries.getLength(); i++) { // TODO: Write on the format "# KEYWORD: value" (if keyword != comment)? IIOMetadataNode textEntry = (IIOMetadataNode) textEntries.item(i); imageOutput.write(String.format("# %s", textEntry.getAttribute("value")).getBytes(UTF8)); } } }
private void writeMeta(RenderedImage pImage, int pBodyLength) throws IOException { String annotation = "Written by " + getOriginatingProvider().getDescription(null) + " by " + getOriginatingProvider().getVendorName(); GenericChunk anno = new GenericChunk(IFFUtil.toInt("ANNO".getBytes()), annotation.getBytes());
@Override public String getVendorName() { return String.format("%s/%s", super.getVendorName(), delegateProvider.getVendorName()); }
iw = it.next(); ImageWriterSpi spi = iw.getOriginatingProvider(); System.out.println("Using: " + spi.getPluginClassName() + " ; " + spi.getVendorName() + " ; " + spi.getVersion()); i++;
private void writeMeta(RenderedImage pImage, int pBodyLength) throws IOException { String annotation = "Written by " + getOriginatingProvider().getDescription(null) + " by " + getOriginatingProvider().getVendorName(); GenericChunk anno = new GenericChunk(IFFUtil.toInt("ANNO".getBytes()), annotation.getBytes());