鱼C论坛

 找回密码
 立即注册
查看: 333|回复: 3

[已解决]求助怎么批量根据excel中编码找到图片文件夹对应图片添加相关信息

[复制链接]
发表于 2024-5-23 16:01:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
求助怎么批量根据excel中编码找到图片文件夹对应图片添加相关信息?

需求如下
级别太低,无法提供图片,只能文字描述了


根据一个excel文件,有多行数据,包括图片编号列,地址列
要根据excel文件的图片编号列的编号去找到图片文件夹中的对应编号的图片,并将地址列的信息增加到图片的上方空白处保存为原名字图片。

如excel里有两行情况下
编号 地址
3330 和平小区5



这样根据3330的编号,找到图片文件夹的对应的3330名称的图片,把和平小区几个字放到图片上方空白即可,默认在图片上增加大约五行字的空白高度用于保存文字。、



写的很粗糙,希望有高手能帮写个python。。。
最佳答案
2024-5-23 16:02:12
你可以使用Python中的pandas库和PIL库来实现这个需求。首先,你需要安装这两个库。在命令行中执行以下命令来安装它们:
pip install pandas
pip install pillow

接下来,你可以使用以下代码来实现你的需求:
import pandas as pd
from PIL import Image, ImageDraw, ImageFont

# 读取Excel文件
df = pd.read_excel('your_excel_file.xlsx')

# 循环处理每一行数据
for index, row in df.iterrows():
    # 获取编号和地址
    code = str(row['编号'])
    address = str(row['地址'])

    # 拼接图片文件名
    image_filename = code + '.jpg'  # 假设图片文件的扩展名是.jpg

    try:
        # 打开图片文件
        image = Image.open(image_filename)

        # 创建一个新的图片,并添加文字
        new_image = Image.new('RGB', (image.width, image.height + 50), (255, 255, 255))
        new_image.paste(image, (0, 50))

        draw = ImageDraw.Draw(new_image)
        font = ImageFont.truetype('arial.ttf', 20)  # 假设使用Arial字体,字体大小为20
        draw.text((10, 10), address, font=font, fill=(0, 0, 0))

        # 保存新图片
        new_image.save(image_filename)

        print('处理完成:', image_filename)
    except FileNotFoundError:
        print('找不到图片文件:', image_filename)
    except:
        print('处理失败:', image_filename)

在上面的代码中,你需要把 `your_excel_file.xlsx` 替换成你实际的Excel文件路径。此外,你还需要根据你的实际情况调整图片文件的扩展名和字体样式等参数。

希望对你有帮助!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-5-23 16:02:12 | 显示全部楼层    本楼为最佳答案   
你可以使用Python中的pandas库和PIL库来实现这个需求。首先,你需要安装这两个库。在命令行中执行以下命令来安装它们:
pip install pandas
pip install pillow

接下来,你可以使用以下代码来实现你的需求:
import pandas as pd
from PIL import Image, ImageDraw, ImageFont

# 读取Excel文件
df = pd.read_excel('your_excel_file.xlsx')

# 循环处理每一行数据
for index, row in df.iterrows():
    # 获取编号和地址
    code = str(row['编号'])
    address = str(row['地址'])

    # 拼接图片文件名
    image_filename = code + '.jpg'  # 假设图片文件的扩展名是.jpg

    try:
        # 打开图片文件
        image = Image.open(image_filename)

        # 创建一个新的图片,并添加文字
        new_image = Image.new('RGB', (image.width, image.height + 50), (255, 255, 255))
        new_image.paste(image, (0, 50))

        draw = ImageDraw.Draw(new_image)
        font = ImageFont.truetype('arial.ttf', 20)  # 假设使用Arial字体,字体大小为20
        draw.text((10, 10), address, font=font, fill=(0, 0, 0))

        # 保存新图片
        new_image.save(image_filename)

        print('处理完成:', image_filename)
    except FileNotFoundError:
        print('找不到图片文件:', image_filename)
    except:
        print('处理失败:', image_filename)

在上面的代码中,你需要把 `your_excel_file.xlsx` 替换成你实际的Excel文件路径。此外,你还需要根据你的实际情况调整图片文件的扩展名和字体样式等参数。

希望对你有帮助!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-23 16:03:06 | 显示全部楼层
天哪好快,谢谢大神
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-23 16:03:12 | 显示全部楼层
颂风侯 发表于 2024-05-23 16:03
天哪好快,谢谢大神


哈哈,不客气!如果还有其他问题,随时来问我哦。祝你编程顺利!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 18:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表