Django-image-περικοπή είναι μια εφαρμογή Django για την περικοπή εικόνων που αποστέλλονται μέσω διαχειριστή backend Django χρησιμοποιώντας imgareaselect & nbsp?. Διατηρεί την αρχική εικόνα άθικτο, μόνο περικοπή όταν εμφανίζεται η εικόνα. Μεγάλες εικόνες που παρουσιάζονται σε ένα μικρό σχήμα, έτσι ώστε ακόμη και πολύ μεγάλες εικόνες μπορούν εύκολα να περικοπεί.
Django-image-περικοπή είναι τέλειο όταν χρειάζεστε εικόνες με ένα συγκεκριμένο μέγεθος για τα πρότυπά σας, αλλά θέλετε οι χρήστες ή οι συντάκτες σας να ανεβάσετε εικόνες σε οποιαδήποτε διάσταση. Παρουσιάζει μια επιλογή με μια σταθερή αναλογία πλευρών, ώστε οι χρήστες σας δεν μπορεί να σπάσει τη διάταξη με παράξενα μεγέθους εικόνες.
Παρέχει τα απαραίτητα πεδία, widgets και έναν επεξεργαστή (easy_thumbnails) μικρογραφία για την εμφάνιση της περικομμένη εικόνα σε πρότυπά σας. Επίσης, συνεργάζεται με τους τύπους περιεχομένου FeinCMS!
installation
1. Εγκαταστήστε το Django-εικόνα-περικοπή χρησιμοποιώντας pip. Για παράδειγμα:
& Nbsp? Pip εγκατάσταση Django-εικόνας-περικοπής
2. Προσθέστε easy_thumbnails και image_cropping να INSTALLED_APPS σας. image_cropping απαιτείται μόνο εάν χρησιμοποιείτε Django 1.3 και contrib.staticfiles
3. Ρυθμίστε τους επεξεργαστές μικρογραφία για easy_thumbnails σε settings.py σας:
& Nbsp? Από easy_thumbnails εισαγωγή προεπιλογές
& Nbsp? THUMBNAIL_PROCESSORS = (
& Nbsp? "Image_cropping.thumbnail_processors.crop_corners»,
& Nbsp?) + Defaults.PROCESSORS
4. Ανάπτυξη των απαραίτητων στατικά αρχεία:
& Nbsp? Αν χρησιμοποιείτε Django 1.3 και contrib.staticfiles τα απαραίτητα στατικά αρχεία θα πρέπει να συλλέγονται αυτόματα. Σε όλες τις άλλες περιπτώσεις, θα πρέπει να αντιγράψετε ή δεσμός τα στατικά αρχεία. Ανάλογα με τις ρυθμίσεις σας, η εντολή θα δούμε παρόμοια με αυτό:
& Nbsp? Ln -s ~ / .virtualenvs / yourenv / src / Django-image-περικοπή / image_cropping / στατικές / image_cropping /
Διαμόρφωση
Για να κάνετε μια τακτική croppable ImageField, απλά να το μετατρέψει σε ένα ImageCropField. Στη συνέχεια, προσθέστε ένα ImageRatioField, η οποία θα περιέχει τα όρια της περικομμένη εικόνα. Η ImageRatioField αναμένει το όνομα του συνδέεται ImageCropField ως πρώτο επιχείρημα και το μέγεθος της τελικής εικόνας που θα εμφανίζεται ως το δεύτερο επιχείρημα.
Το μέγεθος έχει περάσει στο ως string και καθορίζει την αναλογία διαστάσεων της επιλογής, καθώς και το ελάχιστο μέγεθος για την τελική εικόνα. Εάν ο χρήστης προσπαθήσει να περικόψετε μια εικόνα που είναι μικρότερα από το ελάχιστο, η επιλογή είναι κλειδωμένο.
1. Μοντέλο πεδία και τις επιλογές:
& Nbsp? Από image_cropping.fields εισαγωγή ImageRatioField, ImageCropField
& Nbsp? Image = ImageCropField (κενό = True, μηδενική = True, upload_to «uploaded_images» =)
& Nbsp? # Μέγεθος είναι "πλάτος x ύψος"
& Nbsp? Περικοπή = ImageRatioField («εικόνα», «430x360)
2. Εάν η εγκατάστασή σας είναι σωστή θα πρέπει να δείτε αυτόματα την ενισχυμένη widget εικόνα που παρέχει μια περιοχή επιλογής για την εικόνα στο backend διαχειριστή.
3. Παράδειγμα της χρήσης του επεξεργαστή μικρογραφία:
& Nbsp? {% Μικρογραφία yourmodel.image 430x360 κουτί = yourmodel.cropping λεπτομέρεια καλλιεργειών%}
4. Επιπλέον, μπορείτε να ορίσετε το μέγιστο μέγεθος της μικρογραφίας προεπισκόπησης στο settings.py σας:
& Nbsp? # Μέγεθος είναι "πλάτος x ύψος"
& Nbsp? IMAGE_CROPPING_THUMB_SIZE = (300, 300)
Πρόσθετα
Εάν χρειάζεστε την ίδια εικόνα σε πολλές μορφές, απλά προσδιορίστε μια άλλη ImageRatioField. Αυτό θα επιτρέψει την εικόνα που θα περικοπεί δύο φορές:
από image_cropping.fields εισαγωγή ImageRatioField, ImageCropField
εικόνα = ImageCropField (κενό = True, μηδενική = True, upload_to = 'uploaded_images »)
# Μέγεθος είναι "πλάτος x ύψος"
list_page_cropping = ImageRatioField («εικόνα», «200x100)
detail_page_cropping = ImageRatioField («εικόνα», «430x360)
Στα πρότυπα σας, απλά χρησιμοποιήστε το αντίστοιχο πεδίο αναλογία:
{% Μικρογραφία yourmodel.image 200x100 κουτί = yourmodel.list_page_cropping λεπτομέρεια καλλιεργειών%}
Απαιτήσεις :
- Python
- Django
Τα σχόλια δεν βρέθηκε