社区
C++ Builder
帖子详情
TJPEGImage压缩图片时的问题
LWLIFE
2011-06-02 08:33:30
我现在使用TJPEGImage类CompressionQuality方法压缩图片,如果图片为8位的灰度图像则压缩之前要调用一下DIBNeeded方法,如果为彩色图片则调用JPEGNeeded方法,现在怎么判断应该调用JPEGNeeded还是DIBNeeded呢?
...全文
470
11
打赏
收藏
TJPEGImage压缩图片时的问题
我现在使用TJPEGImage类CompressionQuality方法压缩图片,如果图片为8位的灰度图像则压缩之前要调用一下DIBNeeded方法,如果为彩色图片则调用JPEGNeeded方法,现在怎么判断应该调用JPEGNeeded还是DIBNeeded呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tst1255
2011-06-20
打赏
举报
回复
如果你是把老的.Jpg文件打开处理,如叠加信息,那就得解压缩成bmp才能处理吧,解压到Tbitmap类后不就知道格式了吗?
而且 .Jpg文件应该都是24位色压缩的,如果你是打开原来的.jpg文件,它应该就是24位色。
如果你不处理jpg文件,为啥还要压缩?原来的文件不就压好了吗?想重新压缩?重新压缩也的解开才能重新编码吧。
LWLIFE
2011-06-20
打赏
举报
回复
应该是一张JPG图像,使用TJPEGImage类加载进来的,难道要先转成BMP判断HandleType和PixelFormat然后在处理吗?
tst1255
2011-06-17
打赏
举报
回复
你压缩前的图像放在什么位置?是一段内存还是TBitmap对象,如果是自定义的一段普通内存,那里面存放的图像格式是你应该知道的,如果是放在TBitmap对象立的,TBitmap的HandleType和PixelFormat可以帮助你知道是哪种类型的图像。
LWLIFE
2011-06-13
打赏
举报
回复
等人回复中。
LWLIFE
2011-06-10
打赏
举报
回复
大家都放假了呀,
tst1255
2011-06-09
打赏
举报
回复
没压缩过8位的灰度图像,说不清楚,压缩过24位图,不过也没调用过JPEGNeeded方法,我的步骤是:
Graph::TBitmap *bmp = new ...
TJPEGImage *jpg = new ..
... // 图像存放到bmp里
jpg->Assign(bmp );
jpg->SavetoFile( ...);
delete jpg;
delete bmp;
另外可用试用 ijl15.dll,它压缩、存储文件的效率明显比BCB的自带的jpg压缩、存储效率高。
LWLIFE
2011-06-09
打赏
举报
回复
高手都哪里去了呢?
futulove
2011-06-08
打赏
举报
回复
悄悄路过
LWLIFE
2011-06-03
打赏
举报
回复
顶贴求答案
LWLIFE
2011-06-02
打赏
举报
回复
这个问题没人清楚吗?
LWLIFE
2011-06-02
打赏
举报
回复
我倒,这么抢手的问题竟然没人回答
Delphi7
压缩
图片
(BMP、JPG、PNG)
/// <summary> ///
压缩
图片
(BMP、JPG、PNG) /// </summary> /// <param name="FileName">文件路径</param> /// <param name="Width">需要
压缩
后的宽度</param> /// <param name="Height">需要
压缩
后的高度</param> /// <param name="PressQuality".
delphi
图片
压缩
,存储方法
实际代码,成功 unit Unit1; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, RzButton,...
Delphi
压缩
图片
代码
Delphi
压缩
图片
代码 添加引用:uses
JPEG
; //=====================
图片
处理函数,将覆盖原
图片
文件=========================== //=====filename:
图片
完整路径 PressQuality:
压缩
质量 Width:宽 Height:高 function CompressMainFun(filename
JPEG
图像
压缩
出现资源不足
问题
的解决
1,
问题
的提出 公司开发了一个图像
压缩
上传程序。采用Delphi语言实现。大致步骤如下: 1,上传前将文件打开装载到T
Jpeg
Image
, 2,创建一个TBitmap组件,设置其大小,采用StretchDraw方法将T
Jpeg
Image
的图像绘制到TBitmap组件, 3,将TBitmap组件的图像赋值给T
Jpeg
Image
, 4,设定T
Jpeg
Image
的
压缩
率,调用
压缩
方法...
jpeg
图片
压缩
一个
压缩
jpeg
图片
的过程 uses
jpeg
; procedure Zip
JPEG
; var jpg: T
Jpeg
Image
; bmp: TBitmap; begin jpg := T
Jpeg
Image
.Create; bmp := TBitmap.Create; try jpg.LoadFromFile('c:\A.jpg'); bmp.Width
C++ Builder
13,825
社区成员
102,678
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章