내 프로그램에는 작업 캔버스의 고해상도 이미지를 디스크로 내보내는 기능이 있습니다. 사용자는 자주 약 20,000 x 10,000 픽셀 @ 32bpp (약 800MB)의 이미지를 내보내려고합니다. 이를 평균 3D CAD 프로그램에서 이미 진행중인 심각한 메모리 소비량에 더하면 32 비트 플랫폼에서의 메모리 부족 충돌을 거의 보장 할 수 있습니다.거대한 이미지 만들기
그래서 이제 픽셀 편집기에서 사용자가 함께 스티치해야하는 1000x1000 픽셀의 타일을 내보내고 있습니다. 사용자가 작업을하지 않고도이 문제를 해결할 수있는 방법이 있습니까?
나는 프로세스에 명령 줄이 들어가고 자동으로 스티치를 수행하는 작은 exe를 작성할 수 있다고 생각했습니다. 그것은 별도의 프로세스가 될 것이므로 2GB의 RAM이 모두 자체적으로 필요합니다. 아니면 아직도 더 좋은 방법이 있습니까? jpg, png 및 bmp를 지원하여 이미지를 디스크에 바이트 스트림으로 쓰고 싶습니다. 당신이 언어 경합 적 다음은 두 가지 옵션이하고 싶은 경우
감사합니다. Pekka, 복합 기능을 확인해 보겠습니다. 설치 프로그램에서 ImageMagick을 제공 할 수 없으므로 해당 기능을 직접 사용하고 있습니다. –
@ David 환영합니다. 그러나 외부 DLL을 배송 할 수없는 경우에는 지능적인 스티칭/스와핑 솔루션을 사용해야합니다. 나는 최소한의 영감을 얻으려면 좋은 소스 코드가있는 오픈 소스 stitchers가 있다고 확신한다. –
자동으로 실행되는 소형 콘솔 앱을 작성했습니다. 너무 오래 걸리지는 않았지만 여전히 32 비트 OS에서 2GB의 비 압축 이미지 데이터로 제한됩니다. 아직도, 나는 그것이 대부분의 사용을 위해 잘되어야한다고 생각한다. –