2012-05-17 3 views
1

У меня есть изображение с битовой картой, которое я буду генерировать во время выполнения. У меня нет локального URL-адреса для него, поскольку он генерируется во время выполнения таким образом и возвращается мне. Есть ли способ добавить это изображение в файл cshtml или html-файл во время выполнения?Добавить растровое изображение в cshtml mvc во время выполнения

public Bitmap GetBarcodeImage(string inputString) 
    { 

     Bitmap bitmap = new Bitmap(200,100); 

     Graphics graphics = Graphics.FromImage(bitmap); 

     graphics.Clear(Color.White); 

     graphics.DrawString(inputString, new Font("Free 3 of 9",60,FontStyle.Regular), Brushes.Black, new PointF(0, 0)); 


     return bitmap; 

    } 

ответ

4

Вы можете создать mvc-действие asp.net, которое возвращает FileContentResult, который вернет растровое изображение. Что-то вроде этого:

public FileContentResult imageGenerate(string s) 
    { 
     Bitmap b = getBarcodeImage(s); 
     ... get byte array from bitmap ... 
     return new FileContentResult(bytes, "image/bmp"); 
    } 

Затем на ваш взгляд другого действия вы бы ссылку на изображение, используя действие imageGenerate

<img src="<%=Url.Action("imageGenerate","SomeController", new {s = "asdf"}) %>" /> 
Смежные вопросы