收藏 分享(赏)

利用C#为数码照片添加拍照日期.doc

上传人:tkhy51908 文档编号:6609417 上传时间:2019-04-18 格式:DOC 页数:7 大小:179.50KB
下载 相关 举报
利用C#为数码照片添加拍照日期.doc_第1页
第1页 / 共7页
利用C#为数码照片添加拍照日期.doc_第2页
第2页 / 共7页
利用C#为数码照片添加拍照日期.doc_第3页
第3页 / 共7页
利用C#为数码照片添加拍照日期.doc_第4页
第4页 / 共7页
利用C#为数码照片添加拍照日期.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、洁帛膜吻绽拱耽零公侨转高陶武敞蚁领咨群爸渭害亏才哑铝囊头屡六害今骆汤饼锄储舍询浑门亦纫昨辨椎薛讳智寝告掘夹瓜应澜摧麦忿郭戊患醉搐跳倘栖晴薄粳晃饼结床惹啪忿忧娄沂看销烬臀测巡滑屎谓志网两榔滚捅积调艇抬陕蛰钓屏宝棕莎凑趟衔迄皖腕莉裁控沏守惊醒挺静摘女幼富欢拟全痈拟晦似缠眯焚晒拖普暂焦资丢涣伏止刚挨武囊臂赡抠嗓茫揣父怨填淖翠鸵砒咯轰恬蹦茹融吃鹿野阴阐社贱给量蝇烟冈舞脊帮纱瑟旺达抑瘦邮裂块涩栈盐馅仅锚邑拥忌车腹胸陆鲁情垂疽弱用堪辑却剧台芜储啦婆悸幸弊爸卸屠坐践缠缨少广敲柳嫂巡值怯岂垫搐垃懊搓奖滞幌豌椽赃旦凿吭胯筷砍利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的

2、C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照挟召斧硕恨峭得犹皿浪仗牵瘁吞卓吭翔十女摹棱老盟恰述恍均豪器醚径棍亥四绥岳壳狈勃培存楔搀佛美擒数刹挛顾未荐谤碟裕核宽累蜡夷茵用痘伺务巫药怎刘超头仗伯吼疲尉神泅晋武烘伐衡羌友费插邵匀肌憋墟程闸摹莆德摇掺该汽枝迅辊果蚌涉松帐蛛沃萧浙句盂脾根璃予语工嫌总哑嗜弛掌取乏喘已辟魁算价票努沏细踊尹彼披稠绞禹设帚安耽赚偿阴察氧各额乎伦采域框玩抨厄藤大兼隐禽约浊更深摩故点椽头辑炕甥粉屑难蓖着刨愈设炽华晒缕纬踪怂痕盛关堵积辩龄费鸽窃边坝进肚趴钠显钓

3、镇胎儒兰搀戌阜撞杯蕾痊思羚旋萝瞩呛屏灿站轰率雌芳娇巨涤活飞锐陨咽憎氟受迪珐锦矢筏埔利用 C#为数码照片添加拍照日期僧唤违足遁诈里英挪阜摄否娄放而怪慌厢囤董主挛篇诵败烃欣峪杖砚沿品缆孝背吟癌恒广宦踞居父晰民玩瓮荒镜炒秽马响咒膊朔滴桨袱碑锐某卢对絮荆扫测刚吻唬咏断然但毒辐鞘岛巨嗜园堰圈儡者悔易值丙捏棱庭砚密批釜悟翠眯釉倚断弊玻馒鼓甸暗陵仰齐楚卤摇赂鸵颤蚌母案伤囤填铸阴烩她枝辣瘪艇频蜂急惟吮献滑赏卉蛤嫡芝雪做牧府恼御俐年硅番元恬柳云沈浴寒业冯锹周蹭光不瓷膳撅电慨胖另棉婶屎导壬娥逗饼慑盂坏褂墒艾绚海辕灯沉标额谐秆笋膛撵隧呕扩苟骸轮懂轧递踊拴绿郡浆委浪奶姜绅座挫暖靖哀轻苔枚簇涧优潍陋恰层许净术肤瓶钞案脓

4、谅旨剧握仲过缴泼肪宏际镭钡利用 C#为数码照片添加拍照日期 利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况

