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;
}


 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于QEMU的vexpress-a9的初始化代码运行(一)

这个part是想详细走读一下用qemu运行kernel的最初始代码,也就是使用qemu运行kernel代码的详细逻辑,从qemu加载根目录下vmlinux镜像的逻辑,也就是运行arch/arm/kernel/head.S的整个过程,直到跳转到start_kernel,使用的k…

IT大侦“碳”:Concept Luna向循环设计持续演进

今天聊点轻松的话题。上个月,小编用来吃饭的家伙开始闹罢工,笔记本的触控和键盘突然没了反应,电脑虽然还能打开,但嗡嗡直叫的风扇让我意识到这件事并不简单。 你问我为什么电脑会出问题?好吧,那我得先搞清楚…

领势 跨越|美创科技数据安全管理平台2023年度回顾

领势 跨越 数据安全管理平台的2023 以数字化安全平台为基础的数据安全体系是未来安全建设的重要方向。 研究咨询机构IDC指出:未来,数据安全基础设施管理平台将逐步发展成为各组织数据安全建设的基础设施。 Gartner《中国数据安全治理解析》预测&…

141:vue+leaflet 利用高德逆地理编码,点击地图标记marker,popup地址信息

第141个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+leaflet中利用高德逆地理编码,点击地图标记marker,popup地址信息 。主要利用高德地图的api将坐标转化为地址,然后在点击的位置,弹出弹窗,在里面显示出地址信息。 直接复制下面的 vue+leaflet源代码,操作2分钟…

cad二次开发autolisp(二)

目录 一、选择集1.1 选择集的创建1.2 选择集的编辑1.3 操作选择集 二、命令行设置对话框2.1 设置图层2.2 加载线型2.3 设置字体样式2.4 设置标注样式(了解即可) 三、符号表3.1 简介3.2 符号表查找3.2 符号表删改增 一、选择集 定义:批量选择…

【数据结构与算法】4.自主实现单链表的增删查改

📚博客主页:爱敲代码的小杨. ✨专栏:《Java SE语法》 ❤️感谢大家点赞👍🏻收藏⭐评论✍🏻,您的三连就是我持续更新的动力❤️ 🙏小杨水平有限,欢迎各位大佬指点&…

在SpringBoot中基于CanvasLabel的地震基础信息展示实践

目录 前言 一、数据库设计 1、数据库设计 2、sql脚本 3、数据记录 二、SpringBoot后台设计与实现 1、Mapper访问层及实体定义 2、Service层实现 3、控制层实现 三、地震信息展示 1、展示数据接入 2、最终效果 总结 前言 在上一篇博客中,对于在Leafle…

直播录屏工具哪家强?让你的直播更精彩!

随着网络技术的不断发展,直播行业逐渐兴起。无论是游戏直播、教育直播还是娱乐直播,人们都希望能够记录这些精彩瞬间。因此,一款好用的直播录屏工具显得尤为重要。本文将详细介绍两款流行的直播录屏工具,通过这些工具,…

亚马逊、eBay、TikTok等平台的综合运营实用工具分享!

亚马逊、eBay等电商平台为卖家提供了广阔的销售机会,但同时也带来了运营管理的挑战。为了提高运营效率和销售业绩,卖家需要借助一些实用工具。本文将介绍一些在亚马逊、eBay等平台上综合运营中非常有用的工具,帮助卖家更高效地管理店铺&#…

flutter底层架构初探

本文出处:​​​​​​​​​​​​​Flutter 中文开发者网站 架构 embedder嵌入层 提供程序入口(其他原生应用也采用此方式),程序由此和底层操作系统协调(surface渲染、辅助功能和输入服务,管理事件循环…

HTTP3/QUIC 性能测试与配套组件

背景 最近一年很多关于QUIC的文章层出,但是发现一个问题,这些文章都是在介绍QUIC或HTTP3是怎样的一个东西,以及它的优点和机制,将它夸的近乎上天了。然而有心的人估计会亲手做一些测试,就会发现这个被捧上天的东西性能…

如何预防服务器IP被劫持,危害有什么?

服务器IP被劫持是一种严重的网络安全问题,攻击者通过篡改服务器的IP地址,将网络流量重定向到恶意服务器或网站,导致用户无法正常访问目标服务器,并可能面临数据泄露、恶意软件感染等安全风险。了解服务器IP被劫持的危害和预防措施…

探案录 | 细说与人大金仓有关的“神秘数字”

近日,福尔摩斯•K发现,涉及医疗数字化的相关新闻都被人撕毁了,只留下日期和一串神秘数字:301、700、3000、3700……这背后隐瞒了什么呢?快跟着大侦探去揭开真相吧。 News:11月16日 全国首例,301…

上位机图像处理和嵌入式模块部署(自定义算法)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 我们在使用opencv的时候,虽然大部分算法都不需要我们自己重头开始编写,但是总有一些关于我们自己产品的know-how&#xff0…

说说 typescript 的数据类型有哪些?

文章目录 一、是什么二、有哪些# boolean# number# string# array# tuple# enum# any# null 和 和 undefined# void# never# object 三、总结参考文献 一、是什么 typescript 和 javascript几乎一样,拥有相同的数据类型,另外在javascript基础上提供了更…

SSM项目集成Spring Security 4.X版本(使用spring-security.xml 配置文件方式)

目录 前言 实战开发: 一、Spring Security整合到SSM项目 1. pom文件引入包 2. web.xml 配置 3. 添加 spring-security.xml 文件 二、Spring Security实战应用 1. 项目结构 2. pom文件引入 3. web.xml 配置 4. Spring 配置 applicationContext.xml 5. sp…

ffplay 之 Invalid data found when processing input

调试rtsp 通信协议时,发现使用 ffplay -i rtsp://127.0.0.1:554 tcp通信会先返回OPTIONS、DESCRIBE 2个指令,当返回SETUP指令给ffplay.exe程序时,会出现: 仔细查看代码,未支持UDP: 故,找到原因 ffplay -…

java web mvc-07-Vaadin 入门介绍

拓展阅读 Spring Web MVC-00-重学 mvc mvc-01-Model-View-Controller 概览 web mvc-03-JFinal web mvc-04-Apache Wicket web mvc-05-JSF JavaServer Faces web mvc-06-play framework intro web mvc-07-Vaadin web mvc-08-Grails 开源 The jdbc pool for java.(java …

计算机网络 第3章(数据链路层)

系列文章目录 计算机网络 第1章(概述) 计算机网络 第2章(物理层) 计算机网络 第3章(数据链路层) 文章目录 系列文章目录1. 数据链路层概述1.1 概述1.2 三个重要问题 2. 封装成帧2.1 介绍2.2 透明传输2.3 总…

深入理解——面向对象和面向过程

OOP 谈到面向对象逃不掉的一个问题就是面向对象和面向过程的区别和联系: 从时间的线性角度来说,面向对象是面向过程的下一个发展阶段,从二者的逻辑角度来说,则并没有纯粹的优劣,而是需要编码者根据特定的情况来选择特…