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

Python在圖片中添加文字的兩種方法

 更新時間:2017年04月29日 15:19:03   作者:Myths  
這篇文章主要給大家介紹了在Python在圖片中添加文字的兩種方法,分別是使用OpenCV和PIL這兩個方法實現(xiàn),在實際應用中要在這兩種方法中擇優(yōu)使用。兩種方法都給出了詳細示例代碼,需要的朋友可以參考下。

本文主要介紹的是利用Python在圖片中添加文字的兩種方法,下面分享處理供大家參考學習,下來要看看吧

一、使用OpenCV

在圖片中添加文字看上去很簡單,但是如果是利用OpenCV來做卻很麻煩。OpenCV中并沒有使用自定義字體文件的函數(shù),這不僅意味著我們不能使用自己的字體,而且意味著他無法顯示中文字符。這還是非常要命的事情。而且他顯示出來的文字位置也不太好控制。比如下面的代碼,他想做的僅僅是顯示數(shù)字3:

代碼:

#coding=utf-8
import cv2
import numpy as np
from pylab import *
%matplotlib inline
font=cv2.FONT_HERSHEY_SIMPLEX#使用默認字體
im=np.zeros((50,50,3),np.uint8)#新建圖像,注意一定要是uint8
img=cv2.putText(im,'3',(0,40),font,1.2,(255,255,255),2)#添加文字,1.2表示字體大小,(0,40)是初始的位置,(255,255,255)表示顏色,2表示粗細
imshow(img)

結果:

我么可以發(fā)現(xiàn)文字出現(xiàn)的位置并不怎么好把握,初始的坐標默認是指左下角的坐標,不怎么方便。而且顯示出文字以后,我們不好掌握他實際占的位置和大小。

不過有一點方便的是,我們可以隨意改變他的粗細,而不用更換字體。這一點是下面使用PIL進行繪圖所不具備的優(yōu)點。

二、使用PIL

同樣為了生成數(shù)字3,下面是使用PIL進行的操作:

代碼:

import Image,ImageFont,ImageDraw
import numpy as np
from pylab import *
%matplotlib inline
font = ImageFont.truetype('3.ttf',50) #使用自定義的字體,第二個參數(shù)表示字符大小
im = Image.new("RGB",(50,50))      #生成空白圖像
draw = ImageDraw.Draw(im)         #繪圖句柄
x,y=(0,0)                  #初始左上角的坐標
draw.text((x,y), '3', font=font)    #繪圖
offsetx,offsety=font.getoffset('3')  #獲得文字的offset位置
width,height=font.getsize('3')     #獲得文件的大小
im=np.array(im)
cv2.rectangle(im,(offsetx+x,offsety+y),(offsetx+x+width,offsety+y+height),(255,255,255),1)#繪出矩形框
imshow(im)

結果:

我們可以發(fā)現(xiàn),PIL支持使用自定義的字體文件,而且能夠提供字體所占位置的詳細信息,我們可以精確的確定文字所占的位置,在應用中特別有用。唯一的不足就是他不能改變字體的粗細(畢竟這用的是字體模板)。

實際應用中看來還要在這兩種方法中擇優(yōu)使用。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家學習或者使用python能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

  • 基于Python實現(xiàn)四維圖像繪制系統(tǒng)

    基于Python實現(xiàn)四維圖像繪制系統(tǒng)

    這篇文章主要為大家詳細介紹了如何基于Python語言實現(xiàn)一個簡單的四維圖像繪制系統(tǒng),文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2023-09-09
  • Python識別驗證碼的實現(xiàn)示例

    Python識別驗證碼的實現(xiàn)示例

    這篇文章主要介紹了Python識別驗證碼的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • Python機器學習庫之Scikit-learn基本用法詳解

    Python機器學習庫之Scikit-learn基本用法詳解

    Scikit-learn?是?Python?中最著名的機器學習庫之一,它提供了大量實用的機器學習算法以及相關的工具,可以方便我們進行數(shù)據挖掘和數(shù)據分析,在這篇文章中,我們將介紹?Scikit-learn?的基本使用,包括如何導入數(shù)據、預處理數(shù)據、選擇和訓練模型,以及評估模型的性能
    2023-07-07
  • Python實現(xiàn)的微信紅包提醒功能示例

    Python實現(xiàn)的微信紅包提醒功能示例

    這篇文章主要介紹了Python實現(xiàn)的微信紅包提醒功能,結合實例形式分析了Python使用微信模塊itchat實現(xiàn)微信紅包提醒操作的相關實現(xiàn)技巧,需要的朋友可以參考下
    2019-08-08
  • python ftfy庫處理金融方面文件編碼錯誤實例詳解

    python ftfy庫處理金融方面文件編碼錯誤實例詳解

    這篇文章主要為大家介紹了使用python ftfy庫處理金融方面文件編碼錯誤實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-01-01
  • python繪制lost損失曲線加方差范圍的操作方法

    python繪制lost損失曲線加方差范圍的操作方法

    這篇文章主要介紹了python繪制lost損失曲線加方差范圍的操作方法,首先大家需要導入必要的包及數(shù)據的獲取方法,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2021-10-10
  • python中15種3D繪圖函數(shù)總結

    python中15種3D繪圖函數(shù)總結

    這篇文章主要為大家詳細介紹了python中15種3D繪圖函數(shù)的用法,文中的示例代碼講解詳細,具有一定的學習價值,感興趣的小伙伴可以跟隨小編一起了解一下
    2023-09-09
  • Python如何使用ConfigParser讀取配置文件

    Python如何使用ConfigParser讀取配置文件

    這篇文章主要介紹了Python如何使用ConfigParser讀取配置文件,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • 使用Selenium在Python中實現(xiàn)錄屏功能

    使用Selenium在Python中實現(xiàn)錄屏功能

    Selenium 是一個強大的用于自動化測試的工具,但你知道它也可以用來錄制瀏覽器操作的視頻嗎?本文將介紹如何使用 Selenium 在 Python 中實現(xiàn)錄屏功能,以便記錄和分享你的網頁操作過程,需要的朋友可以參考下
    2023-11-11
  • python 3.6.2 安裝配置方法圖文教程

    python 3.6.2 安裝配置方法圖文教程

    這篇文章主要為大家詳細介紹了python 3.6.2 安裝配置方法圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09

最新評論

潜江市| 永城市| 福泉市| 睢宁县| 尼勒克县| 宽城| 公主岭市| 兴城市| 和林格尔县| 肇东市| 彩票| 广汉市| 额尔古纳市| 吴旗县| 教育| 崇明县| 灵武市| 蓬莱市| 杭锦后旗| 开化县| 克什克腾旗| 全椒县| 泽普县| 阿克苏市| 满城县| 太白县| 临沂市| 广东省| 老河口市| 荥阳市| 遂川县| 普洱| 县级市| 龙山县| 博白县| 合肥市| 台湾省| 曲靖市| 报价| 铅山县| 孟州市|