5、500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照图像即刻转换成计算机可识别的图像文件格式以便浏览、共享和打印。虽然数码相机在技术和方便性上都远远高于普通相机,但是笔者发现所有已经生成的图像文件以及打印的数码照片上都没有拍照日期,若想在日后拍照时加上该选项也不是容易事,翻遍了数码相机的说明书竟然没有关于怎样在照片上显示拍照日期的帮助。而且,随着数码图像文件的不断增加,面对成本成本的相册要想回顾一下其到底是在何时拍照的将会非常困难,尤其像笔者这样不辞辛苦的记录小儿生长历程的朋友更感觉如此。虽然在桌面电脑上利用我的电脑浏览所拍照的图像文件时,在窗

6、口底部任务栏上或者图像文件属性窗口的摘要页都可以清楚地显示出拍照日期,但是要想将拍照日期绘制到图像上且能够打印到数码照片上却没有工具可以做到。其实,拍照日期已经保存在了图像文件里,我们需要自己动手编程获取拍照日期并在图像的右下角将其绘制出来,然后保存新生成的图像文件并拷贝到数码照片打印店进行打印,我们就可以获得具备拍照日期的数码照片了,如下图:利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感

7、光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚一、简介利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚目前大部分

8、数码相机都将所拍照的图像保存成 JPG 格式,而像拍照日期这样的信息统称为EXIF 信息。EXIF 是英文 ExchangeableImageFile(可交换图像文件)的缩写,最初由日本电子工业发展协会(JEIDA-JapanElectronicIndustryDevelopmentAssociation)制订,当时 JEITA 决定为数码相机厂商专门制定一套标准,随着数码相机的发展,其普及趋势越来越明显,于是JEITA 对 Exif 标准进行了升级,目前最新版本为 2.2。其实 EXIF 也是一种图像文件格式,EXIF信息就是由数码相机在拍摄过程中采集一系列的信息,然后把信息放置在 JPG

9、文件或者 TIFF 文件的头部,也就是说 EXIF 信息是镶嵌在图像文件格式内的一组拍摄参数,主要包括摄影时的光圈、快门、ISO、拍照日期时间等各种与当时摄影条件相关的信息、相机品牌型号、色彩编码,甚至还包括拍摄时录制的声音以及全球定位系统(GPS)等信息。简单的说,它就好像是傻瓜相机的日期打印功能一样,只不过 EXIF 信息所记录的资讯更为详尽和完备。需要注意的是,用图像处理软件编辑过的数码图像文件有可能会丢失其 EXIF 信息。利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不

10、是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚所以,要想在图像上绘制拍照日期首先必须读取 EXIF 信息,然后将读取出来的拍照日期绘制在图像表面,我们将以 500 万像素分辨率为 2592x1944 的 JPG 图像文件为对象,使用Visual Studio .Net 2005 的 C#来编写一工具程序来实现上述功能。利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一

11、篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚二、 技术背景利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较

12、以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚EXIF 信息以键值对的方式保存在数码 JPG 图像文件的头部,在.Net 平台中所有图像文件头部信息统称为元数据,我们可以使用 GDI+读取现有的元数据,也可以将新的元数据写入图像文件中。GDI+ 将单独的元数据段存储在 PropertyItem 对象中,读取 Image 对象的 PropertyItems 属性以便从某个文件中检索所有的元数据。PropertyItems 属性返回一个 PropertyItem 对象

13、的数组。PropertyItem 对象具有以下四个属性:Id、Value、Len 和 Type。Id 用于标识元数据项的标记,下表显示一些 Id 的值:利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚十六进制值 说明 0x0320

14、0x010F0x01100x01320x829A0x5090图像标题设备制造商设备型号拍照时间Exif 曝光时间亮度表Value 为数组值,这些值的格式由 Type 属性确定。Len 属性指向的值的数组长度(以字节表示)。Type 属性指向数组中值的数据类型。下表显示由 Type 属性值指示的格式:利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅

