15

के साथ किसी छवि का रंग बदलें, मैं rmagick/imagemagick का उपयोग करके किसी छवि के अग्रभूमि रंगों को बदलना चाहता हूं। अधिक विशिष्ट होने के लिए: मैं black या whiteglyphicons-halflings आइकन (जो ट्विटर बूटस्ट्रैप में शामिल हैं) को darkblue ग्लाइफ़िकॉन-आधा रोशनी आइकन में कनवर्ट करना चाहता हूं। (यह अच्छा होगा अगर मैं हेक्सकलर या आरजीबी रंग निर्दिष्ट कर सकता हूं।)imagemagick

मुझे यह नहीं पता कि यह भी संभव है, लेकिन मैंने छविमैजिक दस्तावेज के माध्यम से क्लिक किया और मुझे मिली एकमात्र चीज़ convert --size 100x100 xc:skyblue glyphicons-halflings.png -composite foo.png है, समस्या यह है कि केवल तभी काम करता है जब आप आकार निर्दिष्ट करते हैं और यह कि अग्रभूमि रंग बदल रहा है, पृष्ठभूमि रंग नहीं। इसके अलावा स्काईब्लू ब्लूब्लू नहीं है।

तो कोई भी जिसके पास यह विचार है कि मैं सफेद या काले ग्लाइफिकॉन-आधे रोशनी को ब्लू ग्लाइफिकॉन-आधा रोशनी आइकन में कैसे परिवर्तित कर सकता हूं?

convert glyphicons-halflings.png -fill darkblue +opaque darkblue glyphicons-halflings.png

आप यह कर करना चाहते हैं: (rmagick/गहरे लाल रंग का कोड के टुकड़े के लिए Bonuspoints)

+0

यदि आप उन्हें वितरित नहीं कर सकते हैं तो बोनसपॉइंट्स का वादा न करें ...:-) –

+0

एसई पर वितरित करने वाले एकमात्र बोनसपॉइंट को 'बाउंटी' कहा जाता है :-) –

+0

हाय @ माइकल-पेर, कृपया मेरा उत्तर देखें। क्या यह आपकी समस्या का समाधान करता है? कृपया, बस मुझे बताएं। Att –

उत्तर

5

http://www.imagemagick.org/Usage/color_basics/#replace से, आप छवि में सभी रंग कि निम्न आदेश के साथ darkblue साथ darkblue नहीं हैं जगह ले सकता है रूबी में, मैं मिनीमैजिक मणि https://github.com/minimagic/minimagick का उपयोग करने की अनुशंसा करता हूं जो कमांड लाइन पर convert पर कॉल करता है।

convert glyphicons-halflings.png -alpha extract -background blue \ 
-alpha shape blue-glyphicons-halflings.png 

blue-glyphicons-halflings.png

नोट:: मेरे अनुभव से, नहीं सभी कार्यक्षमता RMagick को

33

त्वरित जवाब कमांड लाइन से पोर्ट कर दिया गया है किसी भी नामित रंग blue के बजाय, आप उपयोग कर सकते हैं, या आरजीबी, या आरजीबीए, आदि (देखें http://www.imagemagick.org/script/command-line-options.php#fill)।

स्पष्टीकरण:

हम "colorize" एक दो चरण की प्रक्रिया में प्रतीक:

  • माउस से अल्फ़ा चैनल निकालें; (नोट: मूल आइकन का रंग कोई फर्क नहीं पड़ता, हम इसके अल्फा चैनल को निकाल रहे हैं)
  • उपरोक्त मुखौटा को अपनी पसंद की रंगीन पृष्ठभूमि पर लागू करें;

    पुनश्च::

अधिक जानकारी के लिए निम्न डॉक्स पढ़ ऊपर समाधान करते हुए लागू करने jQuery ThemeRoller पुनर्लेखन शोध किया गया है https://github.com/jquery/download.jqueryui.com/issues/77

3

सुगा के जवाब के अलावा - यहां है रूबी संस्करण (यद्यपि क्विकमैजिक के लिए):

require 'quick_magick' 
source = "images/source.png" 
dest = "images/saved.png" 
foreground = "0000ff" #hex code for your colour 

QuickMagick.exec3("convert #{source} -fill \"##{foreground}\" +opaque \"##{foreground}\" #{dest}")