图片管理系统需求分析说明书.doc_第1页
图片管理系统需求分析说明书.doc_第2页
图片管理系统需求分析说明书.doc_第3页
图片管理系统需求分析说明书.doc_第4页
图片管理系统需求分析说明书.doc_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

友好创达图片管理系统需求分析说明书北京友好创达科技有限公司数字化生产中心二零一三年二月摘 要 图片管理系统主要功能就是实现对计算机上常见的图像文件进行统一的管理操作,包括浏览,分类,信息的提取,查看方式的变换等,由于图片格式众多,而且常见的系统操作常常不能将非图片格式的文件进行过滤,给图片的查看造成了一定的不便,而且通常的查看文件属性需要比较,麻烦的操作步骤,我们在软件制作过程中将类似的操作作为默认的显示,另外可以按照自己的需要随时将工具栏,状态栏,目录树区域,预览区域选择为显示或者以隐藏,使图片视图区域显示面积增大。 另外我们设计了文件夹下所有文件的属性信息输出到一个文本文件中,可以方便的有针对性地对文件的属性信息进行处理,我们还设计了文件批量重命名功能,在文件命名杂乱的时候可以以一种有序的方式将文件名重新命名排序。图片的浏览往往会出现希望获取的颜色值的信息,颜色指示器的设计即为实现此功能,可以在颜色指示框内显示当前鼠标所在位置的颜色显示,而RGB值的数值表示也为我们的工作提供了很大的方便。 实现此系统除了必要的编程知识以外,还要获取多媒体,计算机文件系统,存储原理,等多方面的知识。我们在自己技术水平上进行了比较全面的探索,基本上实现了一个图片管理系统所应有的功能,并在软件的稳定性上,功能的丰富程度上,做了一定的努力和探索。关键字:图片格式 ,名字外壳空间 ,RGB ,REPORT视图, 动态链接库1 绪论1.1背景及意义 图像是对客观存在的对象的一种相似形描述,可以被存储,复制,加工.它是用各种观察系统以不同形式和手段观测世界而获得的.照片,绘画,电视画面等都是图像的直观例子.当然还包括对一些视觉无法直接观察到的物理图像和空间图像.比如红外图像,电磁场的图形描述.科学研究表明,人们通过视觉系统获得的信息量占所有信息量的75%以上.这说明图像对人们认知世界是极其重要的一个途径. 二十世纪中叶产生的计算机技术,自从发明以来就显示出蓬勃的生命力,图像的技术也在这个新的技术平台上有了新的应用,为解放人类生产力提供了重要动力.计算机技术以及微型芯片的不断进步,相关产品的大规模普及,使相关的应用领域迅速扩展到家用娱乐方面,为人们的生活添加了更加丰富的元素.目前数码相机的像素水平已经足以为我们提供足够清晰的数码照片,而计算机存储容量的增加为我们的存储提供了方便,而且计算机上功能强大的图像浏览,管理,处理软件也方便了人们的需求.再加上网络上资源极大的丰富,风格各异的艺术设计,摄影艺术等,我们需要管理的图片数量越来越大,当然随之而来的图片的分类,检索,相关信息的查看,图片名字的批量命名也成了人们的实际需求. 1.2同类系统发展动态1.2.1 网络管理(即C/S架构):主要以当前网络流行的网络相册为主,各大门户,社交网站,都提供了照片的而存储,及浏览.便于实现跨地域浏览以及分享.比如各大门户都有给用户提供相册功能,使用户可以方便的上传自己的图片,而且用户只要以用户名密码登陆可以在任何地点获取到自己的图片,而且可以方便的设立共享和非共享,是可以方便的与人共享自己的图片.有的邮件系统提供商将此功能集成在邮箱里.而同时时下比较流行的博客系统,社交网站,也会允许用户提供自己的图像空间.也有不少网络硬盘提供商免费提供网络硬盘,存储文件,图像当然可以作为文件上传,但是只能以名字判断内容,只有将图片现在下来才可以看到图像.优缺点,方便共享,异地访问,网络速度限制,除了网络硬盘提供可以保证完整性以外,有些系统会在用户上传以前对图像的大小进行处理,如果用户对图像质量要求严格的话,会有影响.网络安全方面的原因,图像的丢失,泄露,个人隐私的泄露,操作耗时,毕竟要通过远端进行相关操作,有一定的滞后性.有待于网速的进一步提升.1.2.2 单机版软件(单机模式):主要以本地主机内存储的图片为对象,功能强大.有些甚至有简单的图片处理功能.在本地安装的浏览管理软件主要是打开指定的文件,或者在某个文件夹下进行管理活动. 2 基础知识描述,以及相关软件介绍主要对图像相关的一些概念进行阐述,从最基本的光与色彩,人的视觉知,颜色空间,图像分辨率,像素,不同色彩空间的转换,图形与图像的区别,主要的图像格式.作为文件被存储在磁盘空间上的图像文件的存储方式,文件系统相关,shell相关以及理论上一个图像信息管理应该具有的功能。再就是写作论文以及实现软件时涉及的软件,VC+6.0,MS-WORD, CreateInstall Free 程序打包软件。2.1 RGB模型任何颜色C都可以可用光电三原色的三种基色:红(R=red:700nm)、绿(G=green:546.1nm)、蓝(B=blue:435.8nm) 配出:C = rR + gG +bB公式(3-1)其中,r、g、b为三基色的比例系数,满足r + g + b = 1;R、G、B为三基色的单位,分别为1、4.5907、0.060光瓦(因为用红、绿和蓝三基色光匹配成白光时,所需要的红、绿和蓝基色光的光通量之比为14.59070.0601)。用光电三原色混色,满足加色原理(参见图2-6):图2-6 光电三原色混色的加色原理如果每个像素的每个颜色分量(R,G,B)用二进制的1位来表示,那末每个颜色的分量只有“1”和“0”这两个值。这也就是说,每种颜色的强度是100%,或者是0%。在这种情况下,每个像素所显示的颜色是8种可能出现的颜色之一,如下表所示。相加色:RGB000001010011100101110111颜色黑蓝绿青红品红黄白表2-3相加色RGB模式适用于显示器这类发光物体。 RGB是由三种基本颜色Red红、Green绿、Blue蓝组成,每种颜色的亮度大小用数字0-255表示,共有1670万种颜色。 R=G=B=0 黑色 R=G=B=255 白色0R=G=Bm_pSelectedImage-GetHeight()/pDoc-m_pSelectedImage-GetWidth();显示区域的宽高比例为:fRatio=(float)nHeight/nWidth;在图片显示区域的宽,高等信息设置完毕后开始绘画这篇区域:CPreviewBar:OnDrawItem(.)软件启动以后可以设置显示框架的大小:CPreviewBar:OnLButtonUp()4.3 视图区域功能实现4.3.1视图区域主要由CThumbViewerView类实现 CThumbViewerView的继承关系图为: CWndCViewCCtrlViewCListViewCThumbViewerView图4-5CThumbViewerView的继承关系可以分为两种方式查看:默认的缩略图查看方式:CThumbViewerView:Onthumb()可以通过工具栏上的选择,实现详细信息查看方式:CThumbViewerView:OnReport()图片加载时需要调用: CThumbViewerView:LoadThumbImages()而上面的加载函数则要调用回调加载函数:unsigned _stdcall CThumbViewerView:LoadThumbNail()图片文件信息以及图像内容信息结构的在ThumbViewerView。h中定义struct StructCString filename;DWORD dwlength;int filetype;CString m_mtime;int hight; int width;int xdpi;int ydpi;缩略图列表主要由类型为CImageList实现,它的对象在ThumbViewerView.h中定义CImageListm_ImageListThumb;CImageList的继承关系如图:CObjectCImageList图4-5 CImageList的继承关系CImageList的创建函数为: m_ImageListThumb.Create()而ListCtrl 为了能够加载各对象的缩略图片,需要使用下面的函数进行关联:ListCtrl.SetImageList(&m_ImageListThumb, LVSIL_NORMAL); ListCtrl的背景颜色设置为: ListCtrl.SetBkColor(RGB(45, 100, 88);ListCtrl的类型为CListCtrl,其继承关系图:CObjectCCmdTargetCWndCListCtrl图4-6 继承关系图线程终极函数为: CThumbViewerView:TerminateThread()4.4 与视图功能相关的功能实现4.4.1 缩略图的信息提示功能信息提示功能主要是由CToolTipCtrl类实现,它的对象ToolTipCtrl在ThumbViewerView.h中定义: CToolTipCtrl ToolTipCtrl;CToolTipCtrl 类的继承关系图:CObjectCCmdTargetCWndCToolTipCtrl 图4-7 CToolTipCtrl 类的继承关系获得安全句柄: ToolTipCtrl.GetSafeHwnd()创建: ToolTipCtrl.Create(this,TTS_ALWAYSTIP)激活ToolTipCtrl.Activate(TRUE);向ToolTipCtrl发送消息:CThumbViewerView:PreTranslateMessage()ToolTipCtrl 添加显示内容的函数: CThumbViewerView:GetItemInfor()4.4.2 详细信息查看方式的相关功能列表属性信息插入ListCtrl.InsertColumn()列表个项目插入ListCtrl.SetItemText()列表单个属性的选择: CThumbViewerView:OnColumnclick()单个属性的排序函数: CALLBACK CThumbViewerView:CompareFunc()内部排序函数: CThumbViewerView:OnSortItem()4.5 颜色指示器的实现 鼠标当前指针的位置: GetCursorPos() 当前位置颜色的获取: COLORREF col = GetPixel() 状态栏RGB值的实现:m_wndStatusBar.SetPaneText() 工具栏上颜色指示框的的实现: pDC -Rectangle()4.6 路径指示器的实现 获取当前主框架的指针:CMainFrame* pFrame=(CMainFrame*)AfxGetMainWnd();获得活动文档:CThumbViewerDoc* pDoc=(CThumbViewerDoc*)pFrame-GetActiveDocument();路径的获取: pDoc-m_strCurrentDirectory4.7 目录下文件信息的输出主要由CThumbViewerView:OnOut()函数实现:创建输出文件的:CreateFile();输出文件的位置: C:Documents and SettingsAdministrator桌面 infor.txt获取listctrl的对象的数目:int num=ListCtrl.GetItemCount();获得文件的属性结构:Struct *pStruct =(Struct *) ListCtrl.GetItemData(j);4.8 文件的批量命名主要由CThumbViewerView:OnBatch()函数实现单个文件的重命名:CFile:Rename(path,newname);文件类型的获取:int n=type.GetLength()-type.ReverseFind(.);type=type.Right(n);4.9 调用图片查看器主要由CThumbViewerView:OnLButtonDblClk()获取文件的全路径:CStringpath = pDoc -m_strCurrentDirectory + pDoc -m_vFileNamenIndex;调用microsoft windows自带的图片传真查看器查看图片:ShellExecute(m_hWnd, open, path, NULL, NULL, SW_SHOWNA);4.10 打开软件的帮助文档主要由 CThumbViewerView:OnMENUITEMhelp()函数实现选择文档,主要是HTML文件,选择文档的打开方式: Microsoft IEHWND h=FindWindowEx(NULL,NULL,NULL,Microsoft InternetExplorer)文件的打开:ShellExecute(h, open, ./help/index.html, NULL, NULL, SW_SHOWNA);4.11 几个重要工具条的隐藏和显示4.11.1目录树的显示与隐藏CMainFrame:OnViewDirectoryBar()隐藏:ShowWindow(m_wndDirTreeBar.m_hWnd,SW_HIDE);显示:ShowWindow(m_wndDirTreeBar.m_hWnd,SW_SHOW);预览栏

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论