ImageEn保存TIF后,文件不能查看

amyhuangcn 2011-07-26 11:11:39
使用ImageEn将扫描的文件存为TIF格式时,原来由于保存的文件SIZE太大(20M以上),于是将原来的ImageEnMView1.MIO.SaveToFile(FileName)方法,改为ImageEnmview1.MIO.SaveToFileTIFF(FileName),这样文件明显变小了,才一两百K,同时使用Microsoft Office Document Imaging可以打开查看,但是用其它图像软件都不能查看,包括window的图片浏览器(Windows Picture and Fax Viewer)却不能查看,问题肯定还是出在保存上面,因为原来的ImageEnMView1.MIO.SaveToFile(FileName)虽然保存很大,但是起码各种软件可以打开查看.

各位高手帮忙看一下啊,其实最终的目的就是保存文件要小,各软件均可查看就可以了,保存文件代码如下:
function TSTSImageControl.Save(const FileName: WideString): WordBool;
var
i:integer;
begin
result:=false;
try

ScannerSet.CompressionType:=4;

SaveImageBitmap;
for i:=0 to ImageEnMView1.MIO.ParamsCount-1 do
begin
if uppercase(ExtractFileExt(FileName))='.TIF' then
begin
case ScannerSet.CompressionType of
0:ImageEnMView1.MIO.Params[i].TIFF_Compression:=ioTIFF_CCITT1D;
1:ImageEnMView1.MIO.Params[i].TIFF_Compression:=ioTIFF_G3FAX1D;
2:ImageEnMView1.MIO.Params[i].TIFF_Compression:=ioTIFF_G3FAX2D;
3:ImageEnMView1.MIO.Params[i].TIFF_Compression:=ioTIFF_G4FAX;
4:ImageEnMView1.MIO.Params[i].TIFF_Compression:=ioTIFF_JPEG;
else
ImageEnMView1.MIO.Params[i].TIFF_Compression:=ioTIFF_JPEG;
end;

end else
begin
ImageEnMView1.MIO.Params[i].TIFF_Compression:=ioTIFF_JPEG;
//ImageEnMView1.MIO.Params[i].TIFF_JPEGQuality:=ScannerSet.JPEGQuality;
end;
ImageEnMView1.MIO.Params[i].DpiX:=ScannerSet.XImageResolution;
ImageEnMView1.MIO.Params[i].DpiY:=ScannerSet.YImageResolution;

if (ImageEnMView1.MIO.Params[i].DpiX>0)and(ImageEnMView1.MIO.Params[i].DpiY>0) then
begin
ImageEnMView1.MIO.Params[i].Width:=
round(ImageEnMView1.MIO.Params[i].DpiX*self.ScannerSet.ImageWidth*Const_InchCm);
ImageEnMView1.MIO.Params[i].height:=
round(ImageEnMView1.MIO.Params[i].DpiY*self.ScannerSet.ImageHeight*Const_InchCm);
end else
begin
ImageEnMView1.MIO.Params[i].DpiX:=400;
ImageEnMView1.MIO.Params[i].DpiY:=400;
ImageEnMView1.MIO.Params[i].Width:=
round(400*self.ScannerSet.ImageWidth*Const_InchCm);
ImageEnMView1.MIO.Params[i].height:=
round(400*self.ScannerSet.ImageHeight*Const_InchCm);
end;
end;
ImageEnMView1.MIO.Update;
//ImageEnMView1.MIO.SaveToFile(FileName);
ImageEnmview1.MIO.SaveToFileTIFF(FileName);
except
exit;
end;
result:=true;
end;
...全文
938 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wh1965 2014-01-02
  • 打赏
  • 举报
回复
压缩格式选 jpg
wh1965 2013-11-01
  • 打赏
  • 举报
回复
确实,这个不知道要改那个参数才能够比较理想
amyhuangcn 2011-07-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lqfcu2 的回复:]
使用GID+保存为TIFF试试。。。
[/Quote]

能不能将具体代码帮我写一下呢,实际上我从未接触过delphi,只是做这个的同事离职了,因为急,由我这个做B/S的人接手看一下,刚刚好不容易调通可以编译,至于具体代码这块,希望高手能够帮忙写一下,我编译看看,谢谢啊.
lqfcu2 2011-07-26
  • 打赏
  • 举报
回复
使用GID+保存为TIFF试试。。。
amyhuangcn 2011-07-26
  • 打赏
  • 举报