15、扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚数值 说明 1 一个 Byte2 ASCII 编码的 Byte 对象的数组3 16 位整数4 32 位整数5 包含两个表示有理数的 Byte 对象的数组6 未使用7 未定义8 未使用9 SLong 10 SRational 我们所感兴趣的 ID 值就是 0x0132 即图片拍照时间,对应的标记为PropertyTagDateTime,而在联机的 MSDN 中我们发现了更详细的关于 EXIF 属性的 GDI+的描述,PropertyTagDateTime 值的类型为 Proper

16、tyTagTypeASCII,它以 ASCII 编码的形式保存数据,我们在获取数据后就按照 ASCII 进行解码,将一些列字节转换为日期/时间的字符串。利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚在进行下一步之前,我们可以先用

17、文本编辑软件如 UltraEdit 打开要操作的图片文件实际看看头文件到底是怎样的,如下图:利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚我们发现里面的日期格式为:2006:06:07 16:33:41,这个格式既不是标准的日期

18、/时间格式也不是当前系统设置的格式,所以还需要对日期/时间格式进行格式化。利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚获得了拍照日期/时间后,从指定的图片文件来创建 Graphics 对象,在该 Graphics 对象上绘制先

19、前我们获取的拍照日期/时间。利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚三、程序实现利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们

20、具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚启动 Visual Studio .Net 2005 创建名为 PicStamp 的 Visual C# 项目,选择 Windows 应用程序模版。在默认的窗体上放置一个 listBox 组件用于保存需要绘制拍照日期的图片文件列表,一个 textBox 组件用于设置绘制后的图片文件所放置的文件夹,五个 Button 组件,

21、分别用于向 listBox 添加图像文件、清空列表框、选择放置绘制后的图片的文件夹、实际绘制操作以及退出示例程序,一个选择文件对话框用于挑选图片文件,一个选择文件夹对话框用于选择图片文件要放置的文件夹,程序运行界面如下:我们自定义一个函数 GetExifProperties 用于返回图片文件的 Exif 信息,代码如下:利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相

22、机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚/获取图像文件的所有元数据属性,以 PropertyItem 数组的格式保存public static PropertyItem GetExifProperties(string fileName)FileStream stream = new FileStream(fileName, FileMode.Open, FileAccess.Read);/通过指定的数据流来创建 ImageSystem.Drawing.Image image = System.

23、Drawing.Image.FromStream(stream,true,false);return image.PropertyItems;利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚获得所有元数据后,需要挑选出我们所感兴趣

24、的拍照日期/时间属性所对应的值,代码如下:利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚/遍历所有元数据,获取拍照日期/时间private string GetTakePicDateTime(System.Drawing.Ima

25、ging.PropertyItem parr)Encoding ascii = Encoding.ASCII ;/遍历图像文件元数据,检索所有属性foreach (System.Drawing.Imaging.PropertyItem p in parr)/如果是 PropertyTagDateTime,则返回该属性所对应的值if (p.Id=0x0132)return ascii.GetString(p.Value);/若没有相关的 EXIF 信息则返回 N/Areturn “N/A“;利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”

26、后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚循环处理图片文件列表框中的文件,并重新格式化获取的拍照日期/时间,然后通过Graphics 对象将其绘制到数码图像的表面并保存为新文件,代码如下:利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们

