如何快速的将1个jpg文件,切割成多个文件?

qwertyasd 2008-05-11 09:43:21
如何快速的将1个jpg文件,切割成多个文件?
将jpg文件转换成bmp再切割,然后将bmp保存成jpg我会的,但是感觉效率太低,如何能提高效率?
...全文
444 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
xingyongjian 2008-05-13
  • 打赏
  • 举报
回复
楼主的方法很对,如果你认为麻烦,可以把它封装成类.
就是你找现成的方法,也和你的想法差不多!
newpiaoyun 2008-05-13
  • 打赏
  • 举报
回复
首先说:我不是很懂
其次:那些麻将怎么弄的,不是一个大图一个一个切的么?
gzmhero 2008-05-12
  • 打赏
  • 举报
回复
如果不了解jpg的格式,可以考虑,把jpg加载到TBitMap上,然后分割这个TBitMap成你要求的块,每块单独存成一个jpg文件。
hzhze051 2008-05-12
  • 打赏
  • 举报
回复
要快速切割肯定不能用现成的接口来实现,1楼的想法应该是最好的,jpeg在压缩的时候是按一个小单元一个小单元放的,所以可以不用解压缩,直接把每个小单元分开放到不同文件就可以了。每个小单元好像是8X8的像素矩阵
gyk120 2008-05-11
  • 打赏
  • 举报
回复
图片转过来转过去不会失真吗?
个人觉得1楼的方法不错
  • 打赏
  • 举报
回复
jpg是压缩的,你总得解压缩吧.
你的方法就挺合适的.
dl110 2008-05-11
  • 打赏
  • 举报
回复
我的思路.可能比较笨:
首先确认是jpg文件,然后:文件操作->读取jpg文件头和数据部分->分别保存至变量->获取图像数据大小(人工分析,在固定位置,格式)->按照切割数循环,将数据部分切割->将切割后的数据加上文件头,数据大小,文件尾(固定格式,好象是FFD9,具体记不清了.FFD8是文件头的起始标志)->保存.
hongqi162 2008-05-11
  • 打赏
  • 举报
回复
使用vc封装一个open cv图片切割的实现dll使用delphi来调用,或者你直接使用vc来做。

以下是简单的测试代码:
void ImageCopy( IplImage* input , IplImage* output , CvRect inputRect , CvRect outputRect )
{
cvSetImageROI( input, inputRect );
cvSetImageROI( output, outputRect );
cvResize( input, output ,CV_INTER_AREA);
}


int SaveToFile( IplImage* output , char* fileName )
{
cvResetImageROI( output );
cvSaveImage( fileName,output );
return 0;
}

int PhotoSplit( char* srcFileName , char* destFileName )
{
IplImage* input=cvLoadImage( srcFileName ,1 );
CvSize outputSize = { 768, 288 };//切割后图片大小
IplImage* output = cvCreateImage( outputSize, input->depth, input->nChannels );
ImageCopy( input,output,cvRect( 0,0,768,288 ),cvRect( 0,0,768,288) );//将srcFileName 的0,0,768,288内容切割出来
SaveToFile( output , destFileName );
cvReleaseImage( &output );
return 0;
}
hongqi162 2008-05-11
  • 打赏
  • 举报
回复
推荐使用Open cv
qkhhxkj102 2008-05-11
  • 打赏
  • 举报
回复
先坐下
JPEXE 2008-05-11
  • 打赏
  • 举报
回复
就如一楼的思路,你要先去搞懂JPEG的编码格式。至少搞清楚头/尾的格式标准。
blazingfire 2008-05-11
  • 打赏
  • 举报
回复
分割文件?

1,184

社区成员

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

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