Общий GDI + Ошибка при сохранении / загрузке изображения из MemoryStream с использованием ImageProcessor - PullRequest
0 голосов
/ 20 декабря 2018

У меня общий GDI + ошибка в строке imageFactory.Load (inStream).Мой проект - ASP.NET Core Razor-Pages.

Я пытался клонировать inStream в новый поток (это помогло мне раньше при сохранении растровых изображений), но безуспешно.

Кто-нибудь имел дело с чем-то похожим раньше?

// using ImageProcessor;
// using ImageProcessor.Imaging.Formats;

byte[] photoBytes = System.IO.File.ReadAllBytes(@"C:\Users\User\Desktop\img\img.jpg");
            ISupportedImageFormat format = new JpegFormat();
            Size size = new Size(200,200);
            using (MemoryStream inStream = new MemoryStream(photoBytes))
            {
                using (MemoryStream outStream = new MemoryStream())
                {
                    var asd = inStream;

                    using (ImageFactory imageFactory = new ImageFactory(preserveExifData: true))
                    {
                        imageFactory.Load(inStream)
                            .Resize(size)
                            .Format(format)
                            .Save(@"C:\Users\User\Desktop\ImgAdjusted\");
                    }
                }
            }

Ответы [ 2 ]

0 голосов
/ 21 декабря 2018

Топ 3 альтернативы ImageProcessor для .NET Core

В сторону: Откуда взялся System.Drawing.Common?.NET Core изначально не поддерживал GDI +.Затем они выпустили библиотеку сравнимости окон, которая получит GDI + только для окон.На момент написания статьи Microsoft перенесла функциональность GDI + с использованием реализации Mono.

0 голосов
/ 21 декабря 2018

Согласно ответу @itminus - эта библиотека не предназначена для работы в ядре .net.

...