1). Ported the source code to VC8 environment. The setup file is now enclosed with MFC dll files. Any 32-bit Windows platform is good enough for running FMF. But this caused a lage setup file in result.
2). Changed some code to adapt monitor's color depth settings. No matter what your monitor's color depth is, FMF creates the true color bitmap. Creating bitmap as a 24-bit pixel array, FMF display image by using SetDIBitsToDevice function.
3). Changed the inner data structure to enhance image displaying and creation. You can now create 20000 * 20000 and above images with Minimun Memory mode.
4). Changed the JPEG compression algorithm, FMF need less memory to compress large images into JPEG format. Feeding lines one by one, need no JSAMPARRAY but the raw 24-bit pixel array.
for (int i = bmWidthBytes * (bmpInfo->bmiHeader.biHeight - 1); i >= 0; i -= bmWidthBytes) {
BYTE* line = bmpBits + i;
(void)jpeg_write_scanlines(&cinfo, (JSAMPARRAY)(&line), 1);
}

本次更新将FMF源代码移植到了VC8环境中,并调整了内部数据结构以增强图像显示和创建能力。现在可以在最小内存模式下创建超过20000*20000像素的大图。同时改进了JPEG压缩算法,减少了处理大图像所需的内存。
1万+

被折叠的 条评论
为什么被折叠?



