将多个jpg文件以追加形式合并成一个文件_delphi教程
作者:网友供稿 点击:0
  西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!云服务器可在线rar解压,自动数据恢复设置虚拟目录等.虚拟主机免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金!
文章页数:[1] 
 

DFW里有朋友问:

有多个jpg文件,如:
1.jpg
2.jpg
3.jpg
......
怎样将这些文件以追加形式合并成一个新的jpg文件?也就是说1.jpg作为第一页,2.jpg作为第二页,如此类推.

想了一下,思路就是把每个jpeg文件解码成位图以后进行拼接再编码为jpeg

uses ..., Jpeg;
......
procedure TForm1.Button1Click(Sender: TObject);
var
  jp1, jp2, jp: TJPEGImage;
  bmp_t, bmp: TBitmap;
begin
  jp1 := TJPEGImage.Create;
  jp2 := TJPEGImage.Create;
  jp := TJPEGImage.Create;
  try
    jp1.LoadFromFile(C:\1.jpg);
    jp2.LoadFromFile(C:\2.jpg);
    bmp := TBitmap.Create;
    bmp_t := TBitmap.Create;
    try
      bmp.Width := jp1.Width;
      bmp.Height := jp1.Height + jp2.Height;

bmp_t.Assign(jp1);
      bmp.Canvas.Draw(0, 0, bmp_t);
      bmp_t.Assign(jp2);
      bmp.Canvas.Draw(0, jp1.Height, jp2);

jp.Assign(bmp);
      jp.SaveToFile(C:\0.jpg);
    finally
      bmp.Free;
      bmp_t.Free;
    end;
  finally
    jp1.Free;
    jp2.Free;
    jp.Free;
  end;
end;

这里两个原始jpeg图片的宽高都是一样的,如果图片宽度可能不一致那可以先计算一下所有图片的最大宽度,再画就行了。

由于懒得研究jpeg的文件结构和压缩算法,就拿delphi自带的Jpeg单元偷懒咯,呵呵


文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west.cn
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

相关主题
 
文章页数:[1] 
 
  
  热门文章
·如何在启动机器时自动运行adsl拨号(1)_delphi教程
·delphi的通配符比较(第五版)_delphi教程
·delphi托盘编程实战演练_delphi教程
·关于中文折行及相关问题的解决方法_delphi教程
·字幕图标控件_delphi教程
·一个很简单的加密算法_delphi教程
·winapi编程关闭qq登录窗体_delphi教程
·组件开发方式_delphi教程
·用ehlib二次开发报表打印程序,实现财务凭证的打印(三)_delphi教程
·delphi+汇编例子1(求和的比较)_delphi教程
  最新文章
·阻止windwos xp系统蓝屏的几大绝招_windows xp
·photoshop极坐标滤镜巧绘三维游泳圈_photoshop教程
·photoshop将美女照片转为手绘效果_photoshop教程
·zend studio5.5测试版 兼容三系统_php文摘
·photoshop调整图片对比度方法浅析_photoshop教程
·一个设置任意窗口透明度的命令行delphi程序_delphi教程
·photoshop基础教程:跟我学调色练习3-润色_photoshop教程
·windows xp空间:文件的属性也玩“花样”_windows xp
·轻松清理windows xp系统垃圾_windows xp
·配景的使用与创建_autocad教程

