2012-01-21 15 views
11

मैंने जावा के लिए कुछ छवि स्केलिंग लाइब्रेरी खोजे और पाये हैं। लेकिन यह सुनिश्चित नहीं है कि किसके साथ जाना है। मुझे सर्वर द्वारा अपलोड की गई छवि से थंबनेल जेनरेट करने की आवश्यकता है।बेस्ट इमेज स्केलिंग लाइब्रेरी

यह अच्छा होगा अगर आप यह बता सकें कि कौन सा अच्छा और बुरा है।

सूची मेरे पास है:

  • JMagick
  • im4java
  • Thumbnailator
  • जावा छवि स्केलिंग
  • जय

उत्तर

4

मेरी निजी परियोजनाओं में, मैं डॉन किसी भी विशिष्ट पुस्तकालय का उपयोग नहीं करते हैं, जावा के लिए प्रदान की गई कार्यक्षमता सभ्य बनाती है मेरे लिए परिणाम यदि आप सिर्फ छवि स्केलिंग करना चाहते हैं, तो एक पूर्ण छवि प्रसंस्करण लाइब्रेरी बहुत हेवीवेटेड होगी।

मैं http://www.mkyong.com/java/how-to-resize-an-image-in-java/ में दिए गए कोड स्निपेट का उपयोग करता हूं जो काफी अच्छी तरह से काम करता है।

5

थंबनेल जेनरेट करने के लिए जावा एपीआई पर्याप्त नहीं है यदि आपको उच्च गुणवत्ता वाले थंबनेल की आवश्यकता है।

उच्च गुणवत्ता वाले थंबनेल जेनरेट करने के लिए आपके द्वारा सूचीबद्ध किए गए ढांचे का उपयोग करें। मैंने ImgScalr (https://github.com/thebuzzmedia/imgscalr) और थंबनेलेटर की कोशिश की है। मेरे माइक्रोबेंमार्क परीक्षणों के साथ (वास्तव में सामान्य प्रयोजन निष्कर्षों के लिए उपयोग नहीं किया जा सकता है) थंबनेलेटर तेज़ है - हालांकि बहुत से नहीं, और आसान - खासकर जब पारदर्शिता के साथ थंबनेल उत्पन्न करते हैं।

मैं जेएमएजिक को भी आजमा रहा हूं लेकिन कोड को संकलित करने और इसे स्थापित करने के मुद्दों में भाग ले रहा हूं। - इसके अलावा एक रूपरेखा जिसका बुनियादी कोड एक भाषा में लिखा गया मैं बिल्कुल समझ में नहीं आता के साथ बाद में समस्याओं में घिर गए के बारे में थोड़ा चिंतित सी

तुम भी उपयोगी चर्चा यहां मिल सकती है: How can I resize an image using Java?

5

के लिए मेरी सरल जरूरतों, Thumbnailator सही था। छोटा मुक्ति; धाराप्रवाह, साफ, अच्छी तरह से प्रलेखित एपीआई।

//.. 
Thumbnails.of(originalFile) 
     .size(300, 300) 
     .toFile(thumbnailFile) 
//.. 

और किया:

मेरे मामले में, यह सिर्फ "net.coobird" % "thumbnailator" % "0.4.8" निर्भरता और था। असल में यह जावा 2 डी एपीआई के शीर्ष पर एक दोस्ताना रैपर है। विशिष्ट (थंबनेलिन ') आवश्यकताओं के लिए उपयोगी; कोई सीखने की वक्र नहीं।


जब तक आप वास्तव में छवियों के साथ कुछ भारी उठाने करने की जरूरत है, मैं एक बाहरी द्विआधारी पर निर्भर करता है से सावधान रहना चाहते हैं (ImageMagick और JMagick तरह रैपर) है, जो सेटअप में जटिलता और भागों चलती जोड़ना होगा। विशेष रूप से यदि आपका ढेर मेरा जैसा कुछ है: स्काला/जावा ऐप हेरोकू पर चल रहा है। heroku-buildpack-imagemagick-cedar-14 जैसी चीजें हैं, हां, लेकिन ऐप के साथ बंडल की गई एक साधारण निर्भरता असीम रूप से क्लीनर है।

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