private static ImageData CreateImageInstance(byte[] bytes, bool recoverImage) { ImageType imageType = ImageTypeDetector.DetectImageType(bytes); switch (imageType) { case ImageType.GIF: { GifImageData image = new GifImageData(bytes); GifImageHelper.ProcessImage(image, 0); return(image.GetFrames()[0]); } case ImageType.JPEG: { ImageData image = new JpegImageData(bytes); JpegImageHelper.ProcessImage(image); return(image); } case ImageType.JPEG2000: { ImageData image = new Jpeg2000ImageData(bytes); Jpeg2000ImageHelper.ProcessImage(image); return(image); } case ImageType.PNG: { ImageData image = new PngImageData(bytes); PngImageHelper.ProcessImage(image); return(image); } case ImageType.BMP: { ImageData image = new BmpImageData(bytes, false); BmpImageHelper.ProcessImage(image); return(image); } case ImageType.TIFF: { ImageData image = new TiffImageData(bytes, recoverImage, 1, false); TiffImageHelper.ProcessImage(image); return(image); } case ImageType.JBIG2: { ImageData image = new Jbig2ImageData(bytes, 1); Jbig2ImageHelper.ProcessImage(image); return(image); } default: { throw new iText.IO.IOException(iText.IO.IOException.ImageFormatCannotBeRecognized); } } }
public static ImageData CreateJbig2(byte[] bytes, int page) { if (page < 1) { throw new ArgumentException("The page number must be greater than 0"); } ValidateImageType(bytes, ImageType.JBIG2); ImageData image = new Jbig2ImageData(bytes, page); Jbig2ImageHelper.ProcessImage(image); return(image); }
public static ImageData CreateJbig2(byte[] bytes, int page) { if (page < 1) { throw new ArgumentException("The page number must be greater than 0"); } byte[] imageType = ReadImageType(bytes); if (ImageTypeIs(imageType, jbig2)) { ImageData image = new Jbig2ImageData(bytes, page); Jbig2ImageHelper.ProcessImage(image); return(image); } throw new ArgumentException("JBIG2 image expected."); }
private static ImageData CreateImageInstance(byte[] bytes, bool recoverImage) { byte[] imageType = ReadImageType(bytes); if (ImageTypeIs(imageType, gif)) { GifImageData image = new GifImageData(bytes); GifImageHelper.ProcessImage(image, 0); return(image.GetFrames()[0]); } else { if (ImageTypeIs(imageType, jpeg)) { ImageData image = new JpegImageData(bytes); JpegImageHelper.ProcessImage(image); return(image); } else { if (ImageTypeIs(imageType, jpeg2000_1) || ImageTypeIs(imageType, jpeg2000_2)) { ImageData image = new Jpeg2000ImageData(bytes); Jpeg2000ImageHelper.ProcessImage(image); return(image); } else { if (ImageTypeIs(imageType, png)) { ImageData image = new PngImageData(bytes); PngImageHelper.ProcessImage(image); return(image); } else { if (ImageTypeIs(imageType, bmp)) { ImageData image = new BmpImageData(bytes, false, 0); BmpImageHelper.ProcessImage(image); return(image); } else { if (ImageTypeIs(imageType, tiff_1) || ImageTypeIs(imageType, tiff_2)) { ImageData image = new TiffImageData(bytes, recoverImage, 1, false); TiffImageHelper.ProcessImage(image); return(image); } else { if (ImageTypeIs(imageType, jbig2)) { ImageData image = new Jbig2ImageData(bytes, 1); Jbig2ImageHelper.ProcessImage(image); return(image); } } } } } } } throw new iText.IO.IOException(iText.IO.IOException.ImageFormatCannotBeRecognized); }