3

Django でトリミング可能な ImageField を最適に実装する方法を考えています。

基本的に、画像をアップロードしてトリミングしたいと思います。たとえば、imagAreaSelectの使用

私の頭に浮かんだ最初のアプローチは、モデルに ImageField といくつかのメタ フィールドを作成して、選択範囲のトリミング比率、幅、高さを保存することでした。しかし、これを解決し、トリミング動作をさらにカプセル化するためのよりクリーンな方法があるかどうか疑問に思います。

最終的には、目的の動作をウィジェットにラップしたいと思います。私が見る問題は、通常、ウィジェットが単一のデータベースフィールドにマップされることです。

それで、これがまったく可能かどうか、そして私の画像データをどのように保持するのが最善なのだろうか?

4

2 に答える 2

3

最終的に、画像をトリミングするための再利用可能なアプリを作成しました: django-image-cropping

于 2012-09-03T09:00:27.357 に答える
1

これを行うにはいくつかの方法があります。1 つの方法は、トリミングされていない画像の名前からトリミングされた画像の名前を推測することです。したがって、ImageField があり、uploads/images/family.jpg という名前の画像がある場合、CropableImageWidget は、トリミングされた画像が uploads/images/cropped/family.jpg に保存されていると想定する場合があります。

もう 1 つの方法は、クロッピング中に作成するすべてのファイルのシリアル化された表現を格納する独自のデータベース フィールド タイプを作成することです。JSON経由である可能性があります。

于 2011-07-04T16:31:30.143 に答える