가능한 한 CSS 글꼴을 반영해야하는 코드의 텍스트 이미지를 만듭니다. CSS 클래스는 다음과 같습니다System.Drawing.Font는 CSS 글꼴을 반영합니다.
.font
{
letter-spacing: -0.7px;
font-family: segoe wp,segoe ui,verdana,arial,helvetica,sans-serif;
font-size: 1.15em;
padding: 10px;
}
내 이미지 코드는 다음과 같습니다
using (var helper = new Bitmap(1, 1))
using (var gHelper = Graphics.FromImage(helper))
using (var font = new Font("Segoe WP", 1.15f, GraphicsUnit.Point))
using (var brush = new SolidBrush(Color.White))
{
var size = gHelper.MeasureString(concept, font);
using (var image = new Bitmap((int)size.Width + _padding, (int)size.Height + _padding))
{
using (var g = Graphics.FromImage(image))
{
g.Clear(Color.Black);
g.DrawString(concept, font, brush, (float)_padding/2, (float)_padding/2);
}
var converter = new ImageConverter();
var b = (byte[])converter.ConvertTo(image, typeof(byte[]));
return File(b, _contentType);
}
}
이 코드에 의해 생성되는 이미지는 아주 작다.
내가 예상하는 문자 간격은 루프를 만들고 각 문자를 개별적으로 그려야하지만 C# 내부의 EM을 사용하려면 어떻게해야합니까?