다중 페이지 컬러 TIFF 파일을 C#의 C# CompressionCCITT3 tiff로 변환하려고합니다. 나는 모든 픽셀이 1 비트인지 확인해야한다는 것을 알고 있습니다. 나는이 온라인의 유용한 예를 발견하지 못했다.TIF 파일 압축
답변
체크 아웃 : http://bobpowell.net/onebit.htm
당신은 (만약 내가 기억) 색상을 지원하지 않는 CCITT3 및 CCITT4 등이 변환이 필요합니다.
나는 위의 코드를 보았고 수동 논리로 모든 픽셀을 변환하는 것처럼 보였다.
이 기능을 사용할 수 있습니까?
수입 System.Drawing.Imaging
'컬러 TIF 파일 뉴 비트 맵으로
희미한 bmpColorTIF를 얻을 수 ("C : \ color.tif")
'는의 영역을 선택 TIF (모든 프레임을 잡을 것이다)
새로운 직사각형으로어둡게 rectColorTIF (0, 0, bmpColorTIF.Width, bmpColorTIF.Height)
가 '1 비트 COL 같은 직사각형 복제 또는 비트 맵 = bmpColorTIF.Clone으로
희미한 bmpBlackWhiteTIF (rectColorTIF, PixelFormat.Format1bppIndexed) TIF
'새 비트 맵 (저장 등)
으로 원하는 것을 할
...참고 : 선택할 수있는 픽셀 형식 톤이 있습니다.
포주 (Phimping) 면책 조항 : 저는 .NET 이미징 소프트웨어를 제작하는 회사 인 Atalasoft에서 근무하고 있습니다. dotImage를 사용
는,이 작업은 다음과 같이된다 :
FileSystemImageSource source = new FileSystemImageSource("path-to-your-file.tif", true); // true = loop over all frames
// tiff encoder will auto-select an appropriate compression - CCITT4 for 1 bit.
TiffEncoder encoder = new TiffEncoder();
encoder.Append = true;
// DynamicThresholdCommand is very good for documents. For pictures, use DitherCommand
DynamicThresholdCommand threshold = new DynamicThresholdCommand();
using (FileStream outstm = new FileStream("path-to-output.tif", FileMode.Create)) {
while (source.HasMoreImages()) {
AtalaImage image = source.AcquireNext();
AtalaImage finalImage = image;
// convert when needed.
if (image.PixelFormat != PixelFormat.Pixel1bppIndexed) {
finalImage = threshold.Apply().Image;
}
encoder.Save(outstm, finalImage, null);
if (finalImage != image) {
finalImage.Dispose();
}
source.Release(image);
}
}
이 지남에 따라 밥 파월의 예는 지금까지 좋은,하지만 그것이라는 것이다 조금도있는 문제의 번호를 가지고 간단한 임계 값을 사용하면 속도를 원하고 실제로 출력물이 어떤 모양인지 또는 입력 도메인이 실제로는 매우 흑백 인 것처럼 걱정하지 않아도됩니다. 이진화는 까다로운 문제입니다. 가능한 정보를 1/24까지 줄이려면 적절한 정보를 유지하고 나머지는 버리는 것이 어려운 일입니다. DotImage는 이진화를위한 6 가지 도구 (IIRC)를 가지고 있습니다. SimpleThreshold는 저의 관점에서 배럴의 맨 아래에 있습니다.
먼저 코딩을 시작하기 전에 tiff 및 이미지 유틸리티를 사용하여 원하는 결과를 실험 해보는 것이 좋습니다. 편리한 도구로 VIPS을 찾았습니다. 다음 옵션은 LibTIFF가 할 수있는 것을 조사하는 것입니다. 무료 LibTiff.NET을 사용하여 좋은 결과를 얻었습니다 (# stackoverflow 참조). 귀하의 마일리지가 다를 수 있지만 (나는 실종 16 비트 그레이 스케일 필요) GDI 티파니 기능에 매우 실망했습니다. 또한 LibTiff 유틸리티 (예 : http://www.libtiff.org/man/tiffcp.1.html 참조)
을 사용할 수 있습니다.- 1. flex에서 압축 파일 압축
- 2. 폴더/파일 압축/압축 해제
- 3. boost :: iostreams로 압축 파일 압축
- 4. 압축 파일
- 5. itk를 사용하여 tif 파일 이미지를 보간하려면 어떻게합니까?
- 6. PHP로 TIF 및 EPS 파일 최적화
- 7. (.tif) 파일 형식을 크롬에서 열 수 없습니다.
- 8. Tif 또는 PDF로 팩스보기?
- 9. Magick ++ 파일 압축 및 압축 해제
- 10. PHP에서 다중 JavaScript 파일 압축 및 압축
- 11. bash에서 압축 파일 압축 방법을 찾는 방법
- 12. IIS 6에서 정적 압축 파일 미리 압축
- 13. 플렉스 압축 해제/압축 해제 대용량 파일
- 14. "wmz"파일 압축 해제
- 15. JUnrar로 파일 압축 풀기
- 16. Hadoop gzip 압축 파일
- 17. sharpziplib + 단일 파일 압축
- 18. C에서 압축 파일.
- 19. ClientSide에서 압축 파일 받기
- 20. DICOM 파일 압축
- 21. C++로 파일 압축
- 22. ASP.Net에서 파일 압축
- 23. 서버에서 압축 파일 찾기
- 24. Groovy로 압축 파일
- 25. BlackBerry - Zip 파일 압축
- 26. 장치의 파일 압축 해제
- 27. 압축 .htaccess 파일
- 28. PHP의 파일 압축 기술
- 29. PDF 파일 압축
- 30. 파일 압축 문제