回复
有没有人帮忙啊
ImageEn 是一款适用于图像处理,观察和分析的控件。它能加载和保存为若干种图像文件格式,包括从Twain 扫描仪中获得图像(单个和多个页面),屏幕截图,使用滤镜,合并图像,选择图像区域(支持魔术棒)以至于其他的图像格式。ImageEn允许你在你的应用 程序中安装包括专业版的图形软件制作特征。 提供不同的加载/保存操作 加载并保存为JPEG(RGB, GrayScale, YCbCr, CMYK, YCbCrK)格式到文件中(with also 1/2, 1/4 and 1/8 subsizes for fast preview)。读出/写入APP0-APP15,COM Jpeg标记。 JPEG2000:JP2,J2K,J2K和JPC代码串格式(标准的JPEG-2000 Part-1,ISO/IEC 15444-1) 可对Jpeg格式的图片进行无损的转换与剪切 评估一个jpeg文件的精度 处理ICC轮廓时可随意选择颜色管理系统(CMS) 读取/写入Exif信息(在Jpeg和TIFF中)。无需下载或转换原图像就能转换EXIF图像信息。 使用RGB,CMYK,B/W,CIELab为该文件加载并储存为TIFF(rev.6.0 and Tech. Note #2,Packbits, JPEG,LZW,CCITT G.3和G.4)格式,还提供FAX(CCITT3),G3F和G3N(Zetafax)的加载格式,同时也支持4,8,16,32,64,128 和 256位的颜色调板。 加载为G3F和G3N(Zetafax 样式) 无需解压就能实现本地操作,在TIFF文件中支持添加/移动/提取/enum以至于更快的处理方式。 读取简单的TIFF标签 保存为(PS和EPS)的附件形式,使用RLE,G3Fax,G4Fax和Jpeg格式对单个的或多个页面进行压缩。 保存为Adobe PDF格式。使用G3Fax, G4Fax and Jpeg格式对单个的或多个页面进行压缩。 以不同的压缩标准加载并保存为PNG格式 加载和保存压缩和未经压缩的2,16,256或16M颜色到BMP文件中 加载和保存未经压缩的黑/白WBMP(Wireless位图)图像 加载和保存压缩和未经压缩的2,16,256或16M颜色到PCX文件中 加载并储存为2,4,8,16,32,64,128或256色的GIFs格式的文件或串 加载并保存为DCX(多页的PCX)的文件格式 加载并保存为DIB,RLE,TGA(TARGA,VDA,ICB,VST,PIX)的文件格式 加载和保存便携式的PBM,PGM和PPM位图 加载并保存为ICO文件格式(随multi 溶解和颜色深度来预定义ICO设置) 加载WMF,EMF和CUR文件格式 加载并保存为AVI, 动态的GIF和多页的TIFF文件格式 读取单独的AVI帧格式 从JPEG和TIFF图像中读取/写入IPTC(IIMV4)信息(像PhotoSho中的文信息)。无需加载XIng或改变原图像就能替换IPTC中的信息。 为用户提供自定义的文件格式 支持Alpha通道模式(设置图像的透明度) 编辑动态的GIF图像:可提取,插入和删除单个图像 编辑多文本的TIFF图像:可提取,插入和删除单个图像 在读取/写入LZW GIF和TIFF图像的样品插件中附带有源代码 为GIF文件添加NON-LZW-GIF压缩样品插件 为GIF和TIFF图像添加标准的LZW压缩/解压的样品插件 无需加载就能设置图像属性 用户界面无需默认扫描仪的设置和完全控制扫描仪的功能就能从TWAIN 扫描仪中获取图像,同时支持模式和非模式的采集 从WIA扫描仪和照相机中获取图像 保存/加载有效的文件格式参数和保存/加载可预览的对话框(如:你能设置一个Jpeg图像的品质并可立即预览该图像的品质是否丢失),适用于Win2000/Xp/Me操作系统。 选择语言属性对话框(English, Italian, German, Spanish, French, Portuguese, Greek, Russian, Dutch, Swedish, Polish 或用户自定义的语言) 支持标准的TImage控件的链接 OnProgress事件适合于监测储存和加载信息 提供异常的输入/输出处理 为GIT,TIFF,PNG,ICO,CUR,TGA图像加载alpha通道模式 屏幕截图 使用http协议(LoadFromURL)从网络中加载图像 在TPicture中注册ImageEn格式的文件(打开/储存TImage和VCL的对话框) 提供Wang图像注释(加载/编辑/保存) 打印: 打印(和打印预览)功能,可从指定的页面队列或相对位置中打印简单的图像 print dialog with preview 安装方法: 1)解压缩到特定目录ImageEn 3.02,把该目录中的source和lib添加到Delphi的library path目录; 2)把ImageEn 3.02\Delphi7的DPK等拷贝到源文件目录ImageEn 3.02; 3)编译PKIECtrl7.dpk和PKIEDB7.dpk; 4)安装DPKIECTRL7.dpk和DPKIEDB7.dpk。

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi GAME,图形处理/多媒体
社区管理员
  • GAME,图形处理/多媒体社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