当前位置: 首页 > news >正文

机械行业网站建设方案谷歌google

机械行业网站建设方案,谷歌google,网站服务器申请,宁波住房和城乡建设局网站首页近期公司组织了书画摄影比赛,本人作为摄影爱好者,平时也会拍些照片,这次比赛当然不能错过。为了提高获奖概率,选了19张图像作为参赛作品。但是,摄影作品要提交图像的光圈、曝光时间等参数。一两张还可以通过电脑自带软…

近期公司组织了书画摄影比赛,本人作为摄影爱好者,平时也会拍些照片,这次比赛当然不能错过。为了提高获奖概率,选了19张图像作为参赛作品。但是,摄影作品要提交图像的光圈、曝光时间等参数。一两张还可以通过电脑自带软件右键查看图像参数并一个个复制,但现在有19张,让我一点点复制还不如直接放弃参与了。谁让咱们还有一个身份是coder,那就现场手撸个小程序批量输出图像的EXIF信息。

开发需求很简单,就是能手动选取一个文件夹,然后读取该路径下的所有文件(图片),然后提取每张图像的exif信息,并将结果显示到界面,然后将Ctrl + A复制所有信息即可。在开发上,语言选择c#,搭配WPF框架,并选择ExifLib这个轻量化的EXIF信息提取库获取图像参数信息,下图是最终的提取信息。
在这里插入图片描述
XAML主要代码

    <Grid><Grid.RowDefinitions><RowDefinition Height="*"/><RowDefinition Height="auto"/></Grid.RowDefinitions><TextBox x:Name="textBox" Grid.Row="0"/><Button Content="请选择一个路径"  Click="Button_Click"  Grid.Row="1" Background="LightBlue" Margin="2,0,2,2" Padding="5" /></Grid>

cs逻辑代码:

		using ExifLib;private void Button_Click(object sender, RoutedEventArgs e){// 创建一个选择文件路径的对话框OpenFileDialog openFileDialog = new OpenFileDialog();openFileDialog.Multiselect = false;openFileDialog.CheckFileExists = false;openFileDialog.FileName = "Folder Selection.";openFileDialog.Filter = "Folders|no.files";Dictionary<string, string> dic_pathAndName = new Dictionary<string, string>();if (openFileDialog.ShowDialog() == true){string folderPath = System.IO.Path.GetDirectoryName(openFileDialog.FileName);// 使用 DirectoryInfo 类获取该路径下的所有文件DirectoryInfo directoryInfo = new DirectoryInfo(folderPath);FileInfo[] fileInfos = directoryInfo.GetFiles();// 处理获取到的文件foreach (FileInfo fileInfo in fileInfos){Debug.WriteLine(fileInfo.Name);//dic_pathAndName[System.IO.Path.GetFileNameWithoutExtension(fileInfo.FullName)] = fileInfo.FullName;//key为没有后缀名的文件名dic_pathAndName[fileInfo.Name] = fileInfo.FullName;}}if (dic_pathAndName.Count == 0) return;foreach (var dic in dic_pathAndName){Debug.WriteLine($"{dic.Key}:  {getImageExifInfo(dic.Value)}");textBox.AppendText($"{dic.Key}, {getImageExifInfo(dic.Value)}\n");}}string getImageExifInfo(string path){if (!File.Exists(path)) return "";string res = "";try{using (ExifReader reader = new ExifReader(path)){// 相机制造商if (reader.GetTagValue(ExifTags.Make, out string make))Debug.WriteLine("相机制造商: " + make);// 相机型号if (reader.GetTagValue(ExifTags.Model, out string model))Debug.WriteLine("相机型号: " + model);// 光圈if (reader.GetTagValue(ExifTags.FNumber, out double fNumber)){var fNumberFraction = FractionFromDouble(fNumber);Debug.WriteLine("光圈: F/" + fNumber);}string time = "";// 快门速度if (reader.GetTagValue(ExifTags.ExposureTime, out double exposureTime)){var exposureTimeFraction = FractionFromDouble(exposureTime);time = exposureTimeFraction.Item1 + "/" + exposureTimeFraction.Item2;}// ISOif (reader.GetTagValue(ExifTags.ISOSpeedRatings, out ushort isoSpeedRatings))Debug.WriteLine("ISO: " + isoSpeedRatings); 曝光时间//if (reader.GetTagValue(ExifTags.ExposureTime, out double exposureTime))//    Debug.WriteLine("曝光时间: " + exposureTime.ToString("0.##") + " s");// 焦距if (reader.GetTagValue(ExifTags.FocalLength, out double focalLength))Debug.WriteLine("焦距: " + focalLength.ToString("0.##") + " mm");res = $"{model} f/{fNumber} {time}s ISO-{isoSpeedRatings} {focalLength}mm";}}catch (Exception e){}return res;}private Tuple<int, int> FractionFromDouble(double value, double error = 0.0001){int denominator = 1;while (Math.Abs(value * denominator - Math.Round(value * denominator)) > error)denominator++;return Tuple.Create((int)Math.Round(value * denominator), denominator);}

以上代码直接复制、拷贝走,然后可以根据自己的需求输出想要的图像参数信息,并随意定义文本格式,爽歪歪。

http://www.yidumall.com/news/604.html

相关文章:

  • 做网站首页图的规格电池优化大师下载
  • 搜索引擎网站推广法 怎么做新网
  • 撸撸撸做最好的导航网站什么软件可以免费发广告
  • 胶州哪家公司做网站优化设计三年级下册数学答案
  • 网站专题页策划如何在百度发广告推广
  • 中山疫情防控最新通知搜索引擎优化的含义和目标
  • 动态网站设计心得网络互联网推广
  • 给做网站的寿全斋是真的吗seo优化推广多少钱
  • 第一次做网站选多大空间网络营销的方法有哪些?
  • 网站建设招标文件保定seo推广公司
  • 淘宝网站上的图片是怎么做的关键词优化搜索引擎
  • 服务器做视频网站免费手机网站建站系统
  • iis上部署手机网站网站软文是什么
  • 网站开发都是用什么做的自动优化app
  • 国外有做塑料粒子的网站吗网页制作软件有哪些
  • 织梦 网站根目录百度账号注册中心
  • wordpress博客站模板网站关键词优化网站推广
  • 肇庆搞产品网站的公司sem 优化软件
  • 网站建设装什么系统网站制作费用
  • 百度搜索网站包含的功能河南靠谱seo地址
  • 男做直播网站好新媒体seo培训
  • 网站 建设 场地 资金网址如何下载视频
  • 网站开发师招聘seo推广费用需要多少
  • 安阳做网站推广盐城网站优化
  • 南宁网站建设_seo优化服务公司站长工具seo查询软件
  • 上海网站建设设计免费网站大全下载
  • 网站开发商b站视频推广
  • 农业做的好的网站重庆整站seo
  • 青岛贸易公司 网站制作上海网上推广
  • 武汉响应式网站建设百度收录方法