我见过最好的.NET/C#图片工具(裁剪、缩放、与加水印)
付费才能得到的好资源,限今天“免费”领取,月薪超30k必备技能!
资源1:高薪热门【WPF上位机+工业互联网】从零手写实战回复wpf免费领取资源2:C#+Halcon机器视觉零基础实战教程回复halcon免费领取
资源3:.Net7 CLR+JIT+MSIL顶级技术视频教程免费分享回复dotnet免费领取
关注下方公众号。后台回复领取。
![](https://img2023.cnblogs.com/blog/2807376/202306/2807376-20230608185547293-476252099.jpg)
支持.Net Core(2.0及以上)与.Net Framework(4.5及以上)
图片的裁剪、缩放、与加水印,是任何系统经常要用到的功能,它们现已集成到IUtility工具中,使用十分简便。(具体代码将在文末给出)
现给出一张“原图”,如下:
(1)原图裁剪后的效果如下:
裁剪的方法使用说明如下:
PictureCut(Async) 声明:void PictureCut(string SourceFile, int CutStartPointX, int CutStartPointY, int CutWidth, int CutHeight, string TargetFile) 用途:图片裁剪 参数:(1)string SourceFile -- 原始图片文件路径 (2)int CutStartPointX --起始裁剪点X坐标 (3)int CutStartPointY --起始裁剪点Y坐标 (4)int CutWidth --裁剪宽度 (5)int CutHeight --裁剪高度 (6)string TargetFile --新生成的目标图片文件路径 返回:(无)
注意:X、Y坐标,是以图片左上角为原点而定,单位是像素。
(2)原图缩略后的效果如下:
缩略的方法使用说明如下:
PictureThumbnail(Async) 声明:void PictureThumbnail(string SourceFile, int FrameWidth, int FrameHeight, string TargetFile) 用途:图片缩略 参数:(1)string SourceFile -- 原始图片文件路径 (2)int FrameWidth --缩略框的宽度 (3)int FrameHeight --缩略框的高度 (4)string TargetFile --新生成的目标图片文件路径 返回:(无)
(3)原图加文字水印后的效果如下:
加文字水印的方法使用说明如下:
PictureTextWatermark(Async) 声明:void PictureTextWatermark(string SourceFile, string WaterText, System.Drawing.Font WaterTextFont, System.Drawing.Brush WaterTextBrush, int x, int y, string TargetFile) 用途:图片加“文字”水印 参数:(1)string SourceFile -- 原始图片文件路径 (2)string WaterText --水印文字 (3)System.Drawing.Font WaterTextFont --水印文字字体 (4)System.Drawing.Brush WaterTextBrush --水印文字笔触 (5)int x --水印图像的起始X坐标 (6)int y --水印图像的起始Y坐标 (7)string TargetFile --新生成的目标图片文件路径 返回:(无)
(4)原图加图片水印后的效果如下:
加图片水印的方法使用说明如下:
PictureImageWatermark(Async) 声明:void PictureImageWatermark(string SourceFile, string WatermarkFile, int x, int y, string TargetFile) 用途:图片加“图像”水印 参数:(1)string SourceFile -- 原始图片文件路径 (2)string WatermarkFile --水印图像文件路径 (3)int x --水印图像的起始X坐标 (4)int y --水印图像的起始Y坐标 (5)string TargetFile --新生成的目标图片文件路径 返回:(无)
以上4个实验的具体代码如下:
若是在.Net Core环境下,代码如下:
using DeveloperSharp.Framework.CoreUtility; //请先从NuGet引用DeveloperSharp包 -------------------------- //首先在Startup.cs或Program.cs文件中进行工具预载 Services.AddTransient<IUtility, Utility>(); -------------------------- //IU是在相关文件中,通过依赖注入方式获取的IUtility类型对象 //IU.PictureCutAsync("D:/fengjing.jpg", 500, 350, 200, 200, "D:/fj1.jpg"); //IU.PictureThumbnailAsync("D:/fengjing.jpg", 400, 300, "D:/fj2.jpg"); //IU.PictureTextWatermarkAsync("D:/fengjing.jpg", "世界,你好!", new Font("华文新魏", 40, FontStyle.Bold), Brushes.Azure, 500, 50, "D:/fj3.jpg"); //IU.PictureImageWatermarkAsync("D:/fengjing.jpg","D:/log.png",680, 380, "D:/fj4.jpg");
若是在.Net Framework环境下,代码如下:
using DeveloperSharp.Framework.CoreUtility; //请先从NuGet引用DeveloperSharp包 -------------------------- IUtility ui = new Utility(); //ui.PictureCut("D:/fengjing.jpg", 500, 350, 200, 200, "D:/fj1.jpg"); //ui.PictureThumbnail("D:/fengjing.jpg", 400, 300, "D:/fj2.jpg"); //ui.PictureTextWatermark("D:/fengjing.jpg", "世界,你好!", new Font("华文新魏", 40, FontStyle.Bold), Brushes.Azure, 500, 50, "D:/fj3.jpg"); //ui.PictureImageWatermark("D:/fengjing.jpg","D:/log.png",680, 380, "D:/fj4.jpg");
结尾
关注下方公众号,助力升职加薪。
你也可以加入我们(添加微信:894988403,备注“进群”),向大佬学习,探行业内幕,享时代机遇。