将多个jpg文件以追加形式合并成一个文件_delphi教程 bmp 合并 http://www.west.cn/www/info/58058-1.htm的更多相关文章

  1. windows下多个文件合并成一个文件

    如果你拿到的是一堆文件,那么你想把它合并成一个文件来使用,那么按下面的步骤,轻轻松松就可以搞定. 第一步:把所有要合并的文件放到同一个文件下面 第二步:在CMD里面进入到你的文件目录 第三步:输入如下 ...

  2. 将二级目录下的文件合并成一个文件的Python小脚本

    这个小程序的目的是将二级目录下的文件全部合并成一个文件(其实几级目录都可以,只要做少许改动) #coding:utf8 import sys, os def process(path): new_fi ...

  3. Qt技巧:Win7下打包发布Qt程序(解释的比较清楚,把exe和dll伪装合并成一个文件)

    转自:http://www.stardrad.com/blog/qt-5%E7%A8%8B%E5%BA%8F%E5%9C%A8windows%E4%B8%8A%E7%9A%84%E5%8F%91%E5 ...

  4. windows下将多个文件合并成一个文件,将ts文件变成MP3格式

    ①:先把全部的ts文件下载下来放到指定文件夹,这里我是放在桌面的ls里 ②:从cmd进去找到桌面的路径,也可以像我这样直接在桌面的路径上敲cmd进入: ③:直接合并使用命令“copy /b ls\*. ...

  5. shell 文件中列的整合成一个文件

    原文件 第一种方法 [root@wxb- jt]# paste -d "," b c d ,q, , ,e, ,r, ,t, [root@wxb- jt]# paste b c d ...

  6. python实现将文件夹内所有txt文件合并成一个文件

    新建一个文件夹命名为yuliao,把所有txt文件放进去就ok啦!注意路径中‘/’,windows下路径不是这样. #coding=utf-8  import os #获取目标文件夹的路径 filed ...

  7. gulp打包js/css时合并成一个文件时的顺序解决

    1.可以使用插进gulp-order. 2.可以这样的写法: return gulp.src(['js/common.js','js/**/*.js']) .pipe(concat('build.js ...

  8. 将多个sass文件合并到一个文件中

    将多个sass文件合并到一个文件中 应用场景:制作angular npm包的时候,定义的一些全局样式,自定义主题色这类的情况下,多个scss文件会要合并成一个文件并写到dist文件里,发布到仓库中. ...

  9. java中读取文件以及向文件中追加数据的总结

    package gys; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; imp ...

随机推荐

  1. [Python3] 014 集合的内置方法

    目录 1. Python3 中如何查看 set() 的内置方法 2. 少废话,上例子 (1) add() (2) 又见清理大师 clear() (3) 又见拷贝君 copy() (4) 找茬君 dif ...

  2. 中国剩余定理(CRT) & 扩展中国剩余定理(ExCRT)总结

    中国剩余定理(CRT) & 扩展中国剩余定理(ExCRT)总结 标签:数学方法--数论 阅读体验:https://zybuluo.com/Junlier/note/1300035 前置浅讲 前 ...

  3. Excel VBA批量处理寸照名字(类模块加FSO版)

    需求:因为处理学生学籍照片,从照相馆拿回来的寸照是按班级整理好,文件名是相机编号的文件.那么处理的话,是这么一个思路,通过Excel表格打印出各班A4照片列表,让学生自行填上照片对应姓名.表格收回来后 ...

  4. POJ-2528 Mayor's posters (离散化, 线段树)

    题目传送门: POJ-2528 题意就是在一个高度固定的墙面上贴高度相同宽度不同的海报,问贴到最后还能看到几张?本质上是线段树区间更新问题,但是要注意的是题中所给数据范围庞大,直接搞肯定会搞出问题,所 ...

  5. char 指针如何判断字符串需要输出长度

    先上代码: #include <stdio.h> #include <string.h> ] = "; int func1(const char *ip) { pri ...

  6. 好玩的Linux命令-1

    Ag:比grep.ack更快的归递搜索文件内容 1:首先在linux创建个sh文件->ag.sh 2:在ag.sh里面输入如下内容并保存 #!/bin/bash set -x TEMP_DIR= ...

  7. 03.LinuxCentOS系统root目录LVM磁盘扩容

    根目录LVM扩容操作步骤: [root@centos7 ~]# df -lh文件系统 容量 已用 可用 已用% 挂载点/dev/mapper/centos-root 50G 7.7G 43G 6% / ...

  8. 10.Linux-CentOS系统重启之后Xshell无法SSH连接(云环境)

    问题:云环境下CentOS系统断电或强制关机,再开机出现问题:Entering emergency mode. Exit the shell to continue. Generating " ...

  9. Vue build打包之后,刷新页面出现404解决方案

    Vue build打包之后,刷新页面出现404,HTML5 History 模式 原因分析: vue-router 默认 hash 模式 —— 使用 URL 的 hash 来模拟一个完整的 URL,于 ...

  10. Linux架构之Nginx 配置文件

    第42章   nginx相关配置文件 1.Nginx主配置文件 路径 类型 作用 /etc/nginx/nginx.conf 配置文件 nginx主配置文件 /etc/nginx/conf.d/def ...