이미 SO, AForge, FreeImage 및 몇 개의 다른 웹 사이트에서 제공된 모든 제안을 검색하여 시도했지만 이미지를 실제 8bpp로 변환 할 수 없습니다. 난 항상 JPEG 내가이실제 8bpp Jpeg로 변환
myImage.Save("image.jpg");
처럼 저장할 때 그래서 나는 3MB + 얻을, (myImage.RawFormat에 따라)를 MemoryBMP이있는 그레이 스케일 변환 한 후 대신 8
의 24bpp로 저장하세요 이미지 (그래서 내가 BMP에 저장되어 있다고 가정) 윈도우 8bpp입니다 (하지만 그것을 JPEG로해야합니다)라고합니다. 나는이
myImage.Save("image_JPEG.jpg", ImageFormat.Jpeg);
처럼 저장하지만 나는 400KB의 이미지를 얻을 (그래서는 JPEG에 저장있어 가정)하지만 24bpp에서입니다.
어떤 아이디어가 원인 일 수 있습니까?
EDIT
JYelton 이것이 Image.Save() 방법의 한계 인 한, 그래서이 FreeImage 라이브러리로 이미지를 저장하는 변경 같이 FreeImage.SaveBitmap()는 매력처럼 작동한다.
왜 JPG가 8 비트가 필요합니까? 참고로, 어떤 사람들은 각 채널 (R, G, B)이 8 비트를 갖는 이미지를 "8 비트 JPG"라고합니다. 그게 니가 한 일이라면 니가 그걸 가지고 있다고 생각해. 채널당 8 비트는 24 비트 컬러를 생성합니다. – BlueMonkMN
Image.Save (문자열) 오버로드의 기본 이미지 형식은 BMP가 아닌 PNG입니다. –