一种python web服务器,它使用枕头动态地缩放、裁剪、转换和提供来自s3或本地文件系统的图像

yg.thump的Python项目详细描述


与Thumpy会面

thumpy是一个可裁剪和缩放图像的python web服务。它不存储 什么都行。它被用作CDN后面的源服务器 亚马逊云锋。

YG.Thumpy是YouGov的Thumpy分支。

配置

设置存储在settings.yaml文件中。它们应包括: -S3存储桶的名称和访问键 -压缩质量(例如80) -允许的CORS主机列表

接口

thumpy使用与s3上存储位置相同的路径提供图像。 转换参数在查询字符串中使用接口指定 灵感来自TimThumb

示例:

缩放

将宽度缩放到200px,并按比例缩放高度:

http://mythumpyserver.somewhere/castle.jpg?w=200

将高度缩放到150px,并按比例缩放宽度:

http://mythumpyserver.somewhere/castle.jpg?w=200

指定高度和宽度:

http://mythumpyserver.somewhere/castle.jpg?w=200&h=150

缩放(后处理)

与缩放(上)相同,但在所有转换后应用于输出图像

http://mythumpyserver.somewhere/castle.jpg?pw=200&ph=150

裁剪

将宽度裁剪为200,高度裁剪为100:

http://mythumpyserver.somewhere/castle.jpg?cw=200&ch=100

将宽度和高度裁剪为50:

http://mythumpyserver.somewhere/castle.jpg?cw=50&ch=50
  • 暴徒总是在收割前先缩放。
  • 恶棍总是从图像的中心切出。

显示遮罩/缩放剪裁

至少需要3个参数: -顶部偏移(例如ZCT=100px) -左偏移(例如zcl=100px) -从偏移量输出裁剪的宽度或高度。如果只提供一个,则另一个将自动分配另一个的值。

遮罩应该应用于原始图像,这意味着没有缩放,只有遮罩。

请参见:缩放(后期处理)以获取缩放的遮罩/裁剪。

获得100px x 50px缩放的裁剪图像,在20px x 10px左上偏移处应用350px x 175px的显示遮罩。

http://mythumpyserver.somewhere/castle.jpg?zcw=350&zch=175&zct=20&zcl=10&pw=100&ph=50

灰度

不调整大小的灰度图像示例:
http://mythumpyserver.somewhere/castle.jpg?gray=1

云阵丑陋

如果thumpy配置中的“cloudfront_u ugity”选项设置为true,那么图像修改参数将从路径的第一段而不是url查询字符串中提取。

这是为了解决amazon cloudfront在向源服务器发出请求时删除url查询字符串的问题。示例:

http://mycloudfrontdist.somewhere/w=100/path/to/image/castle.jpg

对于原始的未经修改的图像,在查询字符串所在的位置放置一个“o”,如下所示:

http://mycloudfrontdist.somewhere/o/path/to/image/castle.jpg

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
分别使用椭圆曲线密码对文本消息进行java加密和解密   java如何将JTable滚动到特定值?   java JSP登录注销简单web应用程序,使用bean在数据库中存在数据时返回false   java无法编译,未设置类路径,包不存在?   java为什么这一变量会受到影响?   集合为什么Java在Map中没有putIfAbsent(key,supplier)方法?   安卓在Java中计算仿真时间   java初始化方法在主类中的指定方法之前运行   java如何在hadoop的reduce中将genericWritable恢复为用户定义的可写?   如何使用java替换pdf中的文本   参数不适用于ASP服务器的java HttpPost   创建对象时的java NullPointerException   Java JPanel中的swing图形有问题,但它在一个框架中工作   java Android Studio在硬件设备上运行时出错   google api类路径的java空指针异常   java如何将InputStream转换为DataHandler?   java在多个Jetty服务器之间共享连接池