공부/C#
직사각형 배경에 정사각형 이미지 넣기
딸기버블티
2022. 2. 24. 19:39
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
public bool ResizeImage(string url)
{
public byte[] FileBytes;
Scraper scraper = new Scraper();
scraper.AllowAutoRedirect = true;
scraper.Referer = "";
scraper.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36";
scraper.Go(url);
Image image;
using (var ms = new MemoryStream())
{
image = Image.FromStream(scraper.Stream);
image = (Image)new Bitmap(image, new Size(960, 960));
string Name = @"c:\temp\";
string pageFilePath = Path.Combine(Name, "tes11t" + ".jpg");
Bitmap bmp = new Bitmap(960, 1280);
using (Graphics grahp = Graphics.FromImage(bmp))
{
grahp.Clear(Color.White);
grahp.DrawImage(image, new Rectangle(0, 160, 960, 960));
Name = @"c:\temp\";
pageFilePath = Path.Combine(Name, "test" + ".jpg");
bmp.Save(pageFilePath, ImageFormat.Jpeg);
image = (Image)bmp;
image.Save(ms, ImageFormat.Jpeg);
}
FileBytes = ms.ToArray();
}
return true;
}
|
cs |
url : 이미지 경로
Scraper.Go(url) : 이미지 로드하기위해 크롤링
13번째줄 : 크롤링한 이미지를 스트림으로 읽어 이미지로 변환
14번째줄 : 2500 X 2500인 이미지를 960 X 960으로 변환
20번째줄 : 배경을 흰색으로 칠함
21번째줄 : 960 X 1280 인 흰색 직사각형 배경에 위에서 변환한 이미지를 삽입
0,160 좌표에부터 그리기. 이미지 사이즈는 960 X 960
24번째줄 : 컴퓨터에 해당 이미지 저장하기(확인용)
26번째줄 : 메모리스트림을 이미지로 저장
28번째줄 : 메모리스트림을 버퍼로 변환