用C++开发图片批量处理软件

来源 :中国教育信息化·高教职教 | 被引量 : 0次 | 上传用户:lemayn
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  一、需求分析
  
  笔者从事国画教学工作,但也是一个编程发烧友,在长期从事画画的创作中,利用信息化手段,将创造作品保存到计算机里,通过网络可以和同行进行交流,也可以将自己的作品公布到网站上,为教学研究开创了一条创新之路。但在通过网络交流的时候遇到了一个很大的问题,用数码相机或者扫描仪,获取的图片字节数太大,少则几兆,多则几十兆,给网络传输和网站公布都带来了不少的麻烦,通过PS能够将这些大字节数的图片文件处理为大小适中的图片(以便使备份与同行相互远程传输也显得比较容易)。但不能够自动批量处理,而其有版权的问题,经过半年的努力,笔者用C 开发了自动批量处理的图片处理软件。
  软件开发考虑到可应用到其他领域,因此需考虑通用的因素,软件进入界面如图1所示。
  
  
  二、软件功能
  
  1.视频浏览:如果当前文件夹下有视频文件,可以进行浏览,只能播放mpeg格式,如果图片文件列表第一个文件是视频格式文件,就自动播放,如果要处理图片文件,单击“结束视频”。
  2.转换图片:单击文件列表框文件,单击“转换设置”显示当前选准图片的像素高度和宽度,保持图片纵横比保持图片不变形,输入要转换的像素数据,按照原图片的纵横比计算相对应的像素,并加以显示。选择“转换当前图片”,是指转换当前选准的图片,选择“连续转换”是指自动连续转换左边文件列表框内的所有图片文件,按照统一像素尺寸、同一格式进行转换,这种情况适用于图片大小格式一样的一组照片;“转换文件另存”是指转换成的目标文件另存为,原文件名_1.jpg,
  “覆盖原文件”是指转换动作完成生成的文件名就是选准的文件名,将原文件名覆盖,这种覆盖无法恢复。
  3.可用于教师编写专业教材时,对教材插图的处理,利用单个图片文件的处理。
  
  三、代码实现
  
  单击“执行”(Button7)事件函数
   void__fastcall TForm1::Button7Click(TObject *Sender)
  {
  Form1->Button8->Enabled=false;
  Form1->Panel6->Visible=false;
  if(Form1->RadioButton1->Checked==true)//转换当前图片
   {
  ppc=ppc.LowerCase();
  int k=ppc.Pos(".jpg");
  int k1=ppc.Pos(".jpeg");
  int j=ppc.Pos(".bmp");
  if(j>0 || k>0 || k1>0)
   {
   WRJPG(ppc);//-----转换函数
   Application->MessageBox("图片大小转换成功","信息",48);
   Form1->FileListBox1->Update();
   }
  else
   {
   String kdv="";
   kdv=kdv ppc "不是图片文件,所以无法转换";
  Application->MessageBox(kdv.c_str(),"信息",48);
   }
   }
  if(Form1->RadioButton2->Checked==true)//连续转换
   {
   int mk=Form1->FileListBox1->Items->Count;//获取图片文件列表总数
   int ndkf=0;
  Form1->ProgressBar1->Min=0;
  Form1->ProgressBar1->Max=mk;
  Form1->ProgressBar1->Visible=true;
  for(int i=0;i<mk;i )//---执行连续转换循环
  {
   Form1->ProgressBar1->Position=i;
   Application->ProcessMessages();
   ppc=Form1->FileListBox1->Items->Strings[i];
   ppc=ppc.LowerCase();
   int k=ppc.Pos(".jpg");
   int k1=ppc.Pos(".jpeg");
   int j=ppc.Pos(".bmp");
   if(j>0 || k>0 || k1>0)
  {
  try {
   Form1->Image1->Picture->LoadFromFile(ppc);
   ndkf=ndkf 1;
   WRJPG(ppc);//--核心转换函数
  }
  catch(...){}
   }
  }
   Form1->ProgressBar1->Position=mk;
   Form1->ProgressBar1->Visible=false;
   Form1->FileListBox1->Update();
   String dkc="";
   dkc=dkc "共有" IntToStr(ndkf).c_str() "个图片文件进行成功转换"; ;
   Application->MessageBox(dkc.c_str(),"信息",48);
   }
  Form1->Button8->Enabled=true;
  }
  核心转换函数WRJPG();
  void __fastcall TForm1::WRJPG(AnsiString filename)
  {
  if(p<=0 || q<=0) return ;//转换像素的宽度和高度
  if(p>0
其他文献
摘 要:本文阐述了视频公开课的建设背景,并以武汉大学视频公开课录制为例,从教师方面和后期的视频编辑等方面阐述视频公开课中出现的问题,并提出了解决办法。  关键词:视频公开课;武汉大学;问题  中图分类号:G434 文献标识码:A 文章编号:1673-8454(2014)15-0044-03  随着时代的发展,网络技术越来越发达,网络技术的发展使人们学习的方式和途径都发生了改变,同时教师教学的方式和
近期,班上新来了一名小朋友,他性格内向,来班上3个月了,我从没听见他和别人说过话,也从没看见过他笑。这究竟是什么原因呢?为了让他能尽快适应新环境,我决定多方尝试。  孩子们总希望获得老师的关注,刚入园的幼儿与班里小朋友们不熟悉,通常也更愿意和老师亲近。我尝试利用这一点来帮助慈慈。每天早上来园,我都微笑着和慈慈打招呼,可慈慈却视而不见,从不给我回应。他进班时从来不看着老师,头总是低着,直到老师叫住了
染完的头发如何保持鲜亮和持久?固色护色方案了解一下。   模特:蒋瑞琪   拼色褶皱连衣裙   Givenchy   发色潮流每年都在变,去年流行“奶奶灰”,今年又来“雾霾蓝”。唯一不变的是,再好看的发色都不出一个月就掉得七七八八。头发褪色是肯定会发生的,但是我们如何尽可能地延缓这个过程?人头发的颜色由发丝中的真黑素(黑棕)和褐黑素(黄红)的比例和数量决定。简单来说,染发是利用染发剂中的碱性成分,
编 者 按  随着脑科学研究的快速发展,推动脑科学、认知科学、教育学等多学科交叉协作得到了世界各国政府的高度重视,成为许多国家教育发展战略的基础。本期刊登的文章《幼儿教师脑科学素养状况与提升对策》及《计划单支持大班幼儿在区域游戏中培养计划与反思的能力——基于脑科学的初步探索与尝试》,呈现了幼儿园教师脑科学素养现状以及脑科学视角下对提升幼儿教师游戏指导能力的有益探索。  当前,为落实学前教育普及、普
当前,幼儿园和家长对家园合作的重要性正在逐渐形成共识,而家园合作能否有效开展很大程度上依赖于家园沟通。沟通能力是幼儿教师的一项基本功,更是幼儿教师职业素养和专业能力的重要体现。基于对家园沟通现状的了解,我们发现很多教师虽然理念上重视家园沟通,但仍然存在畏难情绪和逃避心理,这种现象在年轻教师身上更为普遍;还有的教师在与家长沟通过程中乐于扮演权威角色,对家长发号施令或者无视家长的实际特点和需求,引起家
计算能力是最基础的数学能力之一。从事小学数学教学工作的教师反映,在教学过程中学生面对同一类型的习题总会屡屡出错,如果将小学生计算中产生错误的原因统统归咎于“粗心”,这是很不合理的。本文作者认为学生在计算过程中错误出现的原因是多样化的,作者联系教学实践,将“粗心”的原因进行客观的剖析,同时探究纠正计算错误产生的对策。  一、注意力不集中  这是小学生年龄小、认知能力、自控能力差等自身因素造成的,因为
棋类游戏是大班幼儿喜爱的活动形式之一,有助于促进幼儿初步的逻辑思维能力的发展、培养幼儿的规则意识及正确看待输赢的良好心态,是促进幼儿社会性发展的有效途径之一。然而,在棋类游戏中,我班幼儿常常出现不遵守游戏规则或规则意识不清、好胜心过强而“输不起”等行为表现。由于个体差异大,教师需要过多投入在一对一指导上,常感力不从心。因而,我们不禁思考:除了教师的直接介入与指导外,还有哪些棋类游戏支持策略能够有效
相信很多中学生朋友都拥有自己的手机,其中不少还是智能机。下载、体验各种新鲜、好玩的APP(手机应用程序),也已经成为课余生活的一道风景。不过说真的,你有想过自己来开发一个APP吗?  一个APP的诞生  打开网址“app.ourschool.cn(中学生应用基地)”,你会看到十几款有趣的软件(游戏)。其中一款标识着自行车符号的,是目前下载量最大、也是让浙江师范大学附属中学“安卓创意小组”声名鹊起的
概率是反映现实世界随机现象的数学模型,它既有现实应用意义,又能训练同学们的数学思维。正确解决概率问题,关键在于掌握六种概型的含义及特点,并能识别实际概率问题是属于什么概型。本文精选例题,通过一题多问,引领同学们在对比中加深对六种概型的理解,提升对概率问题的求解能力。
摘 要:本文通过江西师范大学教学管理信息化建设现实案例,启示教学管理信息化建设的重要性,提出要将人为管理转变为信息技术管理,集中全校师生智慧,采取问题倒逼的办法,自主开发和完善信息技术管理系统,加强学院信息化教学管理的考核监管,从整体上提高教学管理信息化水平。  关键词:信息技术;教学管理;办学水平  中图分类号:G203 文献标志码:B 文章编号:1673-8454(2014)15-0063-0