using System.Drawing.Imaging;
using System.Collections.Generic;
namespace HelloWorldMvcApp
public class HomeController : Controller
public ActionResult Index()
var model = new SampleViewModel{ImageBytes = GetQrBytes()
private Bitmap GetQrBitmap(){
QRCodeGenerator qrGenerator = new QRCodeGenerator();
QRCodeData qrCodeData = qrGenerator.CreateQrCode("asdf", QRCodeGenerator.ECCLevel.Q);
QRCode qrCode = new QRCode(qrCodeData);
return qrCode.GetGraphic(20);
private byte[] GetQrBytes()
QRCodeGenerator qrGenerator = new QRCodeGenerator();
QRCodeData qrCodeData = qrGenerator.CreateQrCode("asdf", QRCodeGenerator.ECCLevel.Q);
QRCode qrCode = new QRCode(qrCodeData);
using (Bitmap bitMap = qrCode.GetGraphic(20))
using (MemoryStream ms = new MemoryStream())
bitMap.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
public ActionResult Image()
Image img = new Bitmap(100, 50);
Graphics g = Graphics.FromImage(img);
Font font = new Font("Arial", 24);
PointF drawingPoint = new PointF(10, 10);
g.DrawString("asdf", font, Brushes.Black, drawingPoint);
MemoryStream ms = new MemoryStream();
img.Save(ms, ImageFormat.Png);
return new FileStreamResult(ms, "image/png");
QRCodeGenerator qrGenerator = new QRCodeGenerator();
QRCodeData qrCodeData = qrGenerator.CreateQrCode("https://www.online.ch", QRCodeGenerator.ECCLevel.Q);
QRCode qrCode = new QRCode(qrCodeData);
var bitmap = qrCode.GetGraphic(20);
var bitmapBytes = BitmapToBytes(bitmap);
return File(bitmapBytes, "image/png");
private static byte[] BitmapToBytes(Bitmap img)
using (MemoryStream stream = new MemoryStream())
img.Save(stream, ImageFormat.Png);