tcc/Controllers/Blur.cs

35 lines
895 B
C#
Raw Normal View History

2023-08-16 18:58:01 +00:00
using Microsoft.AspNetCore.Mvc;
using TCC.Services;
2023-08-16 18:40:27 +00:00
2023-08-16 18:58:01 +00:00
namespace TCC.Controllers
2023-08-16 18:40:27 +00:00
{
[ApiController]
[Route("")]
public class ImageController : ControllerBase
{
2023-08-16 18:58:01 +00:00
private ImageService ImageService { get; set; }
public ImageController(ImageService imageService)
{
this.ImageService = imageService;
}
2023-08-16 18:40:27 +00:00
[HttpPost("blur")]
public async Task<IActionResult> BlurImage()
{
MemoryStream mstream = new MemoryStream();
await HttpContext.Request.Body.CopyToAsync(mstream);
2023-08-16 18:58:01 +00:00
mstream.Position = 0;
2023-08-16 18:40:27 +00:00
2023-08-16 18:58:01 +00:00
var result = ImageService.BoxBlurImage(mstream, 5);
2023-08-16 18:40:27 +00:00
var blurredImageStream = new MemoryStream();
2023-08-16 18:58:01 +00:00
result.Write(blurredImageStream);
2023-08-16 18:40:27 +00:00
blurredImageStream.Position = 0;
return File(blurredImageStream, "image/png");
}
}
}