当前位置: 首页 > news >正文

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_beforespace_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_spacingline_spacing_rule属性交互控制行距.line_spacing是长度值,(小浮点数)或无.
长度值表示绝对距离.浮点数表示许多行高."无"表示行距是继承的.line_spacing_ruleWD_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_beforewidow_control控制页边界行为.
1,keep_together,在同一页上显示整个段落,如果段落跨两页,则在段落前发出分页符.
2,keep_with_next,在同一页上保留当前段落与下个段落.如,可在同一页上,保持节标题与节的第一段.
3,page_break_before新页顶部放段落.用于章节标题.
4,widow_control中断页,避免在单独页上,放置段落的第一行或最后一行.
都是三态的,取值为True,FalseNone.“无"表示继承.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

赋值NoneColorFormatrgbtheme_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); -- 更新&#xff08;修改数据) 不加限制条件 该字段全部修改 update member set age…...

部署项目至服务器

安装conda https://zhuanlan.zhihu.com/p/489499097 个人租借的服务器如何进行端口的开放呢&#xff1f; 防火墙设置&#xff1a; 添加规则设置&#xff1a; 即可&#xff1b; 通常下租借的服务器没有防火墙设置 相关链接&#xff1a; https://blog.csdn.net/weixin_4520…...

OSI与TCP IP各层的结构与功能,都有哪些协议

分析&回答 OSI七层模型 层功能TCP/IP协议族应用层文件传输&#xff0c;电子邮件&#xff0c;文件服务&#xff0c;虚拟终端TFTP&#xff0c;HTTP&#xff0c;SNMP&#xff0c;FTP&#xff0c;SMTP&#xff0c;DNS&#xff0c;Telnet表示层数据格式化&#xff0c;代码转换…...

【2023年11月第四版教材】第10章《进度管理》(第三部分)

第10章《进度管理》&#xff08;第三部分&#xff09; 7 估算活动持续时间7.1 估算活动持续时间7.2 类比估算★★★7.3 参数估算★★★7.4 三点估算★★★7.5 数据分析★★★ 7 估算活动持续时间 组过程输入工具和技术输出计划4,估算活动持续时间1.项目管理计划&#xff08;进…...

【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编程(循环与条件判断)

在编程训练中&#xff0c;循环结构与条件判断十分重要。 根据条件为真为假确定是否执行循环。 有时&#xff0c;根据条件的真假结果&#xff0c;决定执行哪些语句&#xff0c;这就是分支语句。 为了训练分支语句与循环语句&#xff0c;我们设计一个案例&#xff1a; 求一组…...

设计模式-6--装饰者模式(Decorator Pattern)

一、什么是装饰者模式&#xff08;Decorator Pattern&#xff09; 装饰者模式&#xff08;Decorator Pattern&#xff09;是一种结构型设计模式&#xff0c;它允许你在不修改现有对象的情况下&#xff0c;动态地将新功能附加到对象上。这种模式通过创建一个包装类&#xff0c;…...

质量属性案例-架构真题(二十一)

试题一 某电子商务公司升级会员与促销管理系统&#xff0c;向用户提交个性化服务&#xff0c;提高用户粘性。在项目建立之初&#xff0c;公司领导人一致认为目标是提升会员管理方式的灵活性&#xff0c;由于当前用户规模不大&#xff0c;用户简单&#xff0c;系统方面不需要做…...

nacos Error to process server push response

nacos2.0.3报错&#xff1a; Error to process server push response 解决办法&#xff1a; 排查项目当中有没有直接或间接依赖reflections&#xff1a; <dependency><groupId>org.reflections</groupId><artifactId>reflections</artifactId>…...

神经网络NLP基础 循环神经网络 LSTM

用的时候&#xff0c;只关心token的输入&#xff0c;以及hidden state就好了 sequence的length是多少&#xff0c;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) 添加后新的链接即刻生效&#xff0c;服务器无需重新启动。 也可以通过Net manager管理工具添加 各个参数含义如下&#xff1a; 是…...

Android列表片段

下面创建第二个片段WorkoutFragment&#xff0c;它包含不同训练项目构成的一个列表&#xff0c;用户可以从这个列表中选择训练项目。 列表视图是只包含一个列表的片段 列表片段是一种专门处理列表的片段&#xff0c;它会自动绑定到一个列表视图&#xff0c;所以不需要另外创建…...

【元宇宙】智能手机万岁

凭借出色的新设备&#xff0c;我们很快就能进人元字宙&#xff0c;想象这样的情景是很趣的。但是&#xff0c;至少到21世纪20年代&#xff0c;元宇宙时代的大多数设备很可能是我们已经在使用的设备。 AR 和 VR 设备不仅面临重大的技术、财务和体验障碍&#xff0c;而且它们在上…...

