当前位置: 首页 > news >正文

北京 工业网站建设公司价格百度一下官方网

北京 工业网站建设公司价格,百度一下官方网,iis6.1配置网站,泊头公司做网站对两张图片进行拼接图片拼接,对于两张相同宽度和不同高度的图片进行拼接1、首先获取到图片所在的位置,下面这段代码完成对当前目录下的image_test目录进行遍历,将所有jpg和png格式的图片放到一个列表中def picture_spell():# 获取到图片格式的…

对两张图片进行拼接

图片拼接,对于两张相同宽度和不同高度的图片进行拼接

1、首先获取到图片所在的位置,下面这段代码完成对当前目录下的image_test目录进行遍历,将所有jpg和png格式的图片放到一个列表中

def picture_spell():

# 获取到图片格式的文件的路径

path = "./image_test"

result = []

file_name_list = os.listdir(path)

for file in file_name_list:

if os.path.isfile(os.path.join(path, file)):

if file.split(".")[1] in ['jpg', 'png']:

result.append(os.path.join(path, file))

print(result)

2、打开图片,放到列表中

ims = list()

for fn in result:

ims.append(Image.open(fn))

# 获取各自的宽,高

width_one, height_one = ims[0].size

width_two, height_two = ims[1].size

print(width_one, height_one, width_two, height_two)

3、如果两张图片的宽度相同,不需要进行这一步操作,直接进行下一步操作即可,两张图片的宽度如若不同,进行此步操作

# 将两张图片转化为相同宽度的图片

new_img_one = ims[0].resize((1200, height_one), Image.BILINEAR)

new_img_two = ims[1].resize((1200, height_two), Image.BILINEAR)

4、创建一个新图片,定义好宽和高,将两张图片paste进去保存即可

因个人需求,需要将高度小的放在最上面,所以对高度进行判断识别,对于(0, 0, 1200, height_one),相当于(x, y, width, height),

第一张图片起点都是0, 0 宽度固定1200, 高度为图片的高度

第二张图片起点为0和第一张图片的高度, 宽度和第一张图片一致1200,高度为第二张图片的高度

target_images = Image.new('RGB', (1200, height_one + height_two))

if height_one < height_two:

target_images.paste(new_img_one, (0, 0, 1200, height_one))

target_images.paste(new_img_two, (0, height_one, 1200, height_one + height_two))

else:

target_images.paste(new_img_two, (0, 0, 1200, height_two))

target_images.paste(new_img_one, (0, height_two, 1200, height_one + height_two))

target_images.save("result.png")

完整代码

下面为对图片拼接的完整代码,运行系统mac

import os

from PIL import Image

from PIL import ImageFont

from PIL import ImageDraw

def picture_spell():

# 获取到图片格式的文件的路径,此路径为图片所在的文件夹

path = "./image_test"

result = []

file_name_list = os.listdir(path)

for file in file_name_list:

if os.path.isfile(os.path.join(path, file)):

if file.split(".")[1] in ['jpg', 'png']:

result.append(os.path.join(path, file))

print(result)

ims = list()

for fn in result:

ims.append(Image.open(fn))

# 获取各自的宽,高

width_one, height_one = ims[0].size

width_two, height_two = ims[1].size

print(width_one, height_one, width_two, height_two)

# 将两张图片转化为相同宽度的图片

new_img_one = ims[0].resize((1200, height_one), Image.BILINEAR)

new_img_two = ims[1].resize((1200, height_two), Image.BILINEAR)

# 创建一个新图片,定义好宽和高

target_images = Image.new('RGB', (1200, height_one + height_two))

if height_one < height_two:

target_images.paste(new_img_one, (0, 0, 1200, height_one))

target_images.paste(new_img_two, (0, height_one, 1200, height_one + height_two))

else:

target_images.paste(new_img_two, (0, 0, 1200, height_two))

target_images.paste(new_img_one, (0, height_two, 1200, height_one + height_two))

# 注意存储路径

target_images.save("result.png")

if __name__ == '__main__':

picture_spell()

对图片的指定位置进行添加位置

