使用Python刪除PPT中所有超鏈接的操作步驟
前言
在某些PPT使用場(chǎng)景中,比如需要打印幻燈片或者超鏈接已失效時(shí),演示文稿中的超鏈接可能會(huì)成為一種干擾。這時(shí)我們需要移除PowerPoint演示文稿中的超鏈接,以確保演示的連貫性和專業(yè)性。通過(guò)使用Python,我們可以高效地批量處理這一任務(wù),實(shí)現(xiàn)自動(dòng)化的工作流程。本文將介紹如何使用Python刪除PowerPoint演示文稿中的所有超鏈接。
本文所使用的方法需要用到Spire.Presentation for Python,PyPI:pip install Spire.Presentation
。
用Python刪除PPT所有超鏈接
在演示文稿中,超鏈接可以添加到演示文稿的各種形狀中,如自動(dòng)形狀、表格、圖片,以及形狀中的文本上。因此,我們?cè)趧h除超鏈接時(shí),需要檢查形狀以及形狀中的文本是否包含超鏈接,并在包含時(shí)將其移除。
以下是詳細(xì)操作步驟:
- 導(dǎo)入所需資源。
- 創(chuàng)建
Presentation
對(duì)象,并使用Presentation.LoadFromFile()
方法載入PowerPoint演示文稿。 - 遍歷演示文稿中的幻燈片,然后遍歷幻燈片中的形狀;
- 檢查形狀是否有超鏈接,如果有,將
IShape.Click
屬性設(shè)置為IShape.Click.get_NoAction()
方法的結(jié)果來(lái)移除超鏈接。 - 檢查形狀是否為
IAutoShape
對(duì)象,如果是,則遍歷形狀中的段落以及段落中的文本片段。檢查每個(gè)文本片段是否有超鏈接,如果有則將TextRange.ClickAction
設(shè)置為None
來(lái)移除超鏈接。 - 檢查形狀是否為
ITable
對(duì)象,如果是,則遍歷每個(gè)單元格,單元格中的段落,以及段落中的文本片段。檢查文本片段是否包含超鏈接,并移除包含的超鏈接。
- 檢查形狀是否有超鏈接,如果有,將
- 使用
Presentation.SaveToFile()
方法保存演示文稿。 - 釋放資源。
代碼示例
from spire.presentation import Presentation, IAutoShape, ITable, FileFormat # 創(chuàng)建 Presentation 類的實(shí)例并加載一個(gè) PowerPoint 演示文稿 演示文稿 = Presentation() 演示文稿.LoadFromFile("G:/Documents/Sample16.pptx") # 遍歷演示文稿中的幻燈片 for 幻燈片 in 演示文稿.Slides: # 遍歷幻燈片中的形狀 for 形狀 in 幻燈片.Shapes: # 檢查形狀是否有超鏈接 if 形狀.Click is not None: # 移除超鏈接 形狀.Click = 形狀.Click.get_NoAction() # 檢查形狀是否為 IAutoShape 對(duì)象 if isinstance(形狀, IAutoShape): 自動(dòng)形狀 = IAutoShape(形狀) # 遍歷自動(dòng)形狀中的段落 for 段落 in 自動(dòng)形狀.TextFrame.Paragraphs: # 遍歷段落中的文本范圍 for 文本范圍 in 段落.TextRanges: # 檢查文本范圍是否有超鏈接 if 文本范圍.ClickAction is not None: # 移除超鏈接 文本范圍.ClickAction = None # 檢查形狀是否為 ITable 對(duì)象 if isinstance(形狀, ITable): 表格 = ITable(形狀) # 遍歷表格中的行 for 行 in 表格.TableRows: # 遍歷行中的單元格 for 單元格 in 行: # 遍歷單元格中的段落 for 段落 in 單元格.TextFrame.Paragraphs: # 遍歷段落中的文本范圍 for 文本范圍 in 段落.TextRanges: # 檢查文本范圍是否有超鏈接 if 文本范圍.ClickAction is not None: # 移除超鏈接 文本范圍.ClickAction = None # 保存演示文稿 演示文稿.SaveToFile("output/RemovePresentationHyperlinks.pptx", FileFormat.Pptx2019) 演示文稿.Dispose()
結(jié)果
本文演示了如何使用Python移除PowerPoint演示文稿中的所有超鏈接。
到此這篇關(guān)于使用Python刪除PPT中所有超鏈接的操作步驟的文章就介紹到這了,更多相關(guān)Python刪除PPT超鏈接內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python數(shù)組條件過(guò)濾filter函數(shù)使用示例
數(shù)組條件過(guò)濾簡(jiǎn)潔實(shí)現(xiàn)方式,使用filter函數(shù),實(shí)現(xiàn)一個(gè)條件判斷函數(shù)即可,示例代碼如下2014-07-07pandas基礎(chǔ)?Series與Dataframe與numpy對(duì)二進(jìn)制文件輸入輸出
這篇文章主要介紹了pandas基礎(chǔ)Series與Dataframe與numpy對(duì)二進(jìn)制文件輸入輸出,series是一種一維的數(shù)組型對(duì)象,它包含了一個(gè)值序列和一個(gè)數(shù)據(jù)標(biāo)簽2022-07-07Python爬蟲(chóng)爬取新浪微博內(nèi)容示例【基于代理IP】
這篇文章主要介紹了Python爬蟲(chóng)爬取新浪微博內(nèi)容,結(jié)合實(shí)例形式分析了Python基于代理IP實(shí)現(xiàn)的微博爬取與抓包分析相關(guān)操作技巧,需要的朋友可以參考下2018-08-08python實(shí)現(xiàn)楊輝三角的幾種方法代碼實(shí)例
這篇文章主要介紹了python實(shí)現(xiàn)楊輝三角的幾種方法代碼實(shí)例,文中圖文代碼講解的很清晰,有不太懂的同學(xué)可以學(xué)習(xí)下2021-03-03Python中實(shí)現(xiàn)從目錄中過(guò)濾出指定文件類型的文件
這篇文章主要介紹了Python中實(shí)現(xiàn)從目錄中過(guò)濾出指定文件類型的文件,本文是一篇學(xué)筆記,實(shí)例相對(duì)簡(jiǎn)單,需要的朋友可以參考下2015-02-02Python?Pytorch學(xué)習(xí)之圖像檢索實(shí)踐
隨著電子商務(wù)和在線網(wǎng)站的出現(xiàn),圖像檢索在我們的日常生活中的應(yīng)用一直在增加。圖像檢索的基本本質(zhì)是根據(jù)查詢圖像的特征從集合或數(shù)據(jù)庫(kù)中查找圖像。本文將利用Pytorch實(shí)現(xiàn)圖像檢索,需要的可以參考一下2022-04-04GitHub 熱門:Python 算法大全,Star 超過(guò) 2 萬(wàn)
4 月 27 日,GitHub 趨勢(shì)榜第 3 位是一個(gè)用 Python 編碼實(shí)現(xiàn)的算法庫(kù),Star 數(shù)早已達(dá)到 26000+2019-04-04Python 實(shí)時(shí)獲取任務(wù)請(qǐng)求對(duì)應(yīng)的Nginx日志的方法
本文給大家分享Python 實(shí)時(shí)獲取任務(wù)請(qǐng)求對(duì)應(yīng)的Nginx日志的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-07-07