您好,登錄后才能下訂單哦!
這篇文章主要介紹如何使用python給圖片加水印,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
最簡單的一種方式是,在圖片上繪制半透明文本來實現水印效果。
主要用到Figure.text函數
參數 | 類型 | 說明 |
x, y | float | 疊加文本的位置坐標.,取值范圍在 [0, 1]。 |
s | str | 文本字符串。 |
fontdict | dict 可選 | 用于覆蓋默認文本屬性的字典。如果未給出,則默認值由 rcParams[“font.*”]確定。作為kwargs傳遞的屬性,會覆蓋fontdict 中給出的相應屬性。 |
疊加文字水印的代碼如下
import numpy as np import matplotlib.pyplot as plt %matplotlib qt5 # 繪制圖表內容 fig, ax = plt.subplots() ax.plot(np.random.rand(10), '-o', ms=10, lw=2, alpha=0.7) ax.grid() # 疊加水印文字,對文字沿軸旋轉30°,透明度50% ax.text(0.5, 0.5, 'created with https://blog.csdn.net/Bit_Coders/', transform=ax.transAxes, fontsize=20, color='gray', alpha=0.5, ha='center', va='center', rotation='30') plt.show()
文本屬性的相關參數詳見:官方文檔
圖片水印可以疊加你設計好的logo、icon或者二維碼圖片。
下面以二維碼為例,在圖表上疊加你的博客二維碼水印:
圖片水印主要用到figimage函數
參數 | 類型 | 說明 |
X | 圖像數據 | 數組格式是以下三種之一, MxN:亮度(灰度)值,MxNx3:RGB 值,MxNx4:RGBA 值 |
xo,yo | int | 以像素為單位的x/y圖像偏移量 |
alpha | None or float | 混合透明度 |
cmap | str or matplotlib.colors.Colormap | 使用的顏色圖,默認值: rcParams[“image.cmap”] (default: ‘viridis') |
resize | bool | 是否縮放figure來匹配給定的圖片尺寸 |
1、生成二維碼圖片:在命令行用myqr生成對應
myqr https://blog.csdn.net/Bit_Coders
生成的二維碼圖片會保存到當前路徑。
2、疊加圖片水印,代碼如下
import numpy as np from PIL import Image import matplotlib.image as image import matplotlib.pyplot as plt from matplotlib import cm # 加載水印圖片,并縮放到合適大小 resize_w = 100 img = Image.open('J:\Projects\PythonScripts\qrcode.png') img = img.resize((resize_w,resize_w)) fig, ax = plt.subplots() # 繪制圖表內容 ax.plot(np.random.rand(10), '-o', ms=10, lw=2, alpha=0.7) ax.grid() # 確定疊加位置 nx = int(fig.get_figwidth() * fig.dpi) ny = int(fig.get_figheight() * fig.dpi) pos_x = nx - resize_w pos_y = 10 # 疊加圖片水印 fig.figimage(img, pos_x,pos_y, alpha=.5) plt.show()
以上是“如何使用python給圖片加水印”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。