2010-10-11 54 views
6

Tôi đang sử dụng đoạn mã sau để vẽ văn bản lên hình ảnh jpg nhưng nó yêu cầu x/y phối hợp percision về nơi để đặt văn bản.Làm thế nào để vẽ văn bản trung tâm vào một jpg sử dụng system.drawing trong C#

var bmp = new Bitmap("C:\\testing\\Given.jpg"); 
var gra = Graphics.FromImage(bmp); 

var text = "The Berman's"; 
var font = new Font("Segoe Script", 24); 
var brush = Brushes.Orange; 
var point = new PointF(130, 224); 

gra.DrawString(text, font, brush, point); 
bmp.Save("C:\\testing\\Custom.jpg"); 

Tôi làm cách nào để căn giữa văn bản vào hình ảnh? Tôi đoán nó sẽ phải làm gì với việc xác định một số loại container (hình chữ nhật có thể?) Đó là chiều rộng của hình ảnh và tập trung các văn bản trong đó? Không chắc thực hành tốt nhất là gì cho việc này.

Trả lời

14
using(var sf = new StringFormat() 
{ 
    Alignment = StringAlignment.Center, 
    LineAlignment = StringAlignment.Center, 
}) 
{ 
    gra.DrawString(text, font, brush, new Rectangle(0, 0, bmp.Width, bmp.Height), sf); 
} 
+1

làm việc cho tôi! Cảm ơn! – bychkov

+0

cảm ơn bạn! vẫn hoạt động trong năm 2016! – aiden87

Các vấn đề liên quan