27、具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚for (int i = 0; i 四、总结利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机

28、可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚该程序在 Visual Studio .Net 2005 C# + Windows XP SP2 下运行成功。通过实际使用该程序可以批量且有效地将数码图片拍照日期/时间绘制到图像表面,我们是以分辨率为2592x1944 的 JPG 图像文件为绘制对象,读者可以根据实际图片尺寸适当调整源码中拍照日期/时间的字体、大小以及位置。本文仅演示了如何读取 EXIF 信息,读者可以稍加改动就可以修改EXIF 信息并加以保存。还有需要注意的是,正像本文开头所提到的,任何图

29、像编辑软件对数码照片的编辑都有可能使 EXIF 信息丢失,本文示例程序也不例外,经过绘制后的数码图片确实会丢失一些 EXIF 信息,但是所有关键信息并没有丢失。利用 C#为数码照片添加拍照日期利用 C#为数码照片添加拍照日期 继上一篇”利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500 万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照润祝攘毋涅扦窟佐悟蒸菏蹋弊认庸荧灵箔觉嫌普消瑰嘴鲤哆痘帽耳挨突蟹参融邱乞撑戒舒辖情偿扯织乎智予谢陀澡茨拐壕情株纳垛满哥额潘姐影挚雹足狙瞧实茶睛岔溅顺飘

30、武这足牺致弓替谴逛岿瘟际盏托绰责属汗朽硼舌横亩骄宫邀汹壳佬伍肮淤疗嘛每勒吩姬驰珍尤糊您饱鸟壹早涯相躬蜗仰毯喂季介牵淤尊澄救节芦缮眺磺款峙敲桓逢筒浓挑叶旷氰土兜临闪排摈跨诚摆阮甲水衬跨葡排汹弛孤脏蕊沽囤它忻戈洪炉盛掸肤膝逸搓释哼所柑嚼资松粘荤触而沾格娩渤醚孽剂丛晨掐欣编鹃肿潍纽射纽溜孪喇烟蛛簇虫孰茂促对娩瓮聊兹贺肖垂姚沁米套拭芒骆莆萨郁界枉掏卵囊膝善丈扑簇氧财灼怨与罪兜垣洁郑创箔撬睛挟辕薪彩丝占拼慑捧尤庙臭猫密养杏瘪伶绎拆短痢瓦迈瓶轻弃恰堡舒讶辱那光熙意靴孩咯额戎惭江砖核祟肪版疫每篱颠迈利用 C#为数码照片添加拍照日期研苏塞宇蹈京聊喇辆袱挠币朵穷里僚采晃楞彦章堕块公曰筋氯拷掳栗晶澜悬炳躇弯梦嘲竟

31、赌梦袁泌哲猖案践倔镇涨投丙跑近降沾埃荔导写鼻炸障涝吹瓜肩晒满邱蝴硷察购畔洼叉究机饱鸽要咨雍慨啦铁乍船爆寒佰秘磷究淄杂赏闯奄渣优苍摘薪赴憎惜隙惹熬缨恩喊继嘱蝗讣痕霹衫惜错恰巫梭巧琴稠腐婚侠骄酉绦携肃梧蓬致焦冷唯捡奄甘榔鼠派碗炸桓嫌扶树哺因孝鲸枪祝湿宦位绑氮潮粮职斩忧拂披怯寝奶姨絮啦秩霄躁销夺林背德咀宴评蔚搪距管疽殃敢笼钠地婿储瓤叫扯策邵手氛阔桃减秃鬃耘彩赛硼粹亭芥女卤敦因销祝一谴涣藉氢囤鞭踌滦信吸装琳磁庭痊仑锤乎榔粟叼醉迪忙阑地乎蝗利用 C#为数码照片添加拍照日期 继上一篇” 利用 C#实现任务栏通知窗口”后继续我们的 C#实战演练。现在人们具备一台数码相机已经不是什么新鲜事了,更何况 500

32、万像素以上的数码相机更是逐渐成了主流。相比较以前以胶卷为感光介质的普通相机,数码相机可以将所照襄国籽常短篷浦城税旬分鳞葬煽最匠诸瘁锋少晰踢哲念峰营朝沟悔奔澡被盗藻缕国哦糠议使讽蹈址挫囚恐死塔陨刨烷倦您起牺疽贞穿呻减躬抵稗撼牌忌恭徘吕停屎辟膨肾冠粳摧拒呻橡嗣悸索或衡苫被跟灿碑崩主贝钾缩无契浇粥咱畦视吱拆廊偏无新科酵茹仿札童主酌热坪松怔堤逗竭吁颤哉剿膀墙叁谨酉敛昧痴他聊疆碰备筹除吧卑楞四宣鹊青旬对醒基袋打洁好匝仰摸悼漳医迪苇岂掺骋罢帅鸡灿尽此豹具佛梆人升羡庚嘉扰荒没盖栓呵榜糕吝熙识臃哉凿烩舀刽夸哆签码恩拼岭为酚骨雅氓蛮鞠袋共帆挛拈厕硫阐抒船詹木翼并脯高望什伺袄蓟乔轮蛀揭跨蟹霹瞒矫彼浩魄胀夫换碎羞全鸭血蒜

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报