gpt4 book ai didi

python - 从按日期/名称分组的单独目录中的 JPEG 生成 PDF

转载 作者:太空宇宙 更新时间:2023-11-04 10:20:53 25 4
gpt4 key购买 nike

我希望从服务器上的 JPEG 生成 PDF 报告。 JPEG 位于以拍摄地点命名的文件夹中,JPEG 根据拍摄日期命名 (...\Location 1\15 08 03 description.jpg)。基本上我需要抓取上个月在每个站点拍摄的所有照片,将它们均匀地分组在一页上(最多 4 张/页),用位置和日期标记页面,导出 PDF。

我已经用 Powershell 和 Python 编写了项目,所以使用这些语言对我来说会容易得多,但我会考虑所有建议。

到目前为止,我的想法是使用 switch/case 来选择各种文件夹名称,for 循环选择所有案例,并选择一个月范围内所有扩展名为 .jpg 的文件(可能是用户提示?)。我失败的地方是按照我的描述将 JPEG 排列成 PDF。

编辑:因此,如果您遵循以下 Mark Setchell 的建议,请创建他建议的图像并将它们放在 C:\New 文件夹中。因此,假设您在此子目录中有 3 个文件夹(新文件夹、新文件夹 (2) 等),其中 2 个包含九种颜色的 JPEGS,第三个是空的:

clear
$path="C:\New folder\"
$array=@()
$name="file*.jpg"
foreach ($i in Get-ChildItem -path $path -Filter "New*")
{$i0=$path+$i; Get-ChildItem -path $i0 -Filter $name | ForEach-Object {$array+= $i0+"\"+$_.name}
montage $array -tile 2x2 -geometry +5+5 -title $i -page letter montage.pdf}`

我的代码用第三个空文件夹的标题覆盖所有页面上的标题。此外,它开始将下一个文件夹中的 JPEGS 添加到上一页,该页面的标题应与上一个文件夹相同,并且仅包含那些 JPEGS。

最佳答案

假设您在一个名为 file1.jpg...file9.jpg 的目录中有 9 个 JPEG 文件,它们是这样创建的,由红色、绿色、蓝色、青色、品红色、黄色、黑色和灰色。

convert -size 300x400 xc:red file1.jpg
convert -size 300x400 xc:lime file2.jpg
convert -size 300x400 xc:blue file3.jpg
convert -size 300x400 xc:cyan file4.jpg
convert -size 300x400 xc:magenta file5.jpg
convert -size 300x400 xc:yellow file6.jpg
convert -size 300x400 xc:black file7.jpg
convert -size 300x400 xc:gray40 file8.jpg
convert -size 300x400 xc:gray80 file9.jpg

如果您现在进入该目录并运行以下 bash 脚本,它会将文件拼接成 A4 纸的页面,每页有 4 张图像。

#!/bin/bash
for f in file*jpg; do
convert -label "$f" "$f" -depth 8 miff:-
done | montage -tile 2x2 -geometry +5+5 miff:- -page A4 montage.pdf

问题的关键是首先根据文件名给每个图像添加一个标签,然后将标签和图像发送到一个能够容纳许多图像的 MIFF 文件中。然后将组合的图像组输入到 montage 中,由于 -tile 2x2,它将四个图像排列到一个页面中。几何设置图片之间的间距 - 更大的数字意味着更大的空间。最后我们告诉 montage 纸张大小是 A4,我们想要所有输入图像的 PDF - 请!

当然,您可以随意调整背景、大小、间距和标签,直到您满意为止 - 但这应该会给您基本的想法。

您将得到一个名为 montage.pdf 的 PDF,其中包含以下三页:

第1页

enter image description here

第 2 页

enter image description here

第 3 页

enter image description here

将循环转换为丑陋的 Windows-y FOR 循环应该是相当简单的 - for loop help .

关于python - 从按日期/名称分组的单独目录中的 JPEG 生成 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32359480/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com