2013-06-29 5 views
7

मुझे एक थंबनेल फ़िल्टर मिला है जो छवि को 9 0 डिग्री बाईं ओर घुमाने पर समाप्त होता है जब छवि चौड़ी होती है (मैंने जांच की है, और मूल छवि सीधे है, जबकि कैश की गई छवि घूर्णन की जाती है)। प्रासंगिक कोड इस तरह दिखता है:Django-imagekit में छवियों के ऑटो-रोटेशन को रोकना थंबनेल

profile_image = models.ImageField(upload_to='profile_images', default='profile_images/icon.png') 
profile_icon = ImageSpecField(source='profile_image', 
           processors=[processors.Thumbnail(width=72, height=72, crop=True)], 
           format='JPEG', 
           options={'quality': 60}) 

मैं ऑटो-रोटेशन को कैसे रोकूं?

उत्तर

2

ठीक है, यह पता चला है कि यह छवियों को अपलोड करने में समस्या है, Django के साथ कुछ भी नहीं। आईफोन पर ली गई तस्वीरों में फोन अभिविन्यास मेटाडेटा हो सकती है जो ब्राउज़र को फोटो के प्राकृतिक अभिविन्यास को सोचने का कारण बनती है। लेकिन, अगर मैं पूर्वावलोकन में उस तस्वीर को खोलता हूं, तो उसे बाएं घुमाएं और फिर सामान्य पर वापस जाएं, और फिर इसे फिर से सहेजें, कोई समस्या नहीं है।

Feed image shows rotated in certain browsers

आश्चर्य!

7

खुशी है कि आपने इसे समझ लिया है, लेकिन ImageKit कुछ अभी भी आपकी मदद करने में सक्षम हो सकता है। ट्रांज़ेक्शन प्रोसेसर देखें (imagekit.processors.Transpose)। डिफ़ॉल्ट रूप से, यह छवि में मेटाडेटा का उपयोग करेगा, और उस राशि से घूमता है! बस इस प्रोसेसर को पहले सूचीबद्ध करना सुनिश्चित करें क्योंकि बाद के प्रोसेसर छवि से मेटाडेटा को पट्टी करेंगे।

+0

[imagekit दस्तावेज़ीकरण] (https://django-imagekit.readthedocs.io/en/latest/) – brennan

3

matthewwithanm के सहायक सूचक पर विस्तार से बता दें ओपी के कोड इस तरह देखने के लिए बदलाव किया जाएगा:

profile_image = models.ImageField(upload_to='profile_images', default='profile_images/icon.png') 
profile_icon = ImageSpecField(source='profile_image', 
           processors=[ 
            processors.Transpose(), 
            processors.Thumbnail(width=72, height=72, crop=True) 
           ], 
           format='JPEG', 
           options={'quality': 60}) 

यानी, कोई तर्क के साथ processors.Transpose() के लिए एक कॉल जोड़ें।

मुझे फ़्लिकर से डाउनलोड की गई मूल चित्र-प्रारूप छवि के साथ यह समस्या थी। वह छवि (आईफोन पर ली गई) पोर्ट्रेट प्रारूप में है, और डिफ़ॉल्ट छविकिट द्वारा इसे घुमाता है, इस विशेष मामले में, 9 0 डिग्री विरोधी घड़ी के विपरीत।

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