Растровое изображение От прозрачного пикселя до белого в функции Azure (C#) - PullRequest
0 голосов
/ 28 января 2020

Я знаю простой способ сделать это, но, к сожалению, из-за некоторых ограничений в песочнице в Azure функциях приведенный ниже код не работает:

        private Stream Transparent2Color(PDFiumBitmap input, Color target)
        {
            try
            {
                Image inputImage = Bitmap.FromStream(input.AsBmpStream());

                Bitmap result = new Bitmap(inputImage.Width, input.Height);
                Rectangle rect = new Rectangle(Point.Empty, inputImage.Size);
                using (Graphics G = Graphics.FromImage(result))
                {
                    G.Clear(target);
                    G.DrawImageUnscaledAndClipped(inputImage, rect);
                }

                return ToStream(result, ImageFormat.Jpeg);
            }
            catch (System.Exception)
            {
                return input.AsBmpStream();
            }
        }

Есть идеи, как изменить прозрачные пиксели на белый без использования графики?

Заранее спасибо!

1 Ответ

0 голосов
/ 30 января 2020

Этот код должен работать на плане, который не изолирован, так как среда Sandbox имеет только эти ограничения:

https://github.com/projectkudu/kudu/wiki/Azure-Web-App-sandbox

Также важно иметь ваша Azure функция на V3.

Для более дешевых планов вы можете go со сторонними библиотеками, которые не зависят от System.Drawing:

https://github.com/SixLabors/ImageSharp

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...