Django-תמונה-חיתוך הוא אפליקציה Django לחיתוך תמונות נטענות דרך backend הניהול של Django באמצעות imgareaselect & nbsp;. זה שומר את התמונה המקורית ללא שינוי, רק חיתוך כאשר התמונה מוצגת. תמונות גדולות מוצגות בפורמט קטן, כל כך בקלות יכולות להיות קצוצות אפילו תמונות גדולות מאוד.
Django-תמונה-החיתוך מושלם בעת צורך לתמונות בגודל מסוים לתבניות שלך, אבל רוצה שהמשתמשים או העורכים שלך להעלות תמונות של כל ממד. הוא מציג מבחר עם יחס רוחב-גובה קבוע, כך שמשתמש שלך לא יכול לשבור את הפריסה עם תמונות מוזרה בגודל.
הוא מספק את השדות, ווידג'טים הכרחיים ומעבד תמונה ממוזערת (easy_thumbnails) להצגת התמונה החתוכה בתבניות שלך. עובד גם עם סוגי תוכן FeinCMS!
התקנה
1. התקן Django-תמונה-חיתוך באמצעות פיפס. למשל:
& Nbsp; פיפס להתקין 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 יש הרימו את הקבצים סטטיים הדרושים באופן אוטומטי. בכל שאר המקרים אתה צריך להעתיק או קישור סמלי הקבצים סטטיים. בהתאם להגדרה שלך את הפקודה צריכה להיראות similiar לזה:
& Nbsp; LN -s ~ / .virtualenvs / yourenv / src / Django-תמונה-חיתוך / image_cropping / סטטי / image_cropping /
תצורה
על מנת להפוך את croppable ImageField רגיל, פשוט להפוך אותו לImageCropField. לאחר מכן להוסיף ImageRatioField, אשר יכיל את הגבולות של התמונה החתוכה. ImageRatioField מצפה את שמו של ImageCropField הקשורים כטענה הראשונה ואת גודל התמונה הסופית שיוצג כטענה השנייה.
הגודל עובר כבמחרוזת ומגדיר את היחס הגובה-הרוחב של הבחירה, כמו גם את הגודל המינימאלי לתמונה הסופית. אם המשתמש מנסה לחתוך תמונה שקטנה יותר מהמינימום הזה, הבחירה נעולה.
1. שדות דגם ואפשרויות:
& Nbsp; מimage_cropping.fields לייבא ImageRatioField, ImageCropField
& Nbsp; תמונה = ImageCropField (ריק = True, null = True, upload_to 'uploaded_images' =)
& Nbsp; # גודל הוא "גובה x רוחב"
& Nbsp; חיתוך = ImageRatioField ('תמונה', '430x360')
2. אם ההתקנה שלך היא נכונה אתה צריך באופן אוטומטי לראות את יישומון התמונה המשופר המספק אזור בחירה לתמונה בbackend admin.
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, null = 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
תגובות לא נמצא