python-docx 使用xml為docx不同的章節段落設置不同字體

本文目錄

  • 前言
  • 一、完整代碼
  • 二、代碼詳細解析
    • 1、處理過程解釋
      • (1) 引入庫并定義路徑
      • (2) 創建docx的備份文件
      • (3) 定義命名空間
      • (4) 打開并處理.docx文件
      • (5) 分析和組織文檔結構
      • (6) 設置字體
      • (7) 保存結果

前言

本文主要解決的內容,就是為一個docx的不同章節段落設置不同的字體,因為有的時候,我們的需求就是碰到了分節符以后,字體要產生一些變化,這個利用python-docx庫的話,可能不支持了,所以我們還是從docx的底層xml來研究如何解決這個問題。

比如下方的這個圖,利用分節符,分成了三節,也就是三個section,我們遇見的需求,是每一個section,也就是每一個節,都使用不同的字體。
在這里插入圖片描述

我先把實驗過后形成的完整代碼貼上來,然后再一點一點的來解釋一下我們具體是怎樣處理的。

一、完整代碼

# 引入必要的庫
import os  # 用于操作系統相關的功能
import shutil  # 提供高級文件操作功能
import zipfile  # 處理ZIP文件
from lxml 

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/36332.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/36332.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/36332.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

6.二叉樹.題目3

6.二叉樹.題目3 題目17.二叉搜索樹中的眾數18.二叉樹的最近公共祖先19.二叉樹搜索樹的最近公共祖先20.二叉搜索樹中的插入操作。普通二叉樹的刪除方式 21.刪除二叉搜索樹中的節點22.修剪二叉樹23.將有序數組轉化為二叉搜索樹24.把二叉搜索樹轉化為累加樹 總結 題目 17.二叉搜索…

LLM大模型本地部署與預訓練微調

以通義千問-1_8B-Chat為例,按照官方教程,簡單介紹如何將模型進行本地CPU部署以及預訓練微調: 1、環境條件:Linux 24G內存左右 2、本地部署: 提前安裝好git跟git lfs,否則可能拉取不到模型文件,g…

SQL面試題練習 —— 求連續段的起始位置和結束位置

目錄 1 題目2 建表語句3 題解 題目來源:拼多多。 1 題目 有一張表t_id記錄了id,id不重復,但是會存在間斷,求出連續段的起始位置和結束位置。 樣例數據 ----- | id | ----- | 1 | | 2 | | 3 | | 5 | | 6 | | 8 | | …

【教程】DPW 325T FPGA板卡程序下載與固化全攻略

到底什么是固化??? 在開發板領域,"固化"通常指的是將軟件或操作系統的鏡像文件燒錄(Flash)到開發板的存儲介質上,使其成為開發板啟動時加載的系統。這個過程可以確保開發板在啟動時能…

從單點到全景:視頻匯聚/安防監控EasyCVR全景視頻監控技術的演進之路

在當今日新月異的科技浪潮中,安防監控領域的技術發展日新月異,全景攝像機便是這一領域的杰出代表。它以其獨特的360度無死角監控能力,為各行各業提供了前所未有的安全保障,成為現代安防體系中的重要組成部分。 一、全景攝像機的技…

【SpringMVC】第1-7章

第1章 初始SpringMVC 1.1 學習本套教程前的知識儲備 JavaSEHTMLCSSJavaScriptVueAJAX axiosThymeleafServletMavenSpring 1.2 什么是MVC MVC架構模式相關課程,在老杜的JavaWeb課程中已經詳細的講解了,如果沒有學過的,可以看這個視頻&…

抖音微短劇小程序平臺:源碼搭建與廣告回傳技術詳解

抖音微短劇小程序平臺:源碼搭建與廣告回傳技術詳解 在數字化時代,短視頻已成為大眾娛樂生活的重要組成部分。抖音微短劇小程序平臺,作為這一趨勢的佼佼者,不僅為用戶提供了豐富多樣的短視頻內容,還為創作者和廣告主提…

當下為什么越來越多的企業選擇產業園區,而不是寫字樓?

隨著經濟形勢的變化和各行業的升級轉型,我們發現越來越多的企業選擇扎根產業園而非傳統的寫字樓,這一現象背后真正的原因是什么呢?今天我們就站在企業自身發展的角度,全維度對比一下產業園與傳統寫字樓的區別,看是否能…

