.net core 图片合并,图片水印,等比例缩小,SixLabors.ImageSharp
时间: 2024-02-20 22:01:02 浏览: 29
好的,针对您的问题,我可以给您提供以下的代码示例,使用SixLabors.ImageSharp来实现图片合并、图片水印和等比例缩小的功能:
首先,您需要在您的项目中安装SixLabors.ImageSharp的NuGet包,安装命令为:
```
Install-Package SixLabors.ImageSharp
```
接下来,您可以使用以下的代码示例来实现图片合并和等比例缩小的功能:
```
using SixLabors.ImageSharp;
using SixLabors.ImageSharp.Processing;
using SixLabors.ImageSharp.PixelFormats;
// 打开第一张图片
using (Image<Rgba32> image1 = Image.Load<Rgba32>("path/to/image1.png"))
{
// 打开第二张图片
using (Image<Rgba32> image2 = Image.Load<Rgba32>("path/to/image2.png"))
{
// 计算合并后图片的大小
int width = image1.Width + image2.Width;
int height = Math.Max(image1.Height, image2.Height);
// 创建一个新的图片
using (Image<Rgba32> outputImage = new Image<Rgba32>(width, height))
{
// 将第一张图片复制到新的图片上
outputImage.Mutate(x => x.DrawImage(image1, new Point(0, 0), 1f));
// 将第二张图片复制到新的图片上
outputImage.Mutate(x => x.DrawImage(image2, new Point(image1.Width, 0), 1f));
// 等比例缩小图片
outputImage.Mutate(x => x.Resize(new ResizeOptions
{
Size = new Size(800, 600),
Mode = ResizeMode.Max
}));
// 保存合并后的图片
outputImage.Save("path/to/output.png");
}
}
}
```
以上代码中,我们首先使用`Image.Load<Rgba32>`方法打开两张待合并的图片,然后计算出合并后的图片的大小,创建一个新的图片。接着,我们使用`Mutate`方法将两张图片复制到新的图片上,并使用`Resize`方法等比例缩小图片。最后,我们使用`Save`方法将合并后的图片保存到指定的路径。
如果您需要给图片添加水印,可以使用以下的代码示例:
```
using SixLabors.ImageSharp;
using SixLabors.ImageSharp.Processing;
using SixLabors.ImageSharp.PixelFormats;
// 打开原始图片
using (Image<Rgba32> image = Image.Load<Rgba32>("path/to/image.png"))
{
// 打开水印图片
using (Image<Rgba32> watermark = Image.Load<Rgba32>("path/to/watermark.png"))
{
// 将水印图片复制到原始图片上
image.Mutate(x => x.DrawImage(watermark, new Point(10, 10), 1f));
// 保存带有水印的图片
image.Save("path/to/output.png");
}
}
```
以上代码中,我们首先使用`Image.Load<Rgba32>`方法打开原始图片和水印图片,然后使用`Mutate`方法将水印图片复制到原始图片上,并使用`Save`方法将带有水印的图片保存到指定的路径。
希望以上代码示例对您有所帮助!如有疑问,欢迎继续提问。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)