Yapmaya çalıştığım şey, bitmap'e bir dize çizmek için DrawString() yöntemini kullanmaktır. Bunu yapmak için, bir bitmap oluşturmalı ve bitmap'ten bir Grafik nesnesi almalı, daha sonra bu Graphics nesnesinde DrawString() öğesini çağırmalıyım.Metin dizesini tutmak için bitmap boyutunu belirleme
Sorun şu ki, ilk bitmapimi oluşturduğumda, bitmapimi kaç piksel genişliğinde ve uzunluğunda oluşturduğumu önceden nasıl bilebilirim?
Bunun MeasureString() ile ilgili bir şey olduğunu biliyorum, ancak MeasureString() yöntemini kullanabilmek için, bitmap'ten Graphics nesnesini almam gerekiyor. Ben bitmap'i oluşturana kadar onu alamıyorum. Dairesel bir paradoks gibi görünüyor!
Birisi bana bunun üzerinde yardımcı olabilir misiniz? Sonra
private static Bitmap measureBmp = new Bitmap(1, 1);
Eğer
using (var measureGraphics = Graphics.FromImage(measureBmp))
{
var stringSize = measureGraphics.MeasureString("measureString", this.Font);
}
resmin boyutu zorundaydım ölçümü
Evet, ancak 1x1 bitmap oluşturdunuz. Benim bitmapimin bundan daha büyük olması gerekecek. – Icemanind
icemanind: 1x1 bitmap yalnızca ölçüm içindir. "StringSize" aldığınızda, uygun boyutta bitmap oluşturabilirsiniz. – Gabe
@icemanind, bitmap'in boyutunu ölçülemez MeasureString, bitmap 1x1 olsa bile, bu 'stringSize: {Width = 77.4010315 Height = 13.8251925}' bilgisayarımda döndürür. –