यहां मेरी समस्या है, मैं टेक्स्ट की वास्तविक लंबाई पिक्सेल में जानना चाहता हूं (ध्यान दें कि विभिन्न अक्षरों में कुछ फोंट में अलग-अलग लंबाई होती है)। मैं डीबीजीड में बेहतर कॉलम चौड़ाई समायोजन के लिए इसका उपयोग करने जा रहा हूं।डेल्फी में एक पाठ/कैप्शन के पिक्सेल में चौड़ाई 7
11
A
उत्तर
24
आप Canvas.TextWidth
और Canvas.TextHeight
फ़ंक्शंस का उपयोग कर सकते हैं।
विकल्प 1,, नियंत्रण
WidthInPixels := Label1.Canvas.TextWidth('My Text');
विकल्प 2 के कैनवास का उपयोग कर एक अस्थायी कैनवास (एक Tbitmap का उपयोग कर)
Function GetWidthText(const Text:String; Font:TFont) : Integer;
var
LBmp: TBitmap;
begin
LBmp := TBitmap.Create;
try
LBmp.Canvas.Font := Font;
Result := LBmp.Canvas.TextWidth(Text);
finally
LBmp.Free;
end;
end;
5
बनाने यदि आप एक डेल्फी घटक एक "कैनवास" है है संपत्ति, तो आप Component.Canvas.TextWidth का उपयोग कर सकते हैं। उदाहरण के लिए: DBGrid के पाठ की चौड़ाई प्राप्त करने के लिए आप का उपयोग कर सकते हैं: Length of Delphi string in pixels
मुझे भी यह शर्त 10 सेकेंड से:
यहाँ आप इस मुद्दे के बारे में पूरी संदर्भ पा सकते हैं! –