gallery2是个不错的照片管理软件,用php+mysql写的,很适合装在龙芯nas上,管理展示照片, 2T容量的存储,24小时开机,还是很合适的。
gallery2可以处理各种格式的照片,视频,mp3, 在进行缩放旋转的同时, 还会保留原始的图片文件。
但是gallery2对DP1的RAW格式支持的不好, 缩出来用于展示的图片是乱码。
gallery2是使用dcraw这款软件对RAW照片进行处理的。
经过测试,DP1的RAW格式文件里面内嵌的jpeg缩略图,可以被dcraw导出的,于是对gallery2修改了一下,
让它可以展示DP1的RAW照片,这个方式是个权宜之计,exif数据的显示会有问题,等以后再想想办法。
补丁如下
[code]
--- gallery2/modules/dcraw/classes/DcrawToolkit.class.orig 2009-10-18 02:02:01.000000000 +0800
+++ gallery2/modules/dcraw/classes/DcrawToolkit.class 2009-10-18 02:09:12.000000000 +0800
@@ -131,9 +131,15 @@
$gallery->guaranteeTimeLimit(90);
list ($success, $output) = $platform->exec(array($cmd));
if (!$success) {
+ $cmd = array($dcraw, '-c', '-e', $sourceFilename, '>', $tmpFilename);
+ list ($success, $output) = $platform->exec(array($cmd));
+ if ($success) $outtype='image/jpeg';
+ else
+ {
@$platform->unlink($tmpFilename);
return array(GalleryCoreApi::error(ERROR_TOOLKIT_FAILURE),
null, null);
+ }
}
$success = $platform->rename($tmpFilename, $destFilename);
@@ -144,8 +150,8 @@
null, null);
}
$platform->chmod($destFilename);
-
- return array(null, 'image/x-portable-pixmap', $context);
+ if($outtype=='') $outtype='image/x-portable-pixmap';
+ return array(null,$outtype, $context);
default:
return array(GalleryCoreApi::error(ERROR_UNSUPPORTED_OPERATION), null, null);
[/code]
附件 | 大小 |
---|---|
gallery2_dcraw_dp1_20091018.diff.gz | 532 字节 |