Мой WEB API в ASP.NET C #, я создаю отчет Crystal Report, преобразую его в поток PDF и отправляю в Response с помощью httpResponseMessage, но хочу, чтобы он преобразовал отчет Crystal в формат BMP изображения и отправил клиенту в ответ API для печати.(только для устройств печати поддерживается bmp, png, jpg).
Кристаллический отчет в формате API
//List<Model> Rlist
var rd = new ReportDocument();
rd.Load(Path.Combine(System.Web.Hosting.HostingEnvironment.MapPath("~/Reports"), "Report.rpt"));
rd.SetDataSource(Rlist);
Stream stream = rd.ExportToStream(ExportFormatType.PortableDocFormat);
MemoryStream ms = new MemoryStream();
stream.CopyTo(ms);
Отправка ответа от API клиенту
public HttpResponseMessage Generate(MemoryStream ms)
{
var result = new HttpResponseMessage(HttpStatusCode.OK){
Content = new ByteArrayContent(ms.ToArray())
};
result.Content.Headers.ContentDisposition =
new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment") {
FileName = "Report.pdf"};
result.Content.Headers.ContentType =
new System.Net.Http.Headers.MediaTypeHeaderValue("application/octet-stream");
return result;
}