如何使用 C# 中的 SimpleFilters 将灰度应用于我的图像?
How do I apply grayscale to my image with SimpleFilters in C#?
我正在 Azure 中创建一个函数,用于获取图像并调整其大小 + 使其灰度化。我目前正在使用这个功能:
#r "System.Drawing"
using ImageResizer;
using ImageResizer.Plugins.SimpleFilters;
using System.Drawing;
using System.Drawing.Imaging;
public static void Run(Stream inputImage, string imageName, Stream
resizedImage, TraceWriter log)
{
log.Info($"C# Blob trigger function Processed blob\n Name:{imageName} \n
Size: {inputImage.Length} Bytes");
var settings = new ImageResizer.ResizeSettings{
MaxWidth = 400,
Format = "png"
};
// Add the grayscale filter to the image
inputImage.filters.Add(GrayscaleNTSC());
ImageResizer.ImageBuilder.Current.Build(inputImage, resizedImage, settings);
}
我正在导入 Plugins.SimpleFilters 但我不知道如何在 C# 中使用它。项目站点提供纯 HTML.
中的示例
你知道如何对图像进行灰度化吗?
我收到以下错误:
当前上下文
中不存在名称 'GrayscaleNTSC'
我使用的包是:
"dependencies": {
"ImageResizer": "4.0.5",
"ImageResizer.Plugins.SimpleFilters": "4.0.5"
}
根据您的描述,我假设您可以利用 ImageResizer 中的托管 API 来实现您的目的。这是我的测试,你可以参考一下:
核心代码
//install the SimpleFilters plugin
ImageResizer.Configuration.Config.Current.Plugins.Install(new SimpleFilters());
var settings = new ResizeSettings("width=400&height=500&crop=auto&s.grayscale=true");
ImageBuilder.Current.Build($"{baseDir}/resources/image_01.jpg", $"{baseDir}/resources/image_01_01.jpg",
settings);
结果
修改后的图片:
此外,您可以参考Managed API samples and SimpleFilters plugin了解更多详情。
我正在 Azure 中创建一个函数,用于获取图像并调整其大小 + 使其灰度化。我目前正在使用这个功能:
#r "System.Drawing"
using ImageResizer;
using ImageResizer.Plugins.SimpleFilters;
using System.Drawing;
using System.Drawing.Imaging;
public static void Run(Stream inputImage, string imageName, Stream
resizedImage, TraceWriter log)
{
log.Info($"C# Blob trigger function Processed blob\n Name:{imageName} \n
Size: {inputImage.Length} Bytes");
var settings = new ImageResizer.ResizeSettings{
MaxWidth = 400,
Format = "png"
};
// Add the grayscale filter to the image
inputImage.filters.Add(GrayscaleNTSC());
ImageResizer.ImageBuilder.Current.Build(inputImage, resizedImage, settings);
}
我正在导入 Plugins.SimpleFilters 但我不知道如何在 C# 中使用它。项目站点提供纯 HTML.
中的示例你知道如何对图像进行灰度化吗?
我收到以下错误: 当前上下文
中不存在名称 'GrayscaleNTSC'我使用的包是:
"dependencies": {
"ImageResizer": "4.0.5",
"ImageResizer.Plugins.SimpleFilters": "4.0.5"
}
根据您的描述,我假设您可以利用 ImageResizer 中的托管 API 来实现您的目的。这是我的测试,你可以参考一下:
核心代码
//install the SimpleFilters plugin
ImageResizer.Configuration.Config.Current.Plugins.Install(new SimpleFilters());
var settings = new ResizeSettings("width=400&height=500&crop=auto&s.grayscale=true");
ImageBuilder.Current.Build($"{baseDir}/resources/image_01.jpg", $"{baseDir}/resources/image_01_01.jpg",
settings);
结果
修改后的图片:
此外,您可以参考Managed API samples and SimpleFilters plugin了解更多详情。