mirror of
https://github.com/haraldk/TwelveMonkeys.git
synced 2025-08-05 12:35:29 -04:00
#475: Fix support for writing TIFF > 2 GB
(cherry picked from commit 7fad4d5cd8cb3a6728c7fd3f28a7b84d8ce0101d)
This commit is contained in:
parent
5251f4665e
commit
8b66842859
@ -317,8 +317,8 @@ public final class TIFFImageWriter extends ImageWriterBase {
|
|||||||
long stripOffset = streamPosition + 4 + ifdSize + 4;
|
long stripOffset = streamPosition + 4 + ifdSize + 4;
|
||||||
long stripByteCount = (renderedImage.getWidth() * renderedImage.getHeight() * pixelSize + 7) / 8;
|
long stripByteCount = (renderedImage.getWidth() * renderedImage.getHeight() * pixelSize + 7) / 8;
|
||||||
|
|
||||||
entries.put(TIFF.TAG_STRIP_OFFSETS, new TIFFEntry(TIFF.TAG_STRIP_OFFSETS, stripOffset));
|
entries.put(TIFF.TAG_STRIP_OFFSETS, new TIFFEntry(TIFF.TAG_STRIP_OFFSETS, TIFF.TYPE_LONG, stripOffset));
|
||||||
entries.put(TIFF.TAG_STRIP_BYTE_COUNTS, new TIFFEntry(TIFF.TAG_STRIP_BYTE_COUNTS, stripByteCount));
|
entries.put(TIFF.TAG_STRIP_BYTE_COUNTS, new TIFFEntry(TIFF.TAG_STRIP_BYTE_COUNTS, TIFF.TYPE_LONG, stripByteCount));
|
||||||
|
|
||||||
long ifdPointer = tiffWriter.writeIFD(entries.values(), imageOutput); // NOTE: Writer takes case of ordering tags
|
long ifdPointer = tiffWriter.writeIFD(entries.values(), imageOutput); // NOTE: Writer takes case of ordering tags
|
||||||
nextIFDPointerOffset = imageOutput.getStreamPosition();
|
nextIFDPointerOffset = imageOutput.getStreamPosition();
|
||||||
@ -369,8 +369,8 @@ public final class TIFFImageWriter extends ImageWriterBase {
|
|||||||
|
|
||||||
// Update IFD0-pointer, and write IFD
|
// Update IFD0-pointer, and write IFD
|
||||||
if (compression != TIFFBaseline.COMPRESSION_NONE) {
|
if (compression != TIFFBaseline.COMPRESSION_NONE) {
|
||||||
entries.put(TIFF.TAG_STRIP_OFFSETS, new TIFFEntry(TIFF.TAG_STRIP_OFFSETS, stripOffset));
|
entries.put(TIFF.TAG_STRIP_OFFSETS, new TIFFEntry(TIFF.TAG_STRIP_OFFSETS, TIFF.TYPE_LONG, stripOffset));
|
||||||
entries.put(TIFF.TAG_STRIP_BYTE_COUNTS, new TIFFEntry(TIFF.TAG_STRIP_BYTE_COUNTS, stripByteCount));
|
entries.put(TIFF.TAG_STRIP_BYTE_COUNTS, new TIFFEntry(TIFF.TAG_STRIP_BYTE_COUNTS, TIFF.TYPE_LONG, stripByteCount));
|
||||||
|
|
||||||
long ifdPointer = tiffWriter.writeIFD(entries.values(), imageOutput); // NOTE: Writer takes case of ordering tags
|
long ifdPointer = tiffWriter.writeIFD(entries.values(), imageOutput); // NOTE: Writer takes case of ordering tags
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user