ImageMagick के साथ चित्रों के कोनों गोलाई

वोट
8

मेरी रेल अनुप्रयोग में मैं फेसबुक जहां अपलोड की गई छवियों को स्वचालित रूप से लघु छवि बनाई और कोने-गोल कर रहे हैं जैसे एक समान प्रोफ़ाइल अनुभाग करना चाहते हैं। मैं उपयोग कर रहा हूँ convertउपयोगिता थंबनेल में छवियों को घटाने के लिए, लेकिन वहाँ भी उनके कोनों दौर के लिए एक विकल्प है? धन्यवाद।

05/04/2009 को 04:56
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


4 जवाब

वोट
4

यहाँ कुछ गोलाकार कोनों उदाहरण हैं: http://www.imagemagick.org/Usage/thumbnails/#rounded_border । आप (या तो हाथ से या ड्राइंग उपकरण का उपयोग कर) किसी प्रकार की एक मुखौटा बनाने और उसके बाद अपनी छवि पर इसे ओवरले करने के लिए की आवश्यकता होगी।

05/04/2009 को 05:04
का स्रोत उपयोगकर्ता

वोट
7

फेसबुक गोलाकार कोनों के लिए चित्रों को संशोधित नहीं करता है। इसके बजाय, वे प्रत्येक उपयोगकर्ता चित्र पर इस छवि को लागू करने के लिए HTML और सीएसएस का उपयोग करें: http://www.facebook.com/images/ui/UIRoundedImage.png

आप का निरीक्षण किया तो UIRoundedImage.png, आप पाएंगे कि प्रत्येक "वर्ग" एक पारदर्शी केंद्र के होते हैं, और अपारदर्शी कोनों कि पृष्ठभूमि जिस पर उपयोगकर्ता चित्र आराम होगा मैच के लिए होती हैं। उदाहरण के लिए, यदि उपयोगकर्ता चित्र एक सफेद पृष्ठभूमि पर है, तो सफेद अपारदर्शी गोलाकार कोनों उपयोगकर्ता चित्र पर डाला जाएगा।

का सिर्फ एक विशिष्ट भाग का उपयोग कर के लिए सीएसएस तकनीक UIRoundedImage.pngकहा जाता है "CSS स्प्राइट"। आप यहाँ इसके बारे में अधिक पढ़ सकते हैं: http://www.alistapart.com/articles/sprites/

05/04/2009 को 05:32
का स्रोत उपयोगकर्ता

वोट
0

यहाँ कोड मैं ImageMagick पर्ल का उपयोग कर के साथ कोनों दौर को पत्र लिखा है। यह काफी आसानी से रूबी के लिए बंदरगाह चाहिए:

http://article.gmane.org/gmane.comp.video.graphicsmagick.apis/322

08/02/2011 को 00:24
का स्रोत उपयोगकर्ता

वोट
9

यूनिवर्सल समाधान

यह समाधान पारदर्शी और अपारदर्शी चित्रों के साथ काम करता है। को जोड़ने के लिए 15 पिक्सल गोलाकार कोनों त्रिज्या के लिए original_picture.pngजो एक 100x100 तस्वीर है:

convert -size 100x100 xc:none -draw "roundrectangle 0,0,100,100,15,15" mask.png
convert original_picture.png -matte mask.png \
  -compose DstIn -composite picture_with_rounded_corners.png

यह समाधान द्वारा दिया गया था अपराह्न यहाँ: https://stackoverflow.com/a/1916256/499917

सुरुचिपूर्ण समाधान, पारदर्शी चित्रों के साथ काम नहीं करता है

यह समाधान किसी भी मध्यवर्ती चित्र के बिना काम करता है। कितना अच्छा है! लेकिन यह अपने मूल चित्र की पारदर्शिता को बाधित करेगा। तो केवल का उपयोग करके ऐसी सुनिश्चित करें कि अपनी तस्वीर पारदर्शी नहीं है कर रहे हैं।

मान लीजिए आप 15px त्रिज्या के साथ गोलाकार कोनों हैं:

convert original_picture.png \
  \( +clone  -alpha extract \
    -draw 'fill black polygon 0,0 0,15 15,0 fill white circle 15,15 15,0' \
    \( +clone -flip \) -compose Multiply -composite \
    \( +clone -flop \) -compose Multiply -composite \
  \) -alpha off -compose CopyOpacity -composite picture_with_rounded_corners.png

सुविधा के लिए, यहाँ क्या आप आम तौर पर रूबी या कुछ अन्य भाषाओं में करना होगा है:

in_pic = "original_picture.png"
out_pic = "picture_with_rounded_corners.png"
radius = 15
cmd = "convert #{in_pic} \\( +clone  -alpha extract " +
        "-draw 'fill black polygon 0,0 0,#{radius} #{radius},0 fill white circle #{radius},#{radius} #{radius},0' " +
        "\\( +clone -flip \\) -compose Multiply -composite " +
        "\\( +clone -flop \\) -compose Multiply -composite " +
        "\\) -alpha off -compose CopyOpacity -composite #{out_pic}"
`#{cmd}`

स्रोत: http://www.imagemagick.org/Usage/thumbnails/#rounded

24/09/2013 को 22:17
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more