首先下载安装 ImageMagick,如果是 Windows 系统,记得把可执行文件 magick.exe
所在的目录(例如 C:\Program Files\ImageMagick-7.1.1-Q16-HDRI
)添加到 Path 以方便使用。
ImageMagick 是一款免费、开源的软件套件,用于编辑和操作数字图像。它可以用于创建、编辑、合成或转换位图图像,并支持广泛的文件格式,包括 JPEG、PNG、GIF、TIFF 和 PDF。
使用示例:
magick convert 01.jpg 02.jpg output.pdf
如果在 Windows 的 cmd 中使用这个命令语法合并大量图片为 PDF,可能会超出命令行长度限制, 我们可以使用 PowerShell 来避免这个问题。
简单写个 Python 脚本,直接生成 PowerShell 命令:
import os
directory = r'/path/to/directory'
files = os.listdir(directory)
command = 'magick convert'
for file in files:
command = '{} {}'.format(command, file)
command = '{} {}'.format(command, 'output.pdf')
print(command)
执行脚本,复制输出的命令后,打开 PowerShell :
cd /path/to/directory
# 粘贴命令
图片多了很吃内存和CPU,耐心等待即可。
图片在很多子目录的情况
运行下面的脚本:
import os
import shutil
def move_and_rename_files(directory):
# 获取目录下的子目录列表
subdirectories = [subdir for subdir in os.listdir(directory) if os.path.isdir(os.path.join(directory, subdir))]
for subdir in subdirectories:
subdir_path = os.path.join(directory, subdir)
files = os.listdir(subdir_path)
for i, filename in enumerate(files):
file_path = os.path.join(subdir_path, filename)
# 生成新的文件名
new_filename = f"{subdir}_{filename}"
new_file_path = os.path.join(directory, new_filename)
# 移动文件并重命名
shutil.move(file_path, new_file_path)
print(f"Moved '{filename}' to '{new_filename}'")
# 指定目录
directory_path = r"/path/to/directory"
# 调用函数移动和重命名文件
move_and_rename_files(directory_path)
在代码中,将/path/to/directory
替换为您实际的目录路径。运行代码后,它会遍历目录下的子目录,将子目录中的文件移动到指定目录,并按子目录的名称和文件的名称重命名文件。
请注意,在运行代码之前,请确保您对目录中的文件进行了适当的备份,以防意外情况发生。
(adsbygoogle = window.adsbygoogle || []).push({});
来源:https://www.02405.com/archives/11895