首页 > 编程语言 >C# generate thumbnailimage via System.Drawing

C# generate thumbnailimage via System.Drawing

时间:2024-08-27 17:27:33浏览次数:9  
标签:via C# System destDir Windows IO using MainWindow

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows; 
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input; 
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Drawing;
using System.IO;
using System.Reflection;

namespace WpfApp294
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            ThumbDemo();
        }

        private void ThumbDemo()
        {
            var imgsList = System.IO.Directory.GetFiles(@"../../Images");
            int imgsCount = imgsList.Count();
            string destDir = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "ThumbImages");
            if(!Directory.Exists(destDir))
            {
                Directory.CreateDirectory(destDir);
            }
            for (int i=0;i<imgsCount; i++)
            {
                using(FileStream fs=new FileStream(imgsList[i], FileMode.Open, FileAccess.Read))
                {
                    Image originalImg = Image.FromStream(fs);
                    int thumbWidth=100, thumbHeight=100;
                    Image thumbImg=originalImg.GetThumbnailImage(thumbWidth, thumbHeight,null,IntPtr.Zero);
                    string thumbFile = System.IO.Path.Combine(destDir, $"{System.IO.Path.GetFileNameWithoutExtension(imgsList[i])}_thumb.jpg");
                    thumbImg.Save(thumbFile);
                }
            }
        }
    }
}

 

标签:via,C#,System,destDir,Windows,IO,using,MainWindow
From: https://www.cnblogs.com/Fred1987/p/18383181

相关文章

  • Java语言-SpringCloud架构-EMS能源管理系统(水-电-气-热-油等数据采集分析系统)
    Java语言-SpringCloud架构-EMS能源管理系统(水-电-气-热-油等数据采集分析系统)介绍适用于高能耗企业、建筑、工厂、园区的水、电、气、热、油、空压机等能源数据采集、分析、报表;基于SpringCloud的能源管理系统-能源管理平台源码-能源在线监测平台-双碳平台源码-SpringCloud......
  • ISSCC submission checklist
    manuscript和figure使用官网提供的模板(manuscript使用ArialNarrow字体,12pt,单栏,双倍行距,figure在2024年更新了模板,直接把图片导入模板中即可)manuscript和figure分别提交(以pdf形式)manuscript连带标题空格等不超过10000总字符数(注意是字符数),标题建议12-14个词,但略微超出问题......
  • DocKylin: A Large Multimodal Model for Visual Document Understanding with Effici
    DocKylin:ALargeMultimodalModelforVisualDocumentUnderstandingwithEfficientVisualSlimmingarxiv:http://arxiv.org/abs/2406.19101视觉处理器+LLM:视觉处理器:SwinTransformer创新点:通过:1、去除图片冗余像素;2、去除冗余token。来减小模型中的视觉处理器的参数量......
  • ComfyUI-插件IPAdapter图片融合(附插件)
    哈喽大家好,前两期介绍了IPAdapter的风格迁移和人物形象迁移,这期来分享下如何利用IPAdapter实现两张图的融合参考图1参考图2融合图图片融合1、工作流将基础工作流中的【IPAdapterUnifiedLoader】节点换成【IPAdapterUnifiedLoaderCommunity】【IPAdapter】节......
  • 掌握ECharts:绘制动态心率区间数据可视化图表
    例如一组数据8点-9点值是10-20,9点-10点值是30-40,10点-11点值是40-59思路:通过设置不同系列的stack属性相同来让它们堆叠在一起,同时利用透明色和实色来分别表示区间的最小值和范围。代码如下:option={xAxis:{type:'category',data:['08-09','09-10'......
  • esp-idf vscode debug command 'espIdf.getXtensaGdb' not found
    esp32idfvscodedebug错误vscode中配置文件采用的是正点原子的,调用gdb的时候,提示报错,找不到相应的命令launch.json文件中gdb的配置如下{"version":"0.2.0","configurations":[ { "name":"GDB", "type":"cppdbg", &......
  • can 120Ω 得作用
    CAN总线终端电阻,一般来说都是120欧姆,实际上在设计的时候,也是两个60欧姆的电阻串起来,而总线上一般有两个120Ω的节点CAN总线终端电阻的作用有3个:1、提高抗干扰能力,让高频低能量的信号迅速走掉2、确保总线快速进入隐性状态,让寄生电容的能量更快走掉;3、提高信号质量,放......
  • EF架构~对不起Include,是我冤枉你了!
    EF架构~对不起Include,是我冤枉你了! 回到目录之前一起认为EF的延时加载存在性能问题,主要体现在一对多关系上,它会增加与数据库的通讯,而EF本身也提供了“立即加载”include,今天主要说一下它,经过实验,证明如下:最初接触EF延时加载时,以为只存在这种性能低下的方案,在了解include方法......
  • Android开发 - Application 基础类全局的应用级状态管理解析
    Application是什么Application是一个基础类,用于全局的应用级状态管理。它在应用程序启动时被创建,并在应用程序关闭时销毁。Application对象的生命周期与应用程序的生命周期一致,因此它非常适合用来保存全局的应用状态信息或初始化全局资源Application的主要作用全局状态管......
  • JDBC概述
    前言1、JDBC是什么?JavaDataBaseConnectivity(Java语言连接数据库)2、JDBC的本质是sun公司制定的一个接口。在java.sql.*包下。为什么SUN需要制定一套JDBC接口?因为每一个数据库的底层实现原理都不一样。Oracle数据库有自己的原理,MySQL数据库也有自己的原理,MSSqlServer数据库......