华为mate60的发布代表着什么?有什么意义?

华为Mate60的发布代表着华为在技术领域的持续突破和创新。该产品预计将引入更强大的处理器、更高分辨率的屏幕、更强大的摄像头等前沿技术&#xff0c;进一步巩固华为在技术领域的领先地位。 此外&#xff0c;华为Mate60的发布还具有重塑品牌形象的意义。在美国制裁下&#xff…...

huggingface下载模型文件(基础入门版)

huggingface是一个网站&#xff0c;类似于github&#xff0c;上面拥有众多开源的模型、数据集等资料&#xff0c;人工智能爱好者可以很方便的上面获取需要的数据&#xff0c;也可以上传训练好的模型&#xff0c;制作的数据集等。本文只介绍下载模型的方法&#xff0c;适合新手入…...

在JS中tramsform与translate区别

在JavaScript中&#xff0c;"transform"和"translate"是用于处理HTML元素的样式属性&#xff0c;它们有以下区别&#xff1a; transform属性&#xff1a; transform属性是一个通用的属性&#xff0c;用于应用一系列的变换效果&#xff0c;包括平移、旋转、…...

ebay测评,物理环境与IP环境:解决平台风控问题的关键

近期eBay平台出现了大量风控问题&#xff0c;导致许多买家账号受到影响。实际上&#xff0c;这主要是由于环境搭建方面存在主要问题。时至2023年&#xff0c;许多人的技术方案仍停留在几年前&#xff0c;要么使用一键新机工具配合国外IP&#xff0c;要么使用指纹浏览器配合国外…...

05-Redis

1、Redis为什么快&#xff1f; 1、纯内存操作 2、单线程可以省去多线程时CPU上下文会切换的时间 3、渐进式ReHash、缓存时间戳 数组需要扩容的时候&#xff0c;他会维护两张hash表&#xff0c;比如第一张的数组长度为6&#xff0c;另一张的数组长度为12&#xff0c;在set和g…...

MSST-NET:用于高光谱和多光谱图像融合的多尺度空间-光谱Transfomer网络

1.网络结构 主要贡献&#xff1a; 提出了一种多尺度空间光谱Transformer网络光谱多头注意力旨在提取光谱特征引入多尺度波段/补丁嵌入来提取多尺度特征自监督训练 痛点&#xff1a;卷积核的感受野有限&#xff0c;基于卷积神经网络CNN的融合方法无法利用特征图中的全局关系…...

uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖

在前面的练习中&#xff0c;每个页面需要使用ref&#xff0c;onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入&#xff0c;需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...

JVM垃圾回收机制全解析

Java虚拟机&#xff08;JVM&#xff09;中的垃圾收集器&#xff08;Garbage Collector&#xff0c;简称GC&#xff09;是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象&#xff0c;从而释放内存空间&#xff0c;避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

Spring Boot面试题精选汇总

&#x1f91f;致敬读者 &#x1f7e9;感谢阅读&#x1f7e6;笑口常开&#x1f7ea;生日快乐⬛早点睡觉 &#x1f4d8;博主相关 &#x1f7e7;博主信息&#x1f7e8;博客首页&#x1f7eb;专栏推荐&#x1f7e5;活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)

目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关&#xff0…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

【VLNs篇】07:NavRL—在动态环境中学习安全飞行

项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战&#xff0c;克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...

免费数学几何作图web平台

光锐软件免费数学工具&#xff0c;maths,数学制图&#xff0c;数学作图&#xff0c;几何作图&#xff0c;几何&#xff0c;AR开发,AR教育,增强现实,软件公司,XR,MR,VR,虚拟仿真,虚拟现实,混合现实,教育科技产品,职业模拟培训,高保真VR场景,结构互动课件,元宇宙http://xaglare.c…...

十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建

【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...

解析两阶段提交与三阶段提交的核心差异及MySQL实现方案

引言 在分布式系统的事务处理中&#xff0c;如何保障跨节点数据操作的一致性始终是核心挑战。经典的两阶段提交协议&#xff08;2PC&#xff09;通过准备阶段与提交阶段的协调机制&#xff0c;以同步决策模式确保事务原子性。其改进版本三阶段提交协议&#xff08;3PC&#xf…...

数据库正常,但后端收不到数据原因及解决

从代码和日志来看&#xff0c;后端SQL查询确实返回了数据&#xff0c;但最终user对象却为null。这表明查询结果没有正确映射到User对象上。 在前后端分离&#xff0c;并且ai辅助开发的时候&#xff0c;很容易出现前后端变量名不一致情况&#xff0c;还不报错&#xff0c;只是单…...