System.ArgumentException: параметр недействителен

У меня есть страница, которая отправляет данные холста html5, закодированные как изображение base64 bmp (с использованием этого алгоритма http://devpro.it/code/216.html ) в серверный процесс, который преобразует его в объект System.Drawing.Image и выполняет с ним некоторые операции.

В моей локальной среде это работает нормально, но в моем экземпляре ec2 возникает следующая ошибка:

System.ArgumentException: параметр недействителен. в System.Drawing.Image.FromStream (поток потока, логическое useEmbeddedColorManagement, логическое значение validateImageData) в System.Drawing.Image.FromStream (поток потока, логическое {{1}) } useEmbeddedColorManagement)

Мой код выглядит следующим образом:

System.Drawing.Image image = null;
string b64string = "...";
byte[] sf = Convert.FromBase64String(b64string );
using (MemoryStream s = new MemoryStream(sf, 0, sf.Length))
{
   image = System.Drawing.Image.FromStream(s, false);
}
...

Вот текстовый файл с образцом b64string, который я использую для тестирования: https://docs.google.com/leaf?id=0BzVLGmig1YZ3MTM0ODBiNjItNzk4YLi00I00MzI ru_US

Я также пробовал следующее и получил те же результаты:

System.Drawing.ImageConverter converter = new System.Drawing.ImageConverter();
image = converter.ConvertFrom(sf) as System.Drawing.Image;         

Любое понимание будет очень признательно!

8
задан ari 23 September 2011 в 19:27
поделиться