我见过最好的.NET/C#图片工具(裁剪、缩放、与加水印)

付费才能得到的好资源,限今天“免费”领取,月薪超30k必备技能!

资源1:高薪热门【WPF上位机+工业互联网】从零手写实战回复wpf免费领取
资源2:C#+Halcon机器视觉零基础实战教程回复halcon免费领取
资源3:.Net7 CLR+JIT+MSIL顶级技术视频教程免费分享回复dotnet免费领取
关注下方公众号。后台回复领取。

 

支持.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)
用途:图片裁剪
参数:(1string SourceFile   --  原始图片文件路径
     (2int CutStartPointX      --起始裁剪点X坐标
     (3int CutStartPointY    --起始裁剪点Y坐标
     (4int CutWidth        --裁剪宽度
     (5int CutHeight      --裁剪高度
     (6string TargetFile    --新生成的目标图片文件路径
返回:(无)

注意:X、Y坐标,是以图片左上角为原点而定,单位是像素。

 

(2)原图缩略后的效果如下:

 缩略的方法使用说明如下:

PictureThumbnail(Async)
声明:void PictureThumbnail(string SourceFile, int FrameWidth, int FrameHeight, string TargetFile)
用途:图片缩略
参数:(1string SourceFile   --  原始图片文件路径
     (2int FrameWidth      --缩略框的宽度
     (3int FrameHeight    --缩略框的高度
     (4string TargetFile        --新生成的目标图片文件路径
返回:(无)

 

(3)原图加文字水印后的效果如下:

 加文字水印的方法使用说明如下:

PictureTextWatermark(Async)
声明:void PictureTextWatermark(string SourceFile, string WaterText, System.Drawing.Font WaterTextFont, System.Drawing.Brush WaterTextBrush, int x, int y, string TargetFile)
用途:图片加“文字”水印
参数:(1string SourceFile   --  原始图片文件路径
     (2string WaterText  --水印文字
     (3)System.Drawing.Font WaterTextFont    --水印文字字体
(4)System.Drawing.Brush WaterTextBrush    --水印文字笔触
(5int x    --水印图像的起始X坐标
(6int y    --水印图像的起始Y坐标
     (7string TargetFile        --新生成的目标图片文件路径
返回:(无)

 

(4)原图加图片水印后的效果如下:

 加图片水印的方法使用说明如下:

PictureImageWatermark(Async)
声明:void PictureImageWatermark(string SourceFile, string WatermarkFile, int x, int y, string TargetFile)
用途:图片加“图像”水印
参数:(1string SourceFile   --  原始图片文件路径
     (2string WatermarkFile  --水印图像文件路径
     (3int x    --水印图像的起始X坐标
(4int y    --水印图像的起始Y坐标
     (5string 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,备注“进群”),向大佬学习,探行业内幕,享时代机遇。

posted @ 2023-09-01 13:31  高级梦想家  阅读(409)  评论(2编辑  收藏  举报