本文整理匯總了Java中javax.imageio.spi.ImageReaderSpi.getImageWriterSpiNames方法的典型用法代碼示例。如果您正苦於以下問題:Java ImageReaderSpi.getImageWriterSpiNames方法的具體用法?Java ImageReaderSpi.getImageWriterSpiNames怎麽用?Java ImageReaderSpi.getImageWriterSpiNames使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類javax.imageio.spi.ImageReaderSpi
的用法示例。
在下文中一共展示了ImageReaderSpi.getImageWriterSpiNames方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: getImageWriter
import javax.imageio.spi.ImageReaderSpi; //導入方法依賴的package包/類
/**
* Retrieve an image writer corresponding to an image reader, or
* null if reader is not registered or if no corresponding writer is
* registered. This method is useful for preserving metadata
* without needing to understand its format, since the returned
* writer will be able to write, unchanged, the metadata passed to
* it by the reader.
*
* @param reader a registered image reader
*
* @return an image writer corresponding to reader, or null
*
* @exception IllegalArgumentException if reader is null
*/
public static ImageWriter getImageWriter (ImageReader reader)
{
if (reader == null)
throw new IllegalArgumentException ("null argument");
ImageReaderSpi spi = reader.getOriginatingProvider();
String[] writerSpiNames = spi.getImageWriterSpiNames();
ImageWriter w = null;
if (writerSpiNames != null)
{
try
{
Class writerClass = Class.forName (writerSpiNames[0]);
w = (ImageWriter) writerClass.newInstance ();
}
catch (Exception e)
{
return null;
}
}
return w;
}
示例2: testSpi
import javax.imageio.spi.ImageReaderSpi; //導入方法依賴的package包/類
public void testSpi(ImageReaderSpi spi) {
testSpi((ImageReaderWriterSpi)spi);
Class[] inputTypes = spi.getInputTypes();
if (inputTypes == null) {
error("inputTypes == null!");
}
if (inputTypes.length == 0) {
error("inputTypes.length == 0!");
}
String[] writerSpiNames = spi.getImageWriterSpiNames();
if (writerSpiNames != null && writerSpiNames.length == 0) {
error("writerSpiNames.length == 0!");
}
}
示例3: testImageReaderSpiConstructor
import javax.imageio.spi.ImageReaderSpi; //導入方法依賴的package包/類
public void testImageReaderSpiConstructor() {
resetConstructorArguments();
checkImageReaderSpiConstructor(true);
vendorName = "My Vendor";
checkImageReaderSpiConstructor(true);
version = "My Version";
checkImageReaderSpiConstructor(true);
names = new String[0];
checkImageReaderSpiConstructor(true);
names = new String[1];
names[0] = "My Format Name";
checkImageReaderSpiConstructor(true);
readerClassName = "com.mycompany.Reader";
checkImageReaderSpiConstructor(true);
inputTypes = new Class[0];
checkImageReaderSpiConstructor(true);
inputTypes = new Class[1];
inputTypes[0] = Object.class;
// Now it should work
checkImageReaderSpiConstructor(false);
// Test normalization of zero-length arrays
suffixes = new String[0];
MIMETypes = new String[0];
writerSpiNames = new String[0];
extraStreamMetadataFormatNames = new String[0];
extraImageMetadataFormatNames = new String[0];
ImageReaderSpi spi = constructImageReaderSpi();
if (spi.getFileSuffixes() != null) {
error("Failed to normalize suffixes!");
}
if (spi.getMIMETypes() != null) {
error("Failed to normalize MIMETypes!");
}
if (spi.getImageWriterSpiNames() != null) {
error("Failed to normalize writerSpiNames!");
}
if (spi.getExtraStreamMetadataFormatNames() != null) {
error("Failed to normalize extraStreamMetadataFormatNames!");
}
if (spi.getExtraImageMetadataFormatNames() != null) {
error("Failed to normalize extraImageMetadataFormatNames!");
}
}
示例4: testFormat
import javax.imageio.spi.ImageReaderSpi; //導入方法依賴的package包/類
public static void testFormat(String format) {
ImageReader reader =
ImageIO.getImageReadersByFormatName(format).next();
if (reader == null) {
throw new RuntimeException("Failed to get reader for " + format);
}
ImageReaderSpi readerSpi = reader.getOriginatingProvider();
System.out.println(format + " Reader SPI: " + readerSpi);
String writerSpiNames[] = readerSpi.getImageWriterSpiNames();
if (writerSpiNames == null || writerSpiNames.length == 0) {
throw new RuntimeException("Failed to get writer spi names for " +
format);
}
System.out.println("Available writer spi names:");
for (int i = 0; i < writerSpiNames.length; i++) {
System.out.println(writerSpiNames[i]);
try {
Class spiClass = Class.forName(writerSpiNames[i]);
if (spiClass == null) {
throw new RuntimeException("Failed to get spi class " +
writerSpiNames[i]);
}
System.out.println("Got class " + spiClass.getName());
Object spiObject = spiClass.newInstance();
if (spiObject == null) {
throw new RuntimeException("Failed to instantiate spi " +
writerSpiNames[i]);
}
System.out.println("Got instance " + spiObject);
} catch (Throwable e) {
throw new RuntimeException("Failed to test spi " +
writerSpiNames[i]);
}
}
ImageWriter writer = ImageIO.getImageWriter(reader);
if (writer == null) {
throw new RuntimeException("Failed to get writer for " + format);
}
}