[
https://issues.apache.org/jira/browse/PDFBOX-4285?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16569147#comment-16569147
]
Tilman Hausherr edited comment on PDFBOX-4285 at 8/4/18 10:44 AM:
------------------------------------------------------------------
Were you able to produce valid TIFF files? Here's what I tried:
{code}
@Test
public void TestWriteRead() throws IOException
{
BufferedImage image = new BufferedImage(100, 100,
BufferedImage.TYPE_INT_RGB);
ImageWriter writer = ImageIO.getImageWritersByFormatName("tif").next();
ImageWriteParam param = writer.getDefaultWriteParam();
IIOMetadata metadata = writer.getDefaultImageMetadata(new
ImageTypeSpecifier(image), param);
System.out.println(writer);
System.out.println(param);
System.out.println(metadata);
param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
param.setCompressionType("JPEG");
try (ImageOutputStream imageOutputStream =
ImageIO.createImageOutputStream(new File("test.tif")))
{
System.out.println(imageOutputStream);
writer.setOutput(imageOutputStream);
writer.write(null, new IIOImage(image, null, metadata), param);
}
ImageReader reader = ImageIO.getImageReadersByFormatName("tif").next();
System.out.println(reader);
try (ImageInputStream imageInputStream =
ImageIO.createImageInputStream(new File("test.tif")))
{
reader.setInput(imageInputStream);
reader.read(0);
}
}
{code}
and this got me
javax.imageio.IIOException: No SOF segment in stream
(with JAI. It worked with twelvemonkeys)
was (Author: tilman):
Were you able to produce valid TIFF files? Here's what I tried:
{code}
@Test
public void TestWriteRead() throws IOException
{
BufferedImage image = new BufferedImage(100, 100,
BufferedImage.TYPE_INT_RGB);
ImageWriter writer = ImageIO.getImageWritersByFormatName("tif").next();
ImageWriteParam param = writer.getDefaultWriteParam();
IIOMetadata metadata = writer.getDefaultImageMetadata(new
ImageTypeSpecifier(image), param);
System.out.println(writer);
System.out.println(param);
System.out.println(metadata);
param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
param.setCompressionType("JPEG");
try (ImageOutputStream imageOutputStream =
ImageIO.createImageOutputStream(new File("test.tif")))
{
System.out.println(imageOutputStream);
writer.setOutput(imageOutputStream);
writer.write(null, new IIOImage(image, null, metadata), param);
}
ImageReader reader = ImageIO.getImageReadersByFormatName("tif").next();
System.out.println(reader);
try (ImageInputStream imageInputStream =
ImageIO.createImageInputStream(new File("test.tif")))
{
reader.setInput(imageInputStream);
reader.read(0);
}
}
{code}
> Expose the tiff compression type to the user.
> ---------------------------------------------
>
> Key: PDFBOX-4285
> URL: https://issues.apache.org/jira/browse/PDFBOX-4285
> Project: PDFBox
> Issue Type: Improvement
> Components: Writing
> Affects Versions: 2.0.11
> Reporter: Alexandre Moraes do Nasciment
> Priority: Major
> Labels: TIFF
>
> Allow the user to set the compression type of Tiff files externally.
> In the current version, the class ImageIOUtil uses
> TIFFUtil.setCompressionType and this sets the compression only to "CCITT T.6"
> or "LZW".
> Other choice could be allow the jpeg compression that is more efficient.
> It already has a TODO in code (// TODO expose this choice to the user?)
> Thank you.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]