2009-11-25 58 views
1

我正在組建一個網站,大量使用圖像。這些圖像需要以各種尺寸縮小以適應不同的模板。Django項目的用戶定義的Thumnails?

我知道像SORL-縮略圖,這似乎在各方面都完美,除了一個解決方案:我需要能夠覆蓋自動調整大小和裁剪如果計算機的選擇是一個壞的。

例如:說我上傳1000按1000像素的圖像。我需要一張300x200的縮略圖。如果我理解正確的話,sorl-thumbnail解決方案是將圖像重新縮放到300×300,然後放棄頂部和底部。

我想要做的是a)接受sorl風格的解決方案,如果它適用於圖像,但b)能夠覆蓋sorl的選擇 - 在管理員,可能 - 如果這樣更好地工作。例如,如果這是一個人的照片,那麼也許我寧願剪出這個人的軀幹,然後在她的臉上製作一個縮略圖,恰好位於右上角?

有這個沒有現成的,貨架可插拔解決方案,到目前爲止,我可以告訴(但請糾正我,如果我錯了)。除此之外,我希望聽到您關於可能會遇到問題的方式的想法。是否有某種jQuery插件可以讓我在中途停下來?

幫助!

回答

1

sorl-thumbnail具有智能裁剪功能,可以用最少的熵切割圖像部分。你所需要做的就是添加crop =「smart」。它在大多數情況下非常有效。

否則你可以退房django-imagehandler

+0

Imagehandler:只是完美。唯一的事情,它不對我做,只要我可以說,是爲每個圖像定義了多個縮略圖 - 一個是150x150,一個是300X200,但是這是解決我的問題的90%。謝謝! – hanksims 2009-11-25 19:51:22

2

如果您想要使用現成的可插拔設備,有 django-photologue django-imagehandler。它允許您生成縮略圖並在管理員上進行「手動修剪」。

另一個關閉的,現成的溶液是django-thumbs。 django-thumbs會覆蓋你的影像區域。唯一的缺點是你需要設置它將生成縮略圖的尺寸。

這2個應用程序都不能完全解決您的問題。但ATLEAST你知道從哪裏開始:)

django-photologue可以生成縮略圖,並添加效果和水印。

編輯:如果你想用jQuery來裁剪你的圖像,那麼你可以看看jCrop。這很容易使用。主要問題是您需要將圖像上傳到服務器,然後手動裁剪。

編輯2:了錯誤的信息。這不是django-photologue,而是django-imagehandler。

+1

感謝您的回答! Photologue允許你做「手動裁剪」,但?我無法在文檔中找到它。有一個引用? – hanksims 2009-11-25 19:00:08

+0

我的不好。這是圖像處理程序,而不是photologue :( – ikkebr 2009-11-25 19:21:17

+0

巴雷西擊敗你imagehandler幾分鐘!但非常感謝你的信息的答案。 – hanksims 2009-11-25 19:53:10