TIFF 디코더를 작성하는 중입니다. 내가 사용하고있는 LZW 디코더는 디코딩 된 코드 문자열의 버퍼 오버플로를 제외한 모든 LZW 압축 GIF 및 TIFF 이미지와 잘 작동합니다. 필자는 com.sun.media.imageioimpl.plugins.tiff 패키지의 TIFFLZWDecompressor를 테스트하여 "java.lang.UnsupportedOperationException : TIFF 5.0 스타일 LZW 코드가 지원되지 않음"예외를 throw합니다.TIFF 5.0 스타일 LZW 압축의 특별한 점
저는 5.0 스타일 LZW에 대한 특별한 것을 찾기 위해 노력해 왔습니다. 아무도 이것에 대해 어떤 생각을 가지고 있습니까?
참고 : TIFFLZWDecompressor 소스 코드에서 TIFF 5.0 스타일 LZW 압축 지시자는 압축 된 데이터의 첫 번째 두 바이트 {0x00, 0x01}입니다.
감사합니다. 필자는 fillOrder 문제를 생각하는 경향이 있지만 디코더에 대한 간단한 변경은 그것을 증명하지 못했습니다. 더 테스트해야 할 수도 있습니다 – dragon66
정말 함께 작업을 시작해야합니다.하지만 어쨌든 [LZWDecoder.java] (https://github.com/haraldk/TwelveMonkeys/blob/master/imageio/imageio-tiff/)를 살펴보십시오. src/main/java/com/twelvemonkeys/imageio/plugins/tiff/LZWDecoder.java), 0x00, 0x01이 발견되었을 때 실행되는 호환성 모드가 있습니다. 실제로 구현이 올바른지 확인하기 위해 더 많은 샘플 파일을 사용하면 유용 할 것입니다. 하지만 또 다시 ... 그게 우리가 가진거야. – haraldK
이 경우처럼, LZW 디코딩은 GIF LZW로 완전히 넘어집니다. 조기 코드 크기가 늘어나더라도 이전의 attemps에서 놓친 부분이 있습니다. 어쨌든, 이제 작동합니다! – dragon66