2013-07-29 4 views
38

मैं इसे मानचित्र पर आकर्षित करने के लिए बोल्ड टेक्स्ट के साथ बिटमैप आइकन चाहता हूं।मैं बिटमैप पर बोल्ड टेक्स्ट कैसे आकर्षित करूं?

Bitmap icon = BitmapFactory.decodeResource(PropertyMapList.this.getResources(), 
     R.drawable.location_mark); 
TextPaint paint = new TextPaint(); 
paint.setColor(Color.BLACK); 
paint.setTextSize(14); 
paint.setFakeBoldText(true); 
//paint.setTextAlign(Align.CENTER); 
Bitmap copy = icon.copy(Bitmap.Config.ARGB_8888, true); 
Canvas canvas = new Canvas(copy); 
//canvas.drawText(jsonObj.getString("district_name"), 5, canvas.getHeight()/2, paint); 
String districtName = jsonObj.getString("district_name"); 
StaticLayout layout = new StaticLayout((districtName.length()>25 ? districtName.substring(0, 24)+"..":districtName)+"\n"+jsonObj.getString("total_properties"), paint, canvas.getWidth()-10,Layout.Alignment.ALIGN_CENTER, 1.3f, 0, false); 
canvas.translate(5, canvas.getHeight()/2); //position the text 
layout.draw(canvas); 

setFakeBoldText(true) मेरे लिए काम नहीं करता है: मैं छवि पर पाठ लिखने के लिए एक टुकड़ा है। मैं बिटमैप पर बोल्ड होने के लिए खींचा गया टेक्स्ट चाहता हूं।

उत्तर

113

बोल्ड स्टाइल चालू होने के साथ फ़ॉन्ट को सेट करने के लिए Paint ऑब्जेक्ट पर setTypeface विधि का उपयोग करें।

paint.setTypeface(Typeface.create(Typeface.DEFAULT, Typeface.BOLD)); 
+1

क्या आप थोड़ा स्पष्ट समझा सकते हैं? –

+0

सेट टाइपफेस आपको एक फ़ॉन्ट सेट करने की अनुमति देता है। फ़ॉन्ट्स में शैक्षिक, बोल्ड, इटैलिक इत्यादि हैं। आप टाइपफेस के लिए कन्स्ट्रक्टर देख सकते हैं और देख सकते हैं कि उस शैली के साथ फ़ॉन्ट कैसे बनाएं। एक बार जब आप एक बनाते हैं और इसे इस कॉल के माध्यम से सेट करते हैं, तो इस पेंट के साथ सभी भावी ड्रा कमांड उस फ़ॉन्ट का उपयोग करेंगे। –

+1

मैंने 6 या 7 उत्तरों की कोशिश की, और यह वास्तव में काम करने वाला एकमात्र व्यक्ति था। – durbnpoisn

संबंधित मुद्दे