最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python批量生成特定尺寸圖片及圖畫任意文字的實例

 更新時間:2019年01月30日 09:50:27   作者:像風一樣的自由  
今天小編就為大家分享一篇Python批量生成特定尺寸圖片及圖畫任意文字的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

因為工作需要生成各種大小的圖片,所以寫了個小腳本,順便支持了下圖畫文字內(nèi)容。

具體代碼如下:

from PIL import Image, ImageDraw, ImageFont
'''
  Auth: Xiaowu Chen
  Note: Please install [pillow] library before run this script.
'''
 
 
def draw_image(new_img, text, show_image=False):
  text = str(text)
  draw = ImageDraw.Draw(new_img)
  img_size = new_img.size
  draw.line((0, 0) + img_size, fill=128)
  draw.line((0, img_size[1], img_size[0], 0), fill=128)
 
  font_size = 40
  fnt = ImageFont.truetype('arial.ttf', font_size)
  fnt_size = fnt.getsize(text)
  while fnt_size[0] > img_size[0] or fnt_size[0] > img_size[0]:
    font_size -= 5
    fnt = ImageFont.truetype('arial.ttf', font_size)
    fnt_size = fnt.getsize(text)
 
  x = (img_size[0] - fnt_size[0]) / 2
  y = (img_size[1] - fnt_size[1]) / 2
  draw.text((x, y), text, font=fnt, fill=(255, 0, 0))
 
  if show_image:
    new_img.show()
  del draw
 
 
def new_image(width, height, text='default', color=(100, 100, 100, 255), show_image=False):
  new_img = Image.new('RGBA', (int(width), int(height)), color)
  draw_image(new_img, text, show_image)
  new_img.save(r'%s_%s_%s.png' % (width, height, text))
  del new_img
 
 
def new_image_with_file(fn):
  with open(fn, encoding='utf-8') as f:
    for l in f:
      l = l.strip()
      if l:
        ls = l.split(',')
        if '#' == l[0] or len(ls) < 2:
          continue
 
        new_image(*ls)
 
 
if '__main__' == __name__:
  new_image(400, 300, 'hello world any size', show_image=True)
  # new_image_with_file('image_data.txt')
 
 

如果你需要批量的話,批量數(shù)據(jù)文件的格式如下:

#width,height,text
200,200,hello
300,255,world

執(zhí)行后的效果如下:

Python批量生成特定尺寸圖片及圖畫任意文字

以上這篇Python批量生成特定尺寸圖片及圖畫任意文字的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Python使用json模塊讀取和寫入JSON數(shù)據(jù)

    Python使用json模塊讀取和寫入JSON數(shù)據(jù)

    Python 提供了內(nèi)置的 json 模塊,使得我們可以方便地解析 JSON 數(shù)據(jù)(讀取)和生成 JSON 數(shù)據(jù)(寫入),下面小編就來為大家介紹一下具體的操作步驟吧
    2025-03-03
  • python內(nèi)置函數(shù)frozenset()的使用小結

    python內(nèi)置函數(shù)frozenset()的使用小結

    本篇文章主要介紹了python內(nèi)置函數(shù)frozenset()的使用小結,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • Python面向?qū)ο笾蓄悾╟lass)的簡單理解與用法分析

    Python面向?qū)ο笾蓄悾╟lass)的簡單理解與用法分析

    這篇文章主要介紹了Python面向?qū)ο笾蓄悾╟lass)的簡單理解與用法,結合實例形式分析了Python面向?qū)ο蟪绦蛟O計中類(class)的基本概念、原理、定義與使用方法,需要的朋友可以參考下
    2020-02-02
  • Python字符串和其常用函數(shù)合集

    Python字符串和其常用函數(shù)合集

    這篇文章主要給大介紹Python字符串和分享其常用函數(shù)合集,字符串、首字母大寫定義、所有字母大寫、所有字母小寫等函數(shù),具有一定的參考價值,需要的朋友可以參考一下
    2022-03-03
  • python實現(xiàn)多線程網(wǎng)頁下載器

    python實現(xiàn)多線程網(wǎng)頁下載器

    這篇文章主要為大家詳細介紹了python實現(xiàn)一個多線程網(wǎng)頁下載器,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • python對一個數(shù)向上取整的實例方法

    python對一個數(shù)向上取整的實例方法

    在本篇文章中小編給大家整理了關于python對一個數(shù)向上取整的實例方法,需要的朋友們可以跟著學習下。
    2020-06-06
  • vscode配置anaconda3的方法步驟

    vscode配置anaconda3的方法步驟

    這篇文章主要介紹了vscode配置anaconda3的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-08-08
  • python網(wǎng)絡編程學習筆記(五):socket的一些補充

    python網(wǎng)絡編程學習筆記(五):socket的一些補充

    前面已經(jīng)為大家介紹了python socket的一些相關知識,這里為大家補充下,方便需要的朋友
    2014-06-06
  • Python常見工廠函數(shù)用法示例

    Python常見工廠函數(shù)用法示例

    這篇文章主要介紹了Python常見工廠函數(shù)用法,簡單描述了工廠函數(shù)的功能、定義并結合具體實例形式分析了Python常見工廠函數(shù)的相關使用技巧,需要的朋友可以參考下
    2018-03-03
  • pandas中實現(xiàn)將相同ID的字符串進行合并

    pandas中實現(xiàn)將相同ID的字符串進行合并

    這篇文章主要介紹了pandas中實現(xiàn)將相同ID的字符串進行合并問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02

最新評論

花莲市| 资中县| 青州市| 长顺县| 濉溪县| 孝昌县| 樟树市| 来安县| 上饶市| 永城市| 湄潭县| 连平县| 白水县| 荔浦县| 百色市| 咸丰县| 滁州市| 逊克县| 石嘴山市| 延长县| 凌云县| 盘山县| 黄大仙区| 丘北县| 曲阜市| 临朐县| 昌黎县| 聂拉木县| 上饶县| 定日县| 凤凰县| 法库县| 湘阴县| 平罗县| 滨海县| 南溪县| 托克逊县| 临沧市| 长治县| 临沂市| 长寿区|