У меня проблема.Когда изображения сохраняются в моей базе данных, они сохраняются с байтами файла, и к этой записи присваивается идентификационный номер.Существует файл .ashx, который берет этот ссылочный идентификационный номер и получает информацию о файле / байты файла и отображает изображение или разрешает загрузку изображения.
img src="/download.ashx?id=THEREFID
Это выше будет отображать изображение на странице.Если бы я просто поместил ссылку на страницу .ashx, она бы загрузила изображение.Это отлично.Однако некоторые из моих изображений сохраняются как .TIF, и мне нужно преобразовать их в .jpeg.
У меня есть класс с именем FileData
public string FileName;
public byte[] theData;
public long FileSizeBytes;
public string MIME;
public string Extension;
На моей странице .ashx у меня есть методкоторый загружает вышеупомянутый класс FileData.Затем класс FileData вместе с классом HttpContext отправляется методу:
private void Process(HttpContext context, FileData file)
{
context.Response.ContentTYpe = file.MIME;
context.Response.AddHeader("Content-Disposition", "attachment; filename="
+ file.FileName.Replace(' ', '_')
+ file.FileExtension);
context.Response.AddHeader("Content-Length", file.FileSizeBytes.ToString());
context.Response.Expires = 0;
context.Response.BinaryWrite(file.Data);
context.ApplicationInstance.CompleteRequest();
}
Мне нужно найти способ преобразовать эту информацию в формат JPEG.Я думаю, может быть временное растровое изображение, преобразовать его в .jpeg, а затем получить байты файла из этого?