国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python語言實現將圖片轉化為html頁面

2020-02-16 10:56:49
字體:
來源:轉載
供稿:網友

PIL 圖像處理庫

PIL(Python Imaging Library) 是 Python 平臺的圖像處理標準庫。不過 PIL 暫不支持 Python3,可以用 Pillow 代替,API是相同的。

安裝 PIL 庫

如果你安裝了 pip 的話可以直接輸入 pip install PIL 命令安裝 Pillow。

或者在 PyCharm 中打開 [File] >> [settings] >> [project github] >> [project interpreter] 添加標準庫:

↑ 搜索 Pillow 包,選中 Pillow,點擊 Install Package 安裝

PIL 使用方法

from PIL import Imageimg = Image.open('source.jpg') # 打開圖片width, height = img.size # 圖片尺寸img.thumbnail((width / 2, height / 2)) # 縮略圖img = img.crop((0, 0, width / 2, width / 2)) # 圖片裁剪img = img.convert(mode='L') # 圖片轉換img = img.rotate(180) # 圖片旋轉img.save('output.jpg') # 保存圖片

↑ PIL 常用模塊:Image, ImageFilter, ImageDraw, ImageFont, ImageEnhance, ImageFilter...

圖片處理過程

圖片轉換成網頁的過程,可以分成五個步驟。首先要選擇一個合適的HTML模板,控制好字體的大小和字符間的間距。

然后通過 Python 的 網絡訪問模塊,根據URL獲取圖片。接著使用 PIL 模塊載入二進制圖片,將圖片壓縮到合適的尺寸。

遍歷圖片的每一個像素,得到該像素的顏色值,應用到HTML的標簽上。最后把字符串信息輸出到文件中,生成HTML文檔。

定制模板

TEMPLATE = '''<!DOCTYPE html><html><head>  <meta charset="UTF-8">  <title>{title}</title>  <style>    body {{      line-height: 1em;      letter-spacing: 0;      font-size: 0.6rem;      background: black;      text-align: center;    }}  </style></head><body>  {body}</body></html>'''

↑ 大括號代表一個占位符,最后會被替換成實際內容,雙大括號中的內容則不會被替換。

獲取圖片

from urllib import requesturl = 'https://pic.cnblogs.com/avatar/875028/20160405220401.png'binary = request.urlopen(url).read()

↑ 通過 URL 得到 byte 數組形式的圖片。

處理圖片

from PIL import Imagefrom io import BytesIOimg = Image.open(BytesIO(binary))img.thumbnail((100, 100)) # 圖片壓縮

↑ byte 類型的 圖片需要通過 BytesIO 轉換為 string 類型,才能被 PIL 處理。

生成HTML

piexl = img.load() # 獲取像素信息width, height = img.size # 獲取圖像尺寸body, word = '', '博客園'font = '<font color="{color}">{word}</font>'for y in range(height):  for x in range(width):    r, g, b = piexl[x, y] # 獲取像素RGB值    body += font.format(      color='#{:02x}{:02x}{:02x}'.format(r, g, b),      word=word[((y * width + x) % len(word))]    )  body += '/n<br />/n'            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 光山县| 毕节市| 崇信县| 农安县| 凉山| 洛浦县| 清原| 黔东| 浮梁县| 白水县| 新河县| 涞水县| 彰化市| 八宿县| 五台县| 黎城县| 商水县| 砀山县| 昌图县| 阿坝| 绵阳市| 鹰潭市| 措勤县| 五华县| 平遥县| 百色市| 台东市| 漠河县| 北海市| 皮山县| 民和| 开江县| 彝良县| 金川县| 伊春市| 开平市| 星座| 清水河县| 卓尼县| 锡林浩特市| 温泉县|