Django - 以格式.tif上传图像并转换为JPEG的方法

时间:2015-11-14 05:14:07

标签: django image

我是django的新手,我需要开发一个上传.tif格式图像的功能。我需要将图像转换为JPEG,同时我想保存原始图像,这意味着两个图像类型将保存在同一目录中。我可以使用的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

首先将文件上传到服务器。然后在使用PIL

保存之前将其转换
from PIL import Image
img = Image.open('image.tiff') #image.tiff from request.FILES
img.save('image.jpg', "JPEG")

答案 1 :(得分:1)

您可以在此处找到接受上传文件的示例django项目:https://github.com/axelpale/minimal-django-file-upload-example

PIL(Python图像库)已经死了。但是,您可以使用一个主动维护的分支,而不是名为Pillow

您可以通过点子获取Pillow,如下所示:

pip install Pillow

您可以使用Pillow将保存的tif文件转换为jpeg,如下所示:

import os
from PIL import Image
example_path_to_tif = 'saved_files/test.tif'
corresponding_jpeg_path = os.path.join(os.path.splitext(example_path_to_tif)[0], '.jpeg')
im = Image.open(example_path_to_tif)
im.save(corresponding_jpeg_path , "JPEG")

这会将jpeg保存到tif所在的同一目录中,并使用相同的文件名(但扩展名不同)。