#c# #imagesharp
#c# #imagesharp
Вопрос:
Я получаю PixelFormats.Bgra32
изображения из UAP и WPF, и я хотел бы знать самый быстрый способ преобразовать их в и из SixLabors. Image<Rgba32>
Изображения ImageSharp. Есть ли какая-то магия «mutate», которая может перевернуть байты пикселей после того, как я скопировал буфер с помощью TryGetSinglePixelSpan
?
Комментарии:
1. Мне любопытно, почему этот вопрос был закрыт. Я понимаю это и могу дать ответ.
2. @JamesSouth Люди, путающие «я не понимаю этот вопрос» с «этот вопрос неясен», к сожалению, являются здесь распространенной проблемой, и она только усугубилась с тех пор, как количество голосов было уменьшено.
3. Очень разочаровывает видеть.
Ответ №1:
Нет ярлыка для изменения существующего изображения, но вы можете создать новое с нужным вам пиксельным форматом с самого начала.
Image<Rgba32> rgba;
// Load decodes
// LoadPixelData copies
// WrapMemory wraps
using (Image<Bgra32> bgra = Image.LoadPixelData<Bgra32>(...))
{
rgba = bgra.CloneAs<Rgba32>(bgra.GetConfiguration());
}
Затем вы можете делать с Rgba32
изображением все, что вам нужно.