參加六西格瑪綠帶培訓是投資未來,還是花冤枉錢?

是否值得花費資金參加六西格瑪綠帶培訓,取決于多個因素。 從積極的方面來看,參加六西格瑪綠帶培訓具有以下潛在價值: 1. 提升專業技能:使您掌握一套系統的問題解決方法和流程改進工具,有助于在工作中更高效地解決復雜…

代碼隨想錄算法訓練營:14/60

非科班學習算法day14 | LeetCode266:翻轉二叉樹 ,Leetcode101: 對稱二叉樹,Leetcode100:相同的的樹 ,LeetCode572:另一顆樹的子樹,LeetCode104:二叉樹的最大深度,LeetCode559:N叉樹的最大深度 目…

CesiumJS【Basic】- #017 精靈動畫的渲染

文章目錄 精靈動畫的渲染1 目標2 實現3 資源文件精靈動畫的渲染 1 目標 完成動畫精靈圖(Animated Sprite Sheet)的渲染 2 實現 import * as Cesium from "cesium";const viewer = new Cesium.

SDK 程序卡在 AXI DMA 配置 (XAxiDma_CfgInitialize)的解決方法

在進行 AXI DMA 配置 時候代碼一直卡在XAxiDma_CfgInitialize函數出不來,也沒有打印報錯。 /* Initialize the XAxiDma device.*/CfgPtr XAxiDma_LookupConfig(DeviceId);if (!CfgPtr) {xil_printf("No config found for %d\r\n", DeviceId);return XST_…

Ubuntu安裝指定內核版本教程

Ubuntu安裝內核 1.查看當前os已安裝的內核 $sudo dpkg --get-selections |grep linux-image linux-image-5.10.0-1013-oem install linux-image-5.11.0-27-generic install linux-image-5.11.0-41-generic install …

ResNet-50算法

🍨 本文為🔗365天深度學習訓練營 中的學習記錄博客🍖 原作者:K同學啊 一、理論知識儲備 1.CNN算法發展 AlexNet是2012年ImageNet競賽中,由Alex Krizhevsky和Ilya Sutskever提出,在2012年ImageNet競賽中&a…

頭歌——機器學習——支持向量機案例

第1關:基于支持向量機模型的應用案例 任務描述 本關任務:編寫一個基于支持向量機模型的應用案例。 相關知識 在本應用案例中,我們借助一個具體的實際問題,來完整地實現基于支持向量機模型的開發應用。在此訓練中,我…

運籌系列93:VRP精確算法

1. MTZ模型 MTZ是Miller-Tucker-Zemlin inequalities的縮寫。除了定義是否用到邊 x i j x_{ij} xij?外,還需要定義一個 u i u_i ui?用來表示此時車輛的當前載貨量。注意這里x變量需要定義為有向。 這里定義為pickup問題,代碼為: using Ju…

數據庫系統概論-第11章并發控制

允許多個用戶同時使用同一個數據庫的數據庫系統稱為多用戶數據庫系統。 事務可以一個一個地中行執行,即每個時刻只有一個事務運行,其他事務必須等到這個事務結束以后方能運行。 單處理機系統中,事務的并行執行實際上是這些并行事務的并行操…

windows下載jdk并安裝步驟(保姆級教程)

一、下載jdk 下載地址: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 二、雙擊下載好的jdk 更改安裝目錄然后點擊下一步 然后會彈出jre的安裝,需要選擇路徑(注意:這里的路徑必須跟前面的jdk在…

ocr數據不夠,怎么造數據

1.確定特定字體類型; 2.收集合適的圖片作為背景 3.在背景圖上填寫特定字體的字符內容 1)字體無法確認時怎么辦? 方法一:可以將文本行裁剪出來去網站上確認,網站鏈接:字體識別-在線掃一掃圖片找字體-搜字…

將huggingface的大模型轉換為safetensor格式

很多huggingface的大語言模型都是pytorch的格式,但是mindie需要safetensor格式,另外mindieservice加載原始的baichuan2-13b的模型出錯,后來排查是bfloat16數據格式的問題,所以這次轉換要一次性轉為float16的格式。 上代碼&#x…