कोई भी इनपुट टेक्स्ट से छवि उत्पन्न करने का मार्गदर्शन कर सकता है। छवि में कोई विस्तार नहीं हो सकता है।रनटाइम पर फ्लाई पर टेक्स्ट से छवि कैसे उत्पन्न करें
उत्तर
ठीक है, यह सोचते हैं आप सी # में एक छवि पर एक स्ट्रिंग आकर्षित करने के लिए चाहते हैं, आप यहाँ System.Drawing नाम स्थान उपयोग करने की आवश्यकता करने जा रहे हैं:
private Image DrawText(String text, Font font, Color textColor, Color backColor)
{
//first, create a dummy bitmap just to get a graphics object
Image img = new Bitmap(1, 1);
Graphics drawing = Graphics.FromImage(img);
//measure the string to see how big the image needs to be
SizeF textSize = drawing.MeasureString(text, font);
//free up the dummy image and old graphics object
img.Dispose();
drawing.Dispose();
//create a new image of the right size
img = new Bitmap((int) textSize.Width, (int)textSize.Height);
drawing = Graphics.FromImage(img);
//paint the background
drawing.Clear(backColor);
//create a brush for the text
Brush textBrush = new SolidBrush(textColor);
drawing.DrawString(text, font, textBrush, 0, 0);
drawing.Save();
textBrush.Dispose();
drawing.Dispose();
return img;
}
इस कोड को पहली स्ट्रिंग को मापने, एक और फिर सही आकार की एक छवि बनाएँ।
यदि आप इस फ़ंक्शन की वापसी को सहेजना चाहते हैं, तो बस लौटाई गई छवि की सहेजें विधि को कॉल करें।
लाइन का उपयोग कर रहे हैं "छवि img = new बिटमैप (0, 0);", काम नहीं करता है: आप 0-आकार वाली छवि नहीं बना सकते हैं। इसे "नया बिटमैप (1, 1)" में बदलें, यह काम करता है। – neminem
यदि आप 'ड्राइंग .extRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;' 'ड्राइंग से पहले 'जोड़ें। ड्रॉस्ट्रिंग (टेक्स्ट, फ़ॉन्ट, टेक्स्टब्रश, 0, 0);' लाइन, आपको चिकनी एंटी-एलाइज्ड टेक्स्ट मिलेगा । – LoneBunny
चित्र पर पाठ प्रतिपादन के लिए उपयोग imagemagick (सर्वर पर)
जब से तुम सी # में हैं तो आप भी (जैसे वर्गों के साथ: System.Drawing.Bitmap
और System.Drawing.Graphics
) सीधे बिटमैप और फ़ॉन्ट हेरफेर के लिए नेट वर्गों इस्तेमाल कर सकते हैं
मैंने इस answer में उल्लिखित इस विधि का अनुवाद VB.NET विधि में किया है। शायद यह किसी की मदद करता है।
Public Function DrawText(ByVal text As String, ByRef font As Font, ByRef textColor As Color, ByRef backColor As Color) As Image
' first, create a dummy bitmap just to get a graphics object
Dim img As Image = New Bitmap(1, 1)
Dim drawing As Graphics = Graphics.FromImage(img)
' measure the string to see how big the image needs to be
Dim textSize As SizeF = drawing.MeasureString(Text, Font)
' free up the dummy image and old graphics object
img.Dispose()
drawing.Dispose()
' create a new image of the right size
img = New Bitmap(CType(textSize.Width, Integer), CType(textSize.Height, Integer))
drawing = Graphics.FromImage(img)
' paint the background
drawing.Clear(BackColor)
' create a brush for the text
Dim textBrush As Brush = New SolidBrush(textColor)
drawing.DrawString(text, font, textBrush, 0, 0)
drawing.Save()
textBrush.Dispose()
drawing.Dispose()
Return img
End Function
संपादित: फिक्स्ड टाइपो।
धन्यवाद फ्रेडी, आपने मुझे बहुत सारी ऊर्जा बचाई। – BedfordNYGuy
F#
संस्करण:
open System.Drawing
let drawText text font textColor backColor =
let size =
use dummyImg = new Bitmap(1, 1)
use drawing = Graphics.FromImage(dummyImg)
drawing.MeasureString(text, font)
let img = new Bitmap((int size.Width), (int size.Height))
use drawing = Graphics.FromImage(img)
use textBrush = new SolidBrush(textColor)
do
drawing.Clear(backColor)
drawing.DrawString(text, font, textBrush, PointF())
drawing.Save() |> ignore
img
धन्यवाद Kazar। पिछले जवाब का एक मामूली सुधार छवि/ग्राफिक वस्तुओं के बाद इस्तेमाल किया की समाप्ती और मिनट आकार परम की शुरूआत
private Image DrawTextImage(String currencyCode, Font font, Color textColor, Color backColor) {
return DrawTextImage(currencyCode, font, textColor, backColor, Size.Empty);
}
private Image DrawTextImage(String currencyCode, Font font, Color textColor, Color backColor, Size minSize) {
//first, create a dummy bitmap just to get a graphics object
SizeF textSize;
using (Image img = new Bitmap(1, 1)) {
using (Graphics drawing = Graphics.FromImage(img)) {
//measure the string to see how big the image needs to be
textSize = drawing.MeasureString(currencyCode, font);
if (!minSize.IsEmpty) {
textSize.Width = textSize.Width > minSize.Width ? textSize.Width : minSize.Width;
textSize.Height = textSize.Height > minSize.Height ? textSize.Height : minSize.Height;
}
}
}
//create a new image of the right size
Image retImg = new Bitmap((int)textSize.Width, (int)textSize.Height);
using (var drawing = Graphics.FromImage(retImg)) {
//paint the background
drawing.Clear(backColor);
//create a brush for the text
using (Brush textBrush = new SolidBrush(textColor)) {
drawing.DrawString(currencyCode, font, textBrush, 0, 0);
drawing.Save();
}
}
return retImg;
}
- 1. फ्लाई पर फ्लाई पर एमपीआई प्रक्रियाएं बनाएं?
- 2. PHP गतिशील छवि का आकार (फ्लाई पर)
- 3. छवि पर एंड्रॉइड टेक्स्ट
- 4. रनटाइम पर किसी अज्ञात प्रकार का उदाहरण कैसे उत्पन्न करें?
- 5. मैं एंड्रॉइड पर रनटाइम पर एक्सएमएल संसाधन कैसे उत्पन्न करूं?
- 6. रनटाइम पर बाइनरी छवि आर्किटेक्चर कैसे निर्धारित करें?
- 7. रनटाइम पर टेक्स्ट से LINQ क्वेरी कैसे बनाएं?
- 8. फ्लाई पर जेएस या सीएसएस को कैसे कम करें
- 9. फ्लाई यूआरएल शॉर्टनर पर jQuery
- 10. फ्लाई पर उपयोगकर्ता संपादन "संपादन"?
- 11. Node.js के साथ फ्लाई पर एक छवि कैसे बनाएं?
- 12. टेक्स्ट पर पृष्ठभूमि छवि रखें?
- 13. फ्लाई पर/res/drawable/लिखें?
- 14. सीएसएस: छवि पर बॉक्स + टेक्स्ट
- 15. फ्लाई पर सबडोमेन बनाना
- 16. आईओएस (छवि प्रसंस्करण) पर छवि से टेक्स्ट प्राप्त करना
- 17. रनटाइम पर रिंगटोन वरीयता कैसे प्राप्त करें?
- 18. फ्लाई पर EmberJS TextField मान्य करें?
- 19. रनटाइम पर क्रिस्टल रिपोर्ट में छवि जोड़ें
- 20. फ्लाई पर PHP ज़िप फाइलें
- 21. रनटाइम पर java.net.preferIPv4Stack = true कैसे सेट करें?
- 22. फ्लाई पर @ फ़ॉन्ट-फेस जोड़ना
- 23. सी # रनटाइम पर गतिशील रूप से विभिन्न इंटरफेस को लागू करने वाली ऑब्जेक्ट कैसे उत्पन्न करें?
- 24. फ्लाई पर पीडीएफएलएक्स के साथ फ्लाई पर ईपीएस को पीडीएफ में परिवर्तित करें
- 25. फ्लाई पर पेपैल बटन बनाना
- 26. रनटाइम पर नियंत्रण कैसे बनाएं?
- 27. फ्लाई पर फ़ील्ड की कॉन्फ़िगरेशन कैसे जोड़ें?
- 28. छवि पर चित्रण करें
- 29. सी # 4.0, फ्लाई पर तरीके?
- 30. विधानसभा से पहले रनटाइम पर assemby कैसे लोड करें घटनाक्रम?
क्या आपका मतलब है आप की तरह एक छवि एक स्क्रीन पर कब्जा से प्राप्त होता है के लिए उपयोग कर उपयोग कैसे करें? निश्चित रूप से, * कुछ * प्रारूप/एक्सटेंशन दूसरों की तुलना में बेहतर होंगे। – pavium
आपका किस प्रकार का टेक्स्ट इनपुट मतलब है? –
नहीं, यह स्क्रीन कैप्चर नहीं है हमारे पास इनपुट टेक्स्टबॉक्स है और हम सी # – Ravia