问题标签 [imagesharp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
167 浏览

c# - 如何在 C# 中对图像应用“内斜角”效果?最好使用 ImageSharp 库

我目前正在为 .NET Core 中的某些内容使用 C# 库“ImageSharp”,我想知道是否可以使用它对某些文本应用“内斜角”效果。我已经将我在单独的图形应用程序中创建的示例图像放在一起,以展示我想要实现的目标。它看起来像你在书封面上看到的凸起字母,在我的图形应用程序中,它被称为“内斜角”效果。这可能与 ImageSharp 吗?如果没有,是否有其他 C# 图像处理库可以做到这一点?

在此处输入图像描述

到目前为止,这是我为创建文本而编写的一种方法:

这是方法调用:

这个斜角效果可以用 ImageSharp 完成吗?任何帮助,将不胜感激!

0 投票
1 回答
113 浏览

image - SixLabors:将 img 颜色空间转换为 sRGB

首先 - 我不精通色彩空间
,所以如果我没有很好地提出问题或者答案真的很明显,请原谅我

我正在使用sixlabors imagesharp
,因为我从所有不同的随机来源获取图像
我想检查每个图像的色彩空间
,如果它不在sRGB中,然后将其转换为sRBG

我找不到任何关于如何使用 Sixlabors 来设置此转换
的教程,而且文档有很多选项,我迷失在其中,这
是到 Sixlabors 颜色空间命令的链接 Sixlabors 颜色
空间转换

有人可以帮我
指路,或者至少发送一个关于如何使用imagesharp进行简单转换的示例链接吗?

ps:我用imagesharp完成了图像突变和操作,
但没有处理色彩空间

0 投票
1 回答
291 浏览

imagesharp - 如何将图像保存为 TIFF 格式?

我想知道是否可以使用 ImageSharp 库将图像保存为 TIFF 格式,如果可以,该怎么做?我在 Image 类上找不到任何合适的方法。

来源:https ://docs.sixlabors.com/articles/imagesharp/imageformats.html

在他们的 GitHub 存储库中已经完成了一些工作,但我在项目文档中找不到任何信息。 https://github.com/SixLabors/ImageSharp/labels/formats%3Atiff

0 投票
0 回答
19 浏览

imagesharp - 如何在 ImageSharp 中按颜色进行选择?

就像在 PhotoShop 中按颜色进行选择的方式一样,我们如何使用 ImageSharp 来做到这一点?

该作业是否有现有的处理方法?

https://docs.sixlabors.com/api/ImageSharp/SixLabors.ImageSharp.Processing.html

在此处输入图像描述

0 投票
0 回答
318 浏览

c# - 使用后释放/减少 ImageSharp 内存使用量

我创建了一个测试 WPF 应用程序来测试 SixLabors.ImageSharp,以查看它的性能以及它是否满足某些要求等,然后再集成到生产应用程序中。

我的测试应用程序包含一个 Image 控件,用于显示将要操作的图像,以及几个按钮用于加载图像、旋转、应用旋转。

当应用程序启动时,它会消耗大约 30-40MB 的系统内存。

但是,一旦我使用以下代码对图像应用旋转并保存回磁盘,内存使用量就会从 ~25-40MB 变为 ~300-500MB。

如果我对图像应用第二次旋转,内存使用量会再次上升到大约 600-800MB 左右。

如果我对图像应用第三次旋转,内存使用量再次上升到大约 850-1,000MB 左右。

如果我对图像应用第四次旋转,内存使用量会下降到执行第一次旋转的位置,大约 300-500MB。

我指定应用程序使用 MinimalPooling 来尝试降低内存使用量。

轮换代码

查看ImageSharp 文档,它指出 ImageSharp 保留了大约 300-400MB 的内存,因为它们使用了 ArrayPools。这解释了第一次使用库时的第一次内存跳转,但是随后的内存使用跳转我不明白也不知道如何释放。

我用过

正如在他们的文档中发现的那样,我认为应该释放所持有的资源。情况似乎并非如此。如果我对我的图像应用 3 次旋转并且内存使用量约为 1GB,那么在运行的应用程序中任何时候都不会减少到 300MB 以下,即使控件正在另一个窗口上使用然后随后关闭也是如此。

有谁知道如何减少这种内存使用或处理所有东西,以便内存使用恢复正常。

谢谢

0 投票
0 回答
287 浏览

c# - 如何使用 ZXing.ImageSharp 获取条形码下方的标签?

我在 ASP.NET Core 5.0 应用程序中使用ZXing.Net.Bindings.ImageSharp来生成 Code128 条形码。 0.16.9-beta

我的问题是我无法让代码在条形码下方生成文本标签 - 即使PureBarcode = false已指定。

我创建了两种测试方法:

  1. 第一种方法不使用ImageSharp,而是使用System.Drawing. 此方法GetBarcode("123")按预期工作并生成带有以下文本标签的条形码:

条形码 128 图像,下方带有文本“123”

  1. 第二种方法使用ImageSharp. 但是,此方法GetBarcodeImageSharp("123")不会生成带有以下文本标签的条形码

条形码 128 图像下方没有文字

我究竟做错了什么?

0 投票
0 回答
250 浏览

c# - 如何在 ImageSharp 上对并行、像素格式不可知的图像处理应用自定义处理逻辑?

我正在尝试构建一个 Blazor Server Web 应用程序,该应用程序使用 ImageSharp 通过 ARGB 像素修改任何上传的图像。所以,我看到了这个网页(<https://docs.sixlabors.com/articles/imagesharp/pixelbuffers.html)。在“Parallel, Pixel-Format Agnostic Image Manipulation”部分,它有一个我想添加到我的网络应用程序的代码示例:

但是,我一直在想如何让这段代码在我的网络应用程序上运行。您能否在此代码中为我提供一个自定义处理逻辑的示例?或者,我可以使用其他更好的代码吗?


这是我的网络应用程序的 Razor 页面,供您参考。

0 投票
1 回答
100 浏览

asp.net-core - net::ERR_CONNECTION_REFUSED 尝试使用 SixLabors.ImageSharp.Web 从 azure blob 容器获取图像时

我正在尝试使用 ImageSharp.web 使用 .net Core 进行图像处理。在使用存储在 wwwroot 中的图像进行测试后,该图像成功运行,我现在正在尝试处理存储在 Azure Blob 存储中的图像,但我没有成功,得到“服务器响应状态为 404 ()”(未找到)。

我遵循了 Sixlabors 教程,但无法在以下位置获得图像结果:
https://localhost:44344/X/foto-teste10515264.jpg -> X 是容器名称。

我在 startup.cs 中有以下配置:

我的配置:

我已经将 URL 更改为 https://localhost:5001/X/foto-teste10515264.jpg 现在我得到 net::ERR_CONNECTION_REFUSED

0 投票
0 回答
49 浏览

azure - 在 imagesharp.web 上使用自定义 CacheHash 时出现 Http 错误 500

我正在尝试使用自定义 CacheHash 类为 blob 的名称生成自定义键。

这是 IClass 的代码:

和班级本身:

和启动:

这一切都在本地工作。但是,一旦我发布到 Azure 域,它会给我一个 HTTP 500,说该页面不工作。此外,它在使用原始的 Sixlabors 类发布到 Azure 后也可以工作。

0 投票
1 回答
89 浏览

c# - ImageSharp 从流中获取主色

我正在尝试寻找替代方案System.DrawingColorThief在 Linux 的 docker 容器中使用(因为前面提到的有一些问题)。

到目前为止,我找到了这个要点

但它似乎在旧版本上,因为OctreeQuantizer现在有一个不同的构造函数。

我尝试了不同的方法,但大多数时候我要么总是得到FFFFFF一个空引用异常。

当我尝试时,我得到了 NRE new OctreeQuantizer(new QuantizerOptions { Dither = null, MaxColors = 1 }),我认为这可能与要点相同。当我使用 QuantizerOptions 时,我总是变白。

我在图像处理和 ImageSharp 方面几乎没有经验,感觉好像我错过了一些东西。

tl; dr:尝试使用 ImageSharp 从流中找到主色。