上传图片,生成缩略图
时间: 2023-08-18 21:10:33 浏览: 150
可以使用Python的Pillow库生成缩略图。以下是一个示例代码:
```python
from PIL import Image
# 打开原始图片
image = Image.open('original_image.jpg')
# 生成缩略图
image.thumbnail((200, 200))
# 保存缩略图
image.save('thumbnail_image.jpg')
```
这个示例代码将原始图片缩小成最大边长为200像素的缩略图,并保存为`thumbnail_image.jpg`文件。你可以根据需要修改缩略图的大小和名称。
相关问题
php上传图片时怎么及时显示缩略图,php上传图片时生成缩略图
可以使用PHP的GD库来生成缩略图。下面是一个简单的示例代码:
```php
// 设置缩略图尺寸
$thumbWidth = 200;
$thumbHeight = 200;
// 获取上传的图片
$uploadedFile = $_FILES['image']['tmp_name'];
// 根据文件类型创建图片资源
if ($_FILES['image']['type'] == 'image/jpeg') {
$image = imagecreatefromjpeg($uploadedFile);
} elseif ($_FILES['image']['type'] == 'image/png') {
$image = imagecreatefrompng($uploadedFile);
} elseif ($_FILES['image']['type'] == 'image/gif') {
$image = imagecreatefromgif($uploadedFile);
}
// 获取原图尺寸
$originalWidth = imagesx($image);
$originalHeight = imagesy($image);
// 计算缩略图尺寸
if ($originalWidth > $originalHeight) {
$thumbHeight = $thumbWidth * $originalHeight / $originalWidth;
} else {
$thumbWidth = $thumbHeight * $originalWidth / $originalHeight;
}
// 创建缩略图资源
$thumb = imagecreatetruecolor($thumbWidth, $thumbHeight);
// 复制原图到缩略图并缩放
imagecopyresampled($thumb, $image, 0, 0, 0, 0, $thumbWidth, $thumbHeight, $originalWidth, $originalHeight);
// 保存缩略图
imagejpeg($thumb, 'thumb.jpg', 80);
// 释放资源
imagedestroy($image);
imagedestroy($thumb);
```
代码中首先设置了缩略图的尺寸,然后根据上传的图片类型创建了对应的图片资源。接着计算缩略图的尺寸,并创建一个新的缩略图资源。最后将原图复制到缩略图并缩放,并保存缩略图。最后需要释放资源。
阅读全文