PyImgBatch是一个用于python的批处理图像处理器,包括一个命令行接口。

pyimgbatch的Python项目详细描述


皮姆巴奇

PyImgBatch是一个用于python的批处理图像处理器,包括一个命令行接口。在

安装

对于安装,请打开一个终端并在命令行中键入以下行。在

pip install pyimgbatch

文件

有关更多信息,请阅读文档:

https://soeren-kirchner.github.io/pyimgbatch/quickstart.html

命令行上的用法

最简单的用法是使用

^{pr2}$

和类型

pyimgbatch --width 300

这将根据源文件的纵横比将当前文件夹中所有支持的图像文件的宽度调整为300像素。结果将写入“dest”子文件夹。在

或者,可以设置包含要转换的图像的源文件夹和/或结果的目标文件夹,如下所示。在

pyimgbatch --source source_folder --dest destination_folder --height 400

或更短

pyimgbatch -s source_folder -d destination_folder --height 400

这将把source_文件夹中的图像转换为400px的高度,并将结果存储在目标文件夹中。
注意:对于每个源映像,将在目标文件夹内创建一个子文件夹。要避免这种行为,请使用--nosubfolder参数。

项目文件

PyImgBatch的一个特性是从给定的图像文件创建多个不同的版本。在

为此,可以使用项目文件。项目文件是包含图像处理规范的JSON文件。在

很短的那个

这里有一个很短的例子。在

[{"width":1000,"suffix":".w1000"},{"height":1200,"suffix":".h1200"}]

例如(项目名为myprj.json文件“):

pyimgbatch -c myprj.json

生成以下输出:

processing: french-bulldog-4530685.jpg
creating: french-bulldog-4530685.w1000.jpg
creating: french-bulldog-4530685.h1200.jpg
processing: coast-4478424.jpg
creating: coast-4478424.w1000.jpg
creating: coast-4478424.h1200.jpg
...
processing: beaded-2137080_1920-cmyk-iso-eci.tif
creating: beaded-2137080_1920-cmyk-iso-eci.w1000.jpg
creating: beaded-2137080_1920-cmyk-iso-eci.h1200.jpg
...

并为每个源图像创建两个图像,调整为指定的宽度或高度,并在原始名称中添加后缀。在

短的那个

想象一下,您需要为您的web项目的所有图像创建不同的大小。例如,您需要图像的宽度为180px、300px、400px和一个高度为800的图像,每个图像的大小是智能手机中更高像素密度显示的2倍和3倍。 下面是一个例子。在

{"name":"web set","comment":"some sample pictures","source":"webset/source","dest":"webset/dest","prefix":"web.","configs":[{"width":180,"suffix":".w180","webset":"@3x"},{"width":300,"suffix":".w300","webset":"@3x"},{"width":400,"suffix":".w400","webset":"@3x"},{"height":800,"prefix":"preview.","webset":"@3x"}]}

这将为每个输入图像创建12个目的地图像。对于图像“lama-4540160.jpg”,您可以得到:

...
creating: lama-4540160/web.lama-4540160.w180@1x.jpg
creating: lama-4540160/web.lama-4540160.w180@2x.jpg
creating: lama-4540160/web.lama-4540160.w180@3x.jpg
creating: lama-4540160/web.lama-4540160.w300@1x.jpg
creating: lama-4540160/web.lama-4540160.w300@2x.jpg
creating: lama-4540160/web.lama-4540160.w300@3x.jpg
creating: lama-4540160/web.lama-4540160.w400@1x.jpg
creating: lama-4540160/web.lama-4540160.w400@2x.jpg
creating: lama-4540160/web.lama-4540160.w400@3x.jpg
creating: lama-4540160/preview.lama-4540160@1x.jpg
creating: lama-4540160/preview.lama-4540160@2x.jpg
creating: lama-4540160/preview.lama-4540160@3x.jpg
...

如您所见,您可以指定默认值,因此不需要重复自己的操作。 使用更具体的选项,而不是更一般的选项。所以在这个例子中,除了最后一个之外,所有的图像都有前缀“web”,因为更具体的前缀在这里被指定为“preview”

提示:文件名有点奇怪,因为我已经从免费图片库pixabay下载了这些图片,而且我没有更改名称,这样你可以根据需要搜索图片或摄影师。

完整图像项目文件

如下所示。在

{"comment":"pyImgBatch demo project","debug":true,"no-progess":false,"projects":[{"name":"web set","comment":"some sample pictures","source":"webset/source","dest":"webset/dest","prefix":"web.","configs":[{"width":180,"suffix":".w180","webset":"@3x"},{"width":300,"suffix":".w300","webset":"@3x"},{"width":400,"suffix":".w400","webset":"@3x"},{"height":800,"prefix":"preview.","webset":"@3x"}]},{"name":"images to thumbnails","source":"to-thumbnails/originals","dest":"to-thumbnails/thumbnails","subfolder":false,"prefix":"thumb.","configs":[{"height":300},{"prefix":"smallthumb.","height":200}]}]}

此项目包含两个项目。在

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

推荐PyPI第三方库


热门话题
Grails2.1.0/Java7在Windows8.1上从何处获取当前用户名?   JavaSpringJMSActiveMQ   java异常处理,捕获导致while循环停止   sql server 2008将日期时间解析为JAVA日期   java是第一个servlet,但无法打开它   如何在Java中使用XML bean创建典型的XML头?   java将iOs应用程序转换为Android   java将jsp页面内容读取到其他jsp页面中的html   客户端计算机中小型数据库应用程序的java实现   java同步和ServletContextListener   安卓 Java将所有转义字符替换为双转义   当我在布局单元中实现ScrollView时,java GridView的setOnItemLongClickListener不起作用(使用适配器)   禁用Java web服务端点Wsdl   java如何编写一个程序来反转用户输入的数字