C#,生成图片的指定尺寸缩略图的源代码

编程的时候经常用到图像的缩略图。

本文发布一个用于生成指定尺寸的缩略图的简单方法。

1 文本格式

private void button1_Click(object sender, EventArgs e)
{
    CreateThumbnail(@"demo.jpg", @"demo_thumb.jpg", 128, 128);
}

private void CreateThumbnail(string imgFile, string thumbnailFile, int w, int h)
{
    try
    {
    using (Image img = Image.FromFile(imgFile))
    {
        Image.GetThumbnailImageAbort callback = new Image.GetThumbnailImageAbort(ThumbnailCallback);
        img.GetThumbnailImage(w, h, callback, IntPtr.Zero).Save(thumbnailFile);
    }
    }
    catch (Exception ex)
    {
    throw new Exception("Image to Thumbnail error!");
    }
}

public bool ThumbnailCallback()
{
    return false;
}

2 代码格式

private void button1_Click(object sender, EventArgs e)
{CreateThumbnail(@"demo.jpg", @"demo_thumb.jpg", 128, 128);
}private void CreateThumbnail(string imgFile, string thumbnailFile, int w, int h)
{try{using (Image img = Image.FromFile(imgFile)){Image.GetThumbnailImageAbort callback = new Image.GetThumbnailImageAbort(ThumbnailCallback);img.GetThumbnailImage(w, h, callback, IntPtr.Zero).Save(thumbnailFile);}}catch (Exception ex){throw new Exception("Image to Thumbnail error!");}
}public bool ThumbnailCallback()
{return false;
}


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/427635.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Web前端开发基础】CSS3之Web字体、字体图标、平面转换、渐变

CSS3之Web字体、字体图标、平面转换、渐变 目录 CSS3之Web字体、字体图标、平面转换、渐变一、Web字体1.1 Web字体概述1.2 字体文件1.3 font-face 规则 二、字体图标2.1 字体图标2.2 字体图标的优点2.3 图标库2.4 下载字体包2.5 字体图标的使用步骤2.6 字体图标使用注意点2.7 上…

Poe聊天机器人平台吸引新用户可获得最高50美元的收入

Poe聊天机器人平台正加大对创作者的奖励力度,机器人创建者每吸引一个新订阅者,最高可获得50美元(约等于358.465人民币)的收入。在GPTs商店上传过自定义GPT的朋友可以将自己的机器人复刻到Poe上,看看能不能拿到一些零食…

【Py/Java/C++三种语言详解】LeetCode每日一题240122【贪心】LeetCode670、最大交换

文章目录 题目链接题目描述解题思路为什么是贪心一个带图的例子 代码pythonjavacpp时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目链接 LeetCode670、最大交换 题目描述 给定一个非负整数数组 nums 和一个整数 k ,你需要将这个数组分成 k 个非空的连…

vue3使用AntV G6 (图可视化引擎)历程[二]

上期回顾:历程[一]描述了基本的树状图的绘制,默认节点类型defaultNode中的type是circle,下面这篇描述的是节点抽离自定义节点并做数据静态渲染。 官网地址:https://g6-next.antv.antgroup.com/manual/introduction 一、案例效果 二、自定义节点渲染 1. 主要通过G6.register…

aop介绍

AOP(Aspect-Oriented Programming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用…

Spring Security架构

文章目录 过滤器回顾DelegatingFilterProxyFilterChainProxySecurityFilterChainSecurity Filters打印Security Filters将自定义过滤器添加到过滤器链 Handling Security ExceptionsSaving Requests Between AuthenticationRequestCachePrevent the Request From Being Saved R…

考研C语言刷题基础篇之分支循环结构基础(二)

目录 第一题分数求和 第二题:求10 个整数中最大值 第三题:在屏幕上输出9*9乘法口诀表 第四题:写一个代码:打印100~200之间的素数 第五题:求斐波那契数的第N个数 斐波那契数的概念:前两个数相加等于第三…

MySQL进阶45讲【4】索引原理剖析(上)

1 前言 提到数据库索引,想必大家并不陌生,在日常工作中会经常接触到。比如某一个SQL查询比较慢,分析完原因之后,就会有“给某个字段加个索引”之类的解决方案。但到底什么是索引,索引又是如何工作的呢?今天…

MySQL数据库的锁机制

目录 一、引言 二、锁的类型及作用 2.1 行级锁 2.2 间隙锁与临键锁 2.3 共享锁与排他锁 2.4 意向锁 2.5 表级锁 2.6 元数据锁 三、锁的管理与优化 3.1 合理设置事务隔离级别 3.2 避免长事务 3.3 索引优化 3.4 明确锁定范围 3.5 避免不必要的全表扫描 四、实战分…

基于Java+SpringBoot+vue+element疫情物资捐赠分配系统设计和实现

基于JavaSpringBootvueelement疫情物资捐赠分配系统设计和实现 🍅 作者主页 央顺技术团队 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 文末获取源码联系方式 📝 🍅 查看下方微信号获取联系方式 承接各种…

【大数据】Flink 系统架构

Flink 系统架构 1.Flink 组件1.1 JobManager1.2 ResourceManager1.3 TaskManager1.4 Dispatcher 2.应用部署2.1 框架模式2.2 库模式 3.任务执行4.高可用设置4.1 TaskManager 故障4.2 JobManager 故障 Flink 是一个用于状态化并行流处理的分布式系统。它的搭建涉及多个进程&…

antv/g6绘制数据流向图

antv/g6绘制数据流向图 前言接口模拟数据htmlts页面效果 前言 在业务开发中需要绘制数据流向图,由于echarts关系图的限制以及需求的特殊要求,转而使用antv/g6实现,本文以代码的方式实现数据流向需求以及节点分组,版本"antv/g6": “…