【发布时间】:2019-06-15 10:59:47
【问题描述】:
在我的 UWP 应用程序中,我们有用户上传的图像,它们几乎可以是任意大小 - 所以当我将它们加载到图像控件中时,我会按比例调整它们的大小,以便它们最适合我们的图像容器(固定为 112w x 152h) 但由于某些图像比更高的图像更宽,我想要找到图像的背景颜色,以便我可以设置图像的背景。
为此,我使用NuGet ColorThief package 和下面的代码(取自我在那里找到的示例)在许多情况下返回错误的主色:
var ct = new ColorThief();
QuantizedColor qc = await ct.GetColor(decoder); //BitmapDecoder containing image
Windows.UI.Color c = Windows.UI.Color.FromArgb(qc.Color.A, qc.Color.R, qc.Color.G, qc.Color.B);
setImageBackgroundColor(bgColour);
我尝试过的一张图片就是这张 - 现在主色显然应该是黑色,但它会返回一些中等灰色......所以我的代码或图片有问题还是我需要其他东西去做?我只是觉得它不可靠,但我知道其他人使用它没有问题。
【问题讨论】:
标签: image colors uwp background color-thief