230903文本docx
处理文本
块级项目,每次文本超出右边界时都会添加一行.对段落,边界一般是页边距,但如果按列布局页,则也可是列边界,如果表格单元格内有段,则也可是单元格边界.
块级项属性指定其在页上的位置,如缩进项及段落前后间距.内联项属性一般指定显示内容的如字样,字体大小,粗体和斜体等字体.
段落属性
段落有各种指定容器(一般是页)中的位置及按单独行划分内容方式的属性.
可用段落的paragraph_format属性提供的ParagraphFormat对象访问段落格式属性.
水平对齐(对齐)
可用WD_PARAGRAPH_ALIGNMENT枚举中的值设置对齐段落的水平方式为左对齐,居中对齐,右对齐或完全对齐(在左侧和右侧对齐):
from docx.enum.text import WD_ALIGN_PARAGRAPH
document = Document()
paragraph = document.add_paragraph()
paragraph_format = paragraph.paragraph_format
paragraph_format.alignment
None #继承
paragraph_format.alignment = WD_ALIGN_PARAGRAPH.CENTER
paragraph_format.alignment
CENTER (1)
缩进
缩进是段落与容器边的水平间距,一般是页边距.也可在左侧和右侧分别缩进段落.第一行也可与段落的其余部分有不同的缩进,.
from docx.shared import Inches
paragraph = document.add_paragraph()
paragraph_format = paragraph.paragraph_format
paragraph_format.left_indent
None #继承
paragraph_format.left_indent = Inches(0.5)
paragraph_format.left_indent
457200
paragraph_format.left_indent.inches
0.5
右边缩进类似:
from docx.shared import Pt
paragraph_format.right_indent
None
paragraph_format.right_indent = Pt(24)
paragraph_format.right_indent
304800
paragraph_format.right_indent.pt
24.0
使用first_line_indent属性指定首行缩进,并相对左缩进.负值表示悬挂缩进:
paragraph_format.first_line_indent
None
paragraph_format.first_line_indent = Inches(-0.25)
paragraph_format.first_line_indent
-228600
paragraph_format.first_line_indent.inches-0.25
制表符
在使用ParagraphFormat上的tab_stops属性访问的TabStop对象中包含段落或风格的制表符:
tab_stops = paragraph_format.tab_stops
tab_stops
<docx.text.tabstops.TabStops object at 0x106b802d8>
用add_tab_stop()加新制表符:
tab_stop = tab_stops.add_tab_stop(Inches(1.5))
tab_stop.position
1371600
tab_stop.position.inches
1.5
默认左对齐,但可通过提供WD_TAB_ALIGNMENT枚举的成员来指定.空格为默认前导符,但可通过提供WD_TAB_LEADER枚举的成员来指定:
from docx.enum.text import WD_TAB_ALIGNMENT, WD_TAB_LEADER
tab_stop = tab_stops.add_tab_stop(Inches(1.5), WD_TAB_ALIGNMENT.RIGHT, WD_TAB_LEADER.DOTS)
print(tab_stop.alignment)
RIGHT (2)
print(tab_stop.leader)
DOTS (1)
访问现有制表符:
tab_stops[0]
<docx.text.tabstops.TabStop object at 0x1105427e8>
段落间距
space_before和space_after属性分别控制前后段落间间距.
一般用Pt单位:
paragraph_format.space_before, paragraph_format.space_after
(None, None) # inherited by default
paragraph_format.space_before = Pt(18)
paragraph_format.space_before.pt
18.0
paragraph_format.space_after = Pt(12)
paragraph_format.space_after.pt
12.0
行距
由line_spacing和line_spacing_rule属性交互控制行距.line_spacing是长度值,(小浮点数)或无.
长度值表示绝对距离.浮点数表示许多行高."无"表示行距是继承的.line_spacing_rule是WD_LINE_SPACING枚举或None的成员:
from docx.shared import Length
paragraph_format.line_spacing
None
paragraph_format.line_spacing_rule
None
paragraph_format.line_spacing = Pt(18)
isinstance(paragraph_format.line_spacing, Length)
True
paragraph_format.line_spacing.pt
18.0
paragraph_format.line_spacing_rule
EXACTLY (4)
paragraph_format.line_spacing = 1.75
paragraph_format.line_spacing
1.75
paragraph_format.line_spacing_rule多个`(5)`
分页属性
四个段落属性(keep_together,keep_with_next,page_break_before和widow_control控制页边界行为.
1,keep_together,在同一页上显示整个段落,如果段落跨两页,则在段落前发出分页符.
2,keep_with_next,在同一页上保留当前段落与下个段落.如,可在同一页上,保持节标题与节的第一段.
3,page_break_before在新页顶部放段落.用于章节标题.
4,widow_control中断页,避免在单独页上,放置段落的第一行或最后一行.
都是三态的,取值为True,False或None.“无"表示继承.True表示"开”,False表示"关":
paragraph_format.keep_together
None # 继承为默认
paragraph_format.keep_with_next = True
paragraph_format.keep_with_next
True
paragraph_format.page_break_before = False
paragraph_format.page_break_before
False
应用符格式
符格式示例包括字体和大小,粗体,斜体和下划线.
Run对象只读,
这样访问字体:
from docx import Document
document = Document()
run = document.add_paragraph().add_run()
font = run.font
设置:
from docx.shared import Pt
font.name = "Calibri"
font.size = Pt(12)
粗体和斜体是三态属性,全大写,删除线,上标和许多其他属性同样.
font.bold, font.italic
(None, None)
font.italic = True
font.italic
True
font.italic = False
font.italic
False
font.italic = None
font.italic
None
下划线有点特殊.它是三态属性和枚举值属性的混合体.True表示单下划线.False表示没有下划线,但更常见的是,如果不需要下划线,则用None.
其他形式下划线(如双划线或虚线),则使用WD_UNDERLINE枚举指定的成员:
font.underline
None
font.underline = True
# 或
font.underline = WD_UNDERLINE.DOT_DASH
Font color
每个Font对象都有个ColorFormat对象来访问颜色.
用RGB颜色:
from docx.shared import RGBColor
font.color.rgb = RGBColor(0x42, 0x24, 0xE9)
还可按主题颜色赋值MSO_THEME_COLOR_INDEX枚举成员,来设置字体:
from docx.enum.dml import MSO_THEME_COLOR
font.color.theme_color = MSO_THEME_COLOR.ACCENT_1
赋值None给ColorFormat的rgb或theme_color属性,可恢复默认颜色.
font.color.rgb = None
确定字体颜色先要确定颜色类型:
font.color.type
RGB (1)
type属性的值可是MSO_COLOR_TYPE枚举的成员或None.MSO_COLOR_TYPE.RGB表示它是RGB颜色.MSO_COLOR_TYPE.THEME表示为主题颜色.MSO_COLOR_TYPE.AUTO表示自动确定,一般设置为黑色.(此值相对较少).
"无"表示未应用颜色,且按继承,这最常见.
颜色类型为MSO_COLOR_TYPE.RGB时,rgb属性指示是个RGB颜色的RGBColor值:
font.color.rgb
RGBColor(0x42, 0x24, 0xe9)
当颜色类型为MSO_COLOR_TYPE.THEME时,theme_color属性是主题颜色的MSO_THEME_COLOR_INDEX的成员:
font.color.theme_color
ACCENT_1 (5)
相关文章:
230903文本docx
处理文本 块级项目,每次文本超出右边界时都会添加一行.对段落,边界一般是页边距,但如果按列布局页,则也可是列边界,如果表格单元格内有段,则也可是单元格边界. 块级项属性指定其在页上的位置,如缩进项及段落前后间距.内联项属性一般指定显示内容的如字样,字体大小,粗体和斜体…...
Mysql-DML(数据处理语言)
-- 插入数据 insert into member values(1,张三,21,5000); insert into member(id,name) values(2,李四); insert into member values(3,王五,23,3000) ,(4,纪六,24,4000) ,(5,查七,25,5000); -- 更新(修改数据) 不加限制条件 该字段全部修改 update member set age…...
部署项目至服务器
安装conda https://zhuanlan.zhihu.com/p/489499097 个人租借的服务器如何进行端口的开放呢? 防火墙设置: 添加规则设置: 即可; 通常下租借的服务器没有防火墙设置 相关链接: https://blog.csdn.net/weixin_4520…...
OSI与TCP IP各层的结构与功能,都有哪些协议
分析&回答 OSI七层模型 层功能TCP/IP协议族应用层文件传输,电子邮件,文件服务,虚拟终端TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet表示层数据格式化,代码转换…...
【2023年11月第四版教材】第10章《进度管理》(第三部分)
第10章《进度管理》(第三部分) 7 估算活动持续时间7.1 估算活动持续时间7.2 类比估算★★★7.3 参数估算★★★7.4 三点估算★★★7.5 数据分析★★★ 7 估算活动持续时间 组过程输入工具和技术输出计划4,估算活动持续时间1.项目管理计划(进…...
【Vuex状态管理】Vuex的基本使用;核心概念State、Getters、Mutations、Actions、Modules的基本使用
目录 1_应用状态管理1.1_状态管理1.2_复杂的状态管理1.3_Vuex的状态管理 2_Vuex的基本使用2.1_安装2.2_创建Store2.3_组件中使用store 3_核心概念State3.1_单一状态树3.2_组件获取状态3.3_在setup中使用mapState 4_核心概念Getters4.1_getters的基本使用4.2_getters第二个参数4…...
Linux centos7 bash编程(循环与条件判断)
在编程训练中,循环结构与条件判断十分重要。 根据条件为真为假确定是否执行循环。 有时,根据条件的真假结果,决定执行哪些语句,这就是分支语句。 为了训练分支语句与循环语句,我们设计一个案例: 求一组…...
设计模式-6--装饰者模式(Decorator Pattern)
一、什么是装饰者模式(Decorator Pattern) 装饰者模式(Decorator Pattern)是一种结构型设计模式,它允许你在不修改现有对象的情况下,动态地将新功能附加到对象上。这种模式通过创建一个包装类,…...
质量属性案例-架构真题(二十一)
试题一 某电子商务公司升级会员与促销管理系统,向用户提交个性化服务,提高用户粘性。在项目建立之初,公司领导人一致认为目标是提升会员管理方式的灵活性,由于当前用户规模不大,用户简单,系统方面不需要做…...
nacos Error to process server push response
nacos2.0.3报错: Error to process server push response 解决办法: 排查项目当中有没有直接或间接依赖reflections: <dependency><groupId>org.reflections</groupId><artifactId>reflections</artifactId>…...
神经网络NLP基础 循环神经网络 LSTM
用的时候,只关心token的输入,以及hidden state就好了 sequence的length是多少,lstm的cell的数量就是多少 LSTM BI-LSTM stacked lstm GRU 实现...
Oracle数据传输加密方法
服务器端“dbhome_1\NETWORK\ADMIN\”sqlnet.ora文件中添加 SQLNET.ENCRYPTION_SERVER requested SQLNET.ENCRYPTION_TYPES_SERVER (RC4_256) 添加后新的链接即刻生效,服务器无需重新启动。 也可以通过Net manager管理工具添加 各个参数含义如下: 是…...
Android列表片段
下面创建第二个片段WorkoutFragment,它包含不同训练项目构成的一个列表,用户可以从这个列表中选择训练项目。 列表视图是只包含一个列表的片段 列表片段是一种专门处理列表的片段,它会自动绑定到一个列表视图,所以不需要另外创建…...
【元宇宙】智能手机万岁
凭借出色的新设备,我们很快就能进人元字宙,想象这样的情景是很趣的。但是,至少到21世纪20年代,元宇宙时代的大多数设备很可能是我们已经在使用的设备。 AR 和 VR 设备不仅面临重大的技术、财务和体验障碍,而且它们在上…...
华为mate60的发布代表着什么?有什么意义?
华为Mate60的发布代表着华为在技术领域的持续突破和创新。该产品预计将引入更强大的处理器、更高分辨率的屏幕、更强大的摄像头等前沿技术,进一步巩固华为在技术领域的领先地位。 此外,华为Mate60的发布还具有重塑品牌形象的意义。在美国制裁下ÿ…...
huggingface下载模型文件(基础入门版)
huggingface是一个网站,类似于github,上面拥有众多开源的模型、数据集等资料,人工智能爱好者可以很方便的上面获取需要的数据,也可以上传训练好的模型,制作的数据集等。本文只介绍下载模型的方法,适合新手入…...
在JS中tramsform与translate区别
在JavaScript中,"transform"和"translate"是用于处理HTML元素的样式属性,它们有以下区别: transform属性: transform属性是一个通用的属性,用于应用一系列的变换效果,包括平移、旋转、…...
ebay测评,物理环境与IP环境:解决平台风控问题的关键
近期eBay平台出现了大量风控问题,导致许多买家账号受到影响。实际上,这主要是由于环境搭建方面存在主要问题。时至2023年,许多人的技术方案仍停留在几年前,要么使用一键新机工具配合国外IP,要么使用指纹浏览器配合国外…...
05-Redis
1、Redis为什么快? 1、纯内存操作 2、单线程可以省去多线程时CPU上下文会切换的时间 3、渐进式ReHash、缓存时间戳 数组需要扩容的时候,他会维护两张hash表,比如第一张的数组长度为6,另一张的数组长度为12,在set和g…...
MSST-NET:用于高光谱和多光谱图像融合的多尺度空间-光谱Transfomer网络
1.网络结构 主要贡献: 提出了一种多尺度空间光谱Transformer网络光谱多头注意力旨在提取光谱特征引入多尺度波段/补丁嵌入来提取多尺度特征自监督训练 痛点:卷积核的感受野有限,基于卷积神经网络CNN的融合方法无法利用特征图中的全局关系…...
C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...
无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...
3-11单元格区域边界定位(End属性)学习笔记
返回一个Range 对象,只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意:它移动的位置必须是相连的有内容的单元格…...
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...
SQL慢可能是触发了ring buffer
简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...
LRU 缓存机制详解与实现(Java版) + 力扣解决
📌 LRU 缓存机制详解与实现(Java版) 一、📖 问题背景 在日常开发中,我们经常会使用 缓存(Cache) 来提升性能。但由于内存有限,缓存不可能无限增长,于是需要策略决定&am…...
LangFlow技术架构分析
🔧 LangFlow 的可视化技术栈 前端节点编辑器 底层框架:基于 (一个现代化的 React 节点绘图库) 功能: 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...
学习一下用鸿蒙DevEco Studio HarmonyOS5实现百度地图
在鸿蒙(HarmonyOS5)中集成百度地图,可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API,可以构建跨设备的定位、导航和地图展示功能。 1. 鸿蒙环境准备 开发工具:下载安装 De…...
