直播系統搭建,插入圖片、刪除圖片、設定圖片大小

zhibo系統開發發表於2023-05-11

直播系統搭建,插入圖片、刪除圖片、設定圖片大小

1.插入圖片

Document物件有一個add_paragraph()方法插入圖片,只需要傳入路徑或者位元組流即可,實際上它也是呼叫段落的Run物件的add_picture()

from docx import Document
doc = Document()
doc.add_paragraph("在下面插入一張圖片")
doc.add_picture("./01.png")  # 等同於doc.add_paragraph().add_run().add_picture()
doc.save('./test.docx')


插入的圖片被儲存為一個type為3的InlineShape物件,InlineShape還有其他常用型別如下

CHART = 12
LINKED_PICTURE = 4
PICTURE = 3
SMART_ART = 15
NOT_IMPLEMENTED = -6


我們可以透過Document物件的inline_shapes()獲取所有InlineShape

doc = Document()
doc.add_paragraph("在下面插入一張圖片")
doc.add_picture("./01.png") 
print(doc.inline_shapes)
print(doc.inline_shapes[0].type)  # 圖片的type=3


2.刪除圖片

圖片是儲存在段落中的,所以我們需要清空有圖片的那個段落即可

doc = Document()
doc.add_paragraph("在下面插入一張圖片")
doc.add_picture("./01.png") 
# 此處是第2個段落有圖片
doc.paragraphs[1].clear()
print(doc.inline_shapes)


3.調整圖片大小

在插入圖片的時候可以順便指定寬度(width)和高度(height),若都不指定則是原圖大小,若只指定了一個則等比縮放,當然寬度和高度屬性也可以直接獲取和修改。另外,插入的圖片預設dpi=72

from docx import Document
from docx.shared import Cm, Inches
doc = Document()
doc.add_paragraph("在下面插入一張圖片")
picture = doc.add_picture("./01.png", width=Cm(5))  # 插入圖片時指定大小為5cm
# 檢視尺寸
print(picture.width.cm)  # 5.0
print(picture.height.cm)  # 5.403397222222222
# 修改尺寸
picture.width = Inches(3.6)  # 圖片寬度改為3.6英尺,但注意是否被拉伸,如果不行被拉伸請自己計算長寬比
picture.width = int(picture.width * 0.50)  # 寬度縮放為原來的50%
picture.height = int(picture.height * 0.50)  # 高度縮放為原來的50%
doc.save('./test.docx')


以上就是直播系統搭建,插入圖片、刪除圖片、設定圖片大小, 更多內容歡迎關注之後的文章


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2951472/,如需轉載,請註明出處,否則將追究法律責任。

相關文章