Tornado文件图片上传例子

文件上传的内容体在tornado.web.RequestHandler.request.files属性中,并且是以数组形式存放的。

使用临时文件存储时,在write完成后要记着把seek重置到文件头。要不然文件无法被读取。

再使用Image模块的thumbnail方法进行缩放时,resample=1作为重载渲染参数能够有效的使图片平滑,消除锯齿。

 代码如下 复制代码

if self.request.files:
    for f in self.request.files['postfile']:
        rawname = f['filename']
        dstname = str(int(time.time()))+'.'+rawname.split('.').pop()
        thbname = "thumb_"+dstname
        # write a file
        # src = "./static/upload/src/"+dstname
        # file(src,'w+').write(f['body'])
        tf = tempfile.NamedTemporaryFile()
        tf.write(f['body'])
        tf.seek(0)

        # create normal file
        # img = Image.open(src)
        img = Image.open(tf.name)
        img.thumbnail((920,920),resample=1)
        img.save("./static/upload/postfiles/"+dstname)

        # create thumb file
        img.thumbnail((100,100),resample=1)
        img.save("./static/upload/postfiles/"+thbname)

       tf.close()

时间: 2024-09-29 17:18:49

Tornado文件图片上传例子的相关文章

asp.net文件图片上传带预览效果

asp教程.net文件图片上传带预览效果 图片预览主要包括两个部分:从file表单控件获取图像数据,根据数据显示预览图像. 程序的file和img属性就是用来保存file控件和显示预览图像的容器的,而img还必须是img元素. 程序有以下几种预览方式: simple模式:直接从file的value获取图片路径来显示预览,适用于ie6: filter模式:通过selection获取file的图片路径,再用滤镜来显示预览,适用于ie7/8: domfile模式:调用file的getAsDataURL

php封装的单文件(图片)上传类完整实例_php技巧

本文实例讲述了php封装的单文件(图片)上传类.分享给大家供大家参考,具体如下: <?php //封装php中的单文件(图片)上传类 /* //参数1:$file 文件数组 5个属性值 name,type,size,tmp,error //参数2:文件保存的路径$path //参数3:文件上传允许的类型 $allow数组 $allow=array('image/jpeg','image/jpg','image/png','image/gif') //参数4: 允许文件上传的最大大小 $size

php 文件图片上传类程序

<html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>php教程 文件图片上传类程序</title> </head> <body> <form enctype="multipart/form-data" action="u

Nodejs环境配置UEditor文件图片上传的例子

由于UEditor官网没有提供Nodejs版,于是自己尝试进行修改.先根据PHP版查看所有的请求,得到的action参数值包括config(配置文件).uploadimage(图片上传).listimage(在线管理).catchimage(抓取图片),所以只需要重写这4个请求就基本上实现了我们的需求. 1.首先修改UEditor的ueditor.config.js中的serverUrl属性: serverUrl:'/ue/uploads' 2.将ueditor/php/config.json文

ASP.NET2.0中全面实现文件图片上传下载处理

asp.net|上传|下载 1.最简单的单文件上传(没花头)2.多文件上传3.客户端检查上传文件类型(以上传图片为例)4.服务器端检查上传文件类型(以上传图片为例) 5.服务器端检查上传文件类型(可以检测真正文件名) 6.上传文件文件名唯一性处理(时间戳+SessionID)7.上传图片生成等比例缩略图8.上传图片加水印(文字水印,图片水印,文字+图片水印)9. 1.最简单的单文件上传(没花头) 效果图:说明:这是最基本的文件上传,在asp.net1.x中没有这个FileUpload控件,只有h

文件图片上传

[java] view plaincopy package com.home.upload;      import java.io.File;   import java.nio.charset.Charset;   import java.util.ArrayList;   import java.util.List;      import org.apache.http.HttpResponse;   import org.apache.http.client.HttpClient;  

php入门级文件图片上传代码

$uploaddir = "../www.111cn.net/upload_img/"; $type = array("jpg","gif","bmp","jpeg","png"); $patch = "http://localhost/sl/upload_img/";   ?>  代码如下 复制代码 <?php //获取文件后缀名函数 function

php文件上传(强大文件图片上传类)

/*  * created on 2010-6-21  *  * the class for image to upload  *  * made by s71ence  *  * @$user_id  * @$max_file_size  * @$max_image_side  * @$destination_folder  *  * return:  * @$_cookie['img_path']  * @$img_unfind  * @$img_type  * @$mkdir_warry

mvc3实现文件图片上传

 代码如下 复制代码 public JsonResult AddProDoc(ProjectDoc doc)         {             try             { ///文件                 HttpPostedFileBase file = Request.Files["File"]; ///图片                 //WebImage image = WebImage.GetImageFromRequest("&qu