对图片的指定位置进行操作

img = Image.open("./c.png")

draw = ImageDraw.Draw(img)

font = ImageFont.truetype(font_set["type"], font_set["size"])

draw.text(font_set["location"], font_set["content"], font_set["color"], font=font)

完整代码

下面是示例的完整代码

"""

@File: point_picture.py

@CreateTime: 2020/3/17 下午8:28

@Desc: 位置:指的是图片的x和y距离左上角起始点的坐标

可以是#00BBFF这样的颜色值,也可以是(255,0,0)这样的颜色值, (0,0,0)为黑色

"""

from PIL import Image

from PIL import ImageFont

from PIL import ImageDraw

def update_address():

font_set = {

"type": "./fonts/SourceHanSansCN-Normal.otf",

"size": 16,

"content": "要写入的内容",

"color": (0, 0, 0),

"location": (122, 122),

}

# 打开需要进行编辑的图片

img = Image.open("./c.png")

# 创建画刷,用来写文字到图片上

draw = ImageDraw.Draw(img)

# 设置字体类型和大小

font = ImageFont.truetype(font_set["type"], font_set["size"])

# 根据位置、内容、颜色、字体来画进图片里,

draw.text(font_set["location"], font_set["content"], font_set["color"], font=font)

# 将操作后的图片保存为result.png

img.save("result.png")

if __name__ == '__main__':

update_address()

可能遇到的问题

一、OSError: cannot write mode RGBA as JPEG

RGBA意思是红色,绿色,蓝色,Alpha的色彩空间,Alpha指透明度。而JPG不支持透明度,所以要么丢弃Alpha,要么保存为.png文件

解决办法:

第一种

img=img.convert('RGB')

img.save('code.jpg')

第二种

img.save('code.png')

参考链接

http://www.lbrq.cn/news/2767879.html

相关文章:

  • 福建省建设厅审查网站推广电话
  • 公司网站制作应该注意些什么windows优化大师的功能
  • 关于网站建设的技巧河北百度seo软件
  • 广州做网站海珠信科长沙网站到首页排名
  • 布吉做棋牌网站建设找哪家效益快公司域名查询官网
  • 张掖做网站百度贴吧网页版
  • 在IIs下建设一个网站长沙百度提升排名
  • wordpress型营销网站seo视频狼雨seo教程
  • 网站建设最新外文翻译合肥网站seo费用
  • wordpress多站百度搜索大全
  • 深圳做网站jm3q搜索引擎的作用
  • 源代码做网站品牌整合营销案例
  • 八埏网站开发百度信息流推广是什么意思
  • 阿里云服务器搭建网站央视网新闻
  • 做按摩网站优化百度知道在线
  • 用ps做企业网站分辨率是多少钱上海网络推广
  • 长沙网站关键词碉堡了seo博客
  • 网站建设公司客户分析百度seo技术优化
  • 哪些网站是专做合租的域名注册价格及续费
  • 信息化建设 网站建设等方面图片外链生成工具
  • 潍坊做网站哪家好模板建站哪里有
  • 网站开发的权限设置北京百度关键词推广
  • 大良网站建设价格东莞网站seo优化
  • 委托建网站需要多少钱保定seo排名优化
  • 郑州做网站的企业福州网站排名
  • 十八把网站做扇子苏州seo招聘
  • 校园电子商务网站建设win优化大师官网
  • 黑客怎么攻击网站百度搜索优化关键词排名
  • 网站建设的案例教程视频太原百度网站快速优化
  • wordpress导航主题haow网站seo关键词优化排名
  • 大语言模型中的归一化实现解析
  • 手写MyBatis第24弹:从单条插入到批量处理:MyBatis性能优化的关键技术
  • 如何在Windows系统中更改用户名(中文转英文全流程)
  • TensorRT-LLM.V1.1.0rc0:在无 GitHub 访问权限的服务器上编译 TensorRT-LLM 的完整实践
  • Spark03-RDD02-常用的Action算子
  • 【R语言】R语言矩阵运算:矩阵乘除法与逐元素乘除法计算对比