当前位置:

首页 > 编程开发 > 从入门到精通详解Python操作Word的实战指南

从入门到精通详解Python操作Word的实战指南

基于Python的python-docx库可程序化操作Word文档,实现批量生成与格式统一。该库支持创建和修改段落、设置对齐与缩进,精细控制Run级的字体、颜色、加粗等属性。能创建表格、合并单元格、动态增删行,插入图片并调整尺寸,以及通过底层API添加超链接。整个流程覆盖从环境安装到复杂排版,显著提升办公自动化效率。

1. 为什么需要程序化操作 Word

说实话,很多业务场景下,都需要批量生成格式统一的Word报告、合同、标书或者证书。手动复制粘贴?效率低不说,还特容易出错。用Python来搞定,好处就多了去了:

从入门到精通详解Python操作Word的实战指南

  • 从数据库或Excel里捞数据,再动态塞进Word模板里
  • 批量替换文档中的占位符,省时省力
  • 自动生成结构清晰的表格和图表
  • 把大量文本信息快速整理成标准排版
  • 实现办公流程自动化,90%以上的重复操作时间就这么省下来了

目前操作Word的主流Python库是python-docx。这个库的好处是,不需要电脑上装Word,就能直接创建和修改.docx文件,跨平台,性能也相当不错。

2. 环境准备与库安装

先确保Python版本在3.7以上,然后安装核心库:

pip install python-docx
# 如果需要转PDF(推荐两种方式之一)
pip install docx2pdf    # 跨平台,但依赖系统Word或LibreOffice(Windows/macOS下常用)
pip install pywin32     # 仅Windows,调用MS Word应用程序

装好后,验证一下:

import docx
print(docx.__version__)

输出信息:

3. 入门:创建你的第一个 Word 文档

来个最简单的,从零开始创建一个文档,往里加点内容。

from docx import Document

# 创建一个文档对象
doc = Document()

# 添加标题 (默认样式为 'Title')
doc.add_heading('Python Word 操作入门', level=1)

# 添加段落
doc.add_paragraph('这是第一个用 Python 生成的 Word 文档。')

# 保存文档
doc.sa ve('01_hello.docx')
print("文档已生成:01_hello.docx")

输出信息:

打开生成的文档,可以看到大标题和一行普通文字。add_paragraph还能传第二个参数来指定样式,比如:

doc.add_paragraph('一段重要的提示',)

读取已有文档

doc = Document('01_hello.docx')
for para in doc.paragraphs:
    print(para.text)

输出信息:

Python Word 操作入门

这是第一个用 Python 生成的 Word 文档。

几个关键点

  • Document() 创建一个新文档,传入路径则打开已有文件。
  • paragraphs 属性返回文档中所有段落对象,text 属性获取文本。
  • 标题、列表项这些,本质上也是段落,只是套用了不同的样式。

4. 段落操作:增删改查与样式设置

段落是文档的基本单元,可以精细控制对齐方式、行间距、缩进这些细节。

4.1 段落对齐与间距

from docx import Document
from docx.enum.text import WD_ALIGN_PARAGRAPH
from docx.shared import Pt, Inches

doc = Document()

para1 = doc.add_paragraph('居中对齐的段落')
para1.alignment = WD_ALIGN_PARAGRAPH.CENTER

para2 = doc.add_paragraph('右对齐,行间距 1.5 倍,段前 12 磅, 段后 6 磅。')
para2.alignment = WD_ALIGN_PARAGRAPH.RIGHT
para_format = para2.paragraph_format
para_format.line_spacing = 1.5
para_format.space_before = Pt(12)
para_format.space_after = Pt(6)

para3 = doc.add_paragraph('首行缩进 0.5 英寸的段落。' * 5)
para3.paragraph_format.first_line_indent = Inches(0.5)

doc.sa ve('02_paragraph_format.docx')
print("段落格式示例已生成:02_paragraph_format.docx")

输出信息:段落格式示例已生成:02_paragraph_format.docx

参数说明

  • WD_ALIGN_PARAGRAPH.LEFT/RIGHT/CENTER/JUSTIFY 控制水平对齐。
  • line_spacing 可以设置为浮点数(倍数)或具体 Pt 值(固定值)。
  • space_before / space_after 控制段前段后间距,first_line_indent 控制首行缩进。

4.2 添加换行与分页

para = doc.add_paragraph('第一行')
para.add_run('\n第二行(在同一个段落中换行)')
doc.add_page_break()  # 手动分页
doc.add_paragraph('新一页的内容')

5. Run 与字体:精细到文字的格式控制

一个段落其实是由多个Run对象组成的。Run就是相邻的、格式相同的文本块。通过它,可以在同一个段落里,给不同文字设置不同的字体、颜色、加粗等。

from docx.shared import Pt, RGBColor
from docx import Document

doc = Document()
p = doc.add_paragraph()

# 添加多个 Run
run1 = p.add_run('正常文字 ')
run2 = p.add_run('加粗红色 ')
run2.bold = True
run2.font.color.rgb = RGBColor(0xFF, 0x00, 0x00)
run2.font.size = Pt(14)

run3 = p.add_run('斜体下划线')
run3.italic = True
run3.underline = True
run3.font.name = 'Arial'

doc.sa ve('03_run_format.docx')
print("Run 格式示例已生成:03_run_format.docx")

输出信息:Run 格式示例已生成:03_run_format.docx

常用字体属性

from docx.shared import Pt
from docx.enum.text import WD_UNDERLINE

run = p.add_run('示例文本')
run.font.name = '黑体'
run.font.size = Pt(12)
run.font.bold = True
run.font.italic = True
run.font.underline = WD_UNDERLINE.DOT_DASH  # 点划线型下划线
run.font.color.rgb = RGBColor(0, 51, 153)
run.font.highlight_color = WD_COLOR_INDEX.YELLOW  # 需导入 WD_COLOR_INDEX

打印 Run 内容

for para in doc.paragraphs:
    for run in para.runs:
        print(f"文本: {run.text} | 粗体: {run.bold} | 字体: {run.font.name}")

输出示例:

文本: 正常文字 | 粗体: None | 字体: None

文本: 加粗红色 | 粗体: True | 字体: 黑体

文本: 斜体下划线 | 粗体: None | 字体: Arial

需要注意的是,没显式设置字体名字时,run.font.name可能会返回None,表示继承所在样式的设定。

6. 表格实战:从创建到复杂排版

python-docx的表格API相当灵活,创建、合并单元格、设置样式都不在话下。

6.1 创建表格并填充数据

doc = Document()
doc.add_heading('员工信息表', level=2)

# 创建 4 行 3 列的表格
table = doc.add_table(rows=4, cols=3,)
# 表头
headers = ['姓名', '部门', '工龄']
for i, header in enumerate(headers):
    cell = table.cell(0, i)
    cell.text = header
    # 表头加粗
    for paragraph in cell.paragraphs:
        for run in paragraph.runs:
            run.bold = True

# 数据
data = [
    ['张三', '研发部', '3'],
    ['李四', '市场部', '5'],
    ['王五', '财务部', '2']
]
for row_idx, row_data in enumerate(data, start=1):
    for col_idx, cell_text in enumerate(row_data):
        table.cell(row_idx, col_idx).text = cell_text

doc.sa ve('04_table.docx')
print("表格已生成:04_table.docx")

6.2 合并单元格与调整列宽

# 接上面代码,在已创建的表格上操作
# 合并第一行的前两列
a = table.cell(0, 0)
b = table.cell(0, 1)
a.merge(b)
a.text = '基本信息(合并单元格)'

# 设置列宽
from docx.shared import Cm
for cell in table.columns[0].cells:
    cell.width = Cm(4)
for cell in table.columns[1].cells:
    cell.width = Cm(4)
for cell in table.columns[2].cells:
    cell.width = Cm(2)

doc.sa ve('04_table_merged.docx')
print("合并单元格表格已生成")

6.3 逐行添加、删除行

# 动态添加行
row = table.add_row()
row.cells[0].text = '赵六'
row.cells[1].text = '行政部'
row.cells[2].text = '1'

# 删除最后一行(如果不需要)
# table._tbl.remove(table.rows[-1]._tr)   # 内部方法,谨慎使用

打印表格内容验证

for row in table.rows:
    for cell in row.cells:
        print(cell.text, end='\t')
    print()

输出:

基本信息(合并单元格) 部门 工龄

张三 研发部 3

李四 市场部 5

王五 财务部 2

赵六 行政部 1

7. 图片与超链接:让文档图文并茂

7.1 插入图片并控制尺寸

from docx.shared import Inches
doc = Document()
doc.add_paragraph('下方是一张示例图片(请确保图片文件存在):')

# 插入内联图片
doc.add_picture('python_logo.png', width=Inches(2), height=Inches(1.2))
# 只设宽度时高度自动等比例缩放
doc.add_picture('chart.png', width=Inches(4))

doc.sa ve('05_image.docx')
print("图片文档已生成")

add_picture 常用参数:

  • width / height:指定尺寸,若只指定一个,另一个会按比例自动计算。
  • 单位可以用Inches, Cm, Pt等。

7.2 添加超链接

python-docx没有直接提供独立的超链接函数,但可以通过添加具有超链接样式的段落,并附加关系来实现。推荐方法如下:

from docx.oxml.ns import qn
import docx

def add_hyperlink(paragraph, text, url):
    """为段落添加超链接"""
    part = paragraph.part
    r_id = part.relate_to(url, docx.opc.constants.RELATIONSHIP_TYPE.HYPERLINK, is_external=True)
    hyperlink = docx.oxml.shared.OxmlElement('w:hyperlink')
    hyperlink.set(qn('r:id'), r_id)
    new_run = docx.oxml.shared.OxmlElement('w:r')
    rPr = docx.oxml.shared.OxmlElement('w:rPr')
    c = docx.oxml.shared.OxmlElement('w:rStyle')
    c.set(qn('w:val'), 'Hyperlink')
    rPr.append(c)
    new_run.append(rPr)
    new_run.text = text
    hyperlink.append(new_run)
    paragraph._p.append(hyperlink)
    return hyperlink

doc = Document()
p = doc.add_paragraph('访问 ')
add_hyperlink(p, 'Python 官网', 'https://www.python.org')
doc.sa ve('06_hyperlink.docx')
print("超链接文档已生成")

执行后,段落中的“Python 官网”就会显示为蓝色下划线超链接。

8. 页面控制:分节符、页眉页脚与页码

一个Word文档可以包含多个节(Section),每个节可以独立设置页面尺寸、方向、页眉页脚等。

8.1 分节与页面设置

from docx import Document
from docx.shared import Inches, Cm
from docx.enum.section import WD_ORIENT

doc = Document()
# 第一节(默认存在)
section1 = doc.sections[0]
section1.page_width = Cm(21)
section1.page_height = Cm(29.7)
section1.orientation = WD_ORIENT.PORTRAIT  # 纵向
section1.left_margin = Cm(2.5)
section1.right_margin = Cm(2.5)

doc.add_paragraph('第一节的内容。')

# 添加新节,并设置为横向
doc.add_section()
section2 = doc.sections[1]
section2.orientation = WD_ORIENT.LANDSCAPE
section2.page_width = Cm(29.7)
section2.page_height = Cm(21)

doc.add_paragraph('第二节为横向页面,适合放置宽表格。')

doc.sa ve('07_sections.docx')
print("分节文档已生成")

8.2 页眉和页脚

doc = Document()
section = doc.sections[0]

# 页眉
header = section.header
header_para = header.paragraphs[0]
header_para.text = "公司内部文件 - 机密"
header_para.alignment = 2  # 居中 (CENTER)

# 页脚添加页码
footer = section.footer
footer_para = footer.paragraphs[0]
# 加入自动页码字段(PAGE 域)
footer_para.text = "第 "
run = footer_para.add_run()
fldChar1 = run._r.makeelement(docx.oxml.ns.qn('w:fldChar'), {"w:fldCharType": "begin"})
instrText = run._r.makeelement(docx.oxml.ns.qn('w:instrText'), {})
instrText.text = " PAGE "
fldChar2 = run._r.makeelement(docx.oxml.ns.qn('w:fldChar'), {"w:fldCharType": "end"})
run._r.append(fldChar1)
run._r.append(instrText)
run._r.append(fldChar2)
footer_para.add_run(" 页")

doc.add_paragraph('正文内容...')
doc.sa ve('08_header_footer.docx')
print("页眉页脚文档已生成")

打开文档后,页脚会显示“第 X 页”。不同节可以拥有独立的页眉页脚。

9. 样式与主题:打造专业文档模板

除了内建样式(如Title, Heading 1, Normal等),还可以自定义样式,实现统一排版。

9.1 使用内建样式

doc = Document()
doc.add_paragraph('标题自动应用 Heading 1',)
doc.add_paragraph('此处为正常正文',)
doc.add_paragraph('带编号的列表项 1',)
doc.add_paragraph('带编号的列表项 2',)
doc.sa ve('09_builtin_styles.docx')

9.2 自定义段落样式

from docx.enum.style import WD_STYLE_TYPE

style = doc.styles.add_style('MyCustomStyle', WD_STYLE_TYPE.PARAGRAPH)
style.font.name = '微软雅黑'
style.font.size = Pt(11)
style.font.color.rgb = RGBColor(0x33, 0x33, 0x33)
style.paragraph_format.space_after = Pt(8)
style.paragraph_format.line_spacing = 1.2

doc.add_paragraph('使用自定义样式的段落。',)

9.3 修改当前文档的默认样式

doc = Document()
style = doc.styles['Normal']
style.font.name = 'Times New Roman'
style.font.size = Pt(12)
style.paragraph_format.space_after = Pt(6)
doc.add_paragraph('所有 Normal 都会继承此设置。')

10. 高级操作:文档合并、替换与邮件合并

10.1 合并多个 Word 文档

思路很简单:将一个文档的所有元素(段落、表格等)逐一复制到另一个文档末尾。

from docx import Document

def merge_docs(target_doc, source_path):
    src = Document(source_path)
    for element in src.element.body:
        target_doc.element.body.append(element)

doc = Document()
doc.add_heading('合并文档示例', 0)
doc.add_paragraph('第一部分')

# 模拟两个独立文档
Document('part1.docx').sa ve('part1.docx')  # 自己创建,可替换为真实文件
Document('part2.docx').sa ve('part2.docx')

merge_docs(doc, 'part1.docx')
merge_docs(doc, 'part2.docx')
doc.sa ve('10_merged.docx')
print("合并完成:10_merged.docx")

注意,这个方法会复制元素,但不会自动处理样式和图片关系,复杂文档还是建议用模板方式或COM对象。

10.2 文本替换

doc = Document('template.docx')  # 包含占位符如 {{name}}
for para in doc.paragraphs:
    if '{{name}}' in para.text:
        para.text = para.text.replace('{{name}}', '张三')
# 注意:这种方式会清除原有 Run 级格式。更优雅的方法是遍历 Run 替换,保留格式:
for para in doc.paragraphs:
    for run in para.runs:
        if '{{' in run.text:
            run.text = run.text.replace('{{name}}', '张三')
doc.sa ve('10_replaced.docx')

10.3 邮件合并(类似 Mail Merge)

典型场景:用同一个模板,根据数据源生成多份信函。

data = [
    {'name': '张三', 'amount': 5000},
    {'name': '李四', 'amount': 3000}
]
for i, record in enumerate(data):
    doc = Document('template_letter.docx')
    for para in doc.paragraphs:
        for run in para.runs:
            if '{{name}}' in run.text:
                run.text = run.text.replace('{{name}}', record['name'])
            if '{{amount}}' in run.text:
                run.text = run.text.replace('{{amount}}', str(record['amount']))
    doc.sa ve(f'letter_{i+1}.docx')
print("批量信函已生成")

11. 格式转换:Word 转 PDF 等

11.1 使用 docx2pdf (Windows/macOS)

from docx2pdf import convert

convert('report.docx', 'report.pdf')
print("转换完成:report.pdf")

批量转换:

convert('input_folder/', 'output_folder/')

11.2 使用 win32com (仅 Windows, 功能更强大)

import win32com.client

def docx_to_pdf(input_path, output_path):
    word = win32com.client.Dispatch("Word.Application")
    word.Visible = False
    doc = word.Documents.Open(input_path)
    doc.Sa veAs(output_path, FileFormat=17)  # 17 代表 PDF
    doc.Close()
    word.Quit()
    print(f"PDF 已生成: {output_path}")

docx_to_pdf('report.docx', 'report.pdf')

FileFormat 常量参考:

  • 16:docx
  • 17:PDF
  • 其他格式可查 MSDN。

12. 实战案例:自动化生成月度报表

来看一个实战场景:从Excel里读销售数据,生成一份图文并茂的Word报告,再导出成PDF。

数据准备 (sales_data.xlsx)

脚本实现

import pandas as pd
from docx import Document
from docx.shared import Inches, Pt, RGBColor
from docx.enum.text import WD_ALIGN_PARAGRAPH
import matplotlib.pyplot as plt
from docx2pdf import convert
import os

# 1. 读取数据
df = pd.read_excel('sales_data.xlsx')
print("读取数据预览:\n", df)

# 2. 生成图表
plt.figure()
plt.plot(df['月份'], df['销售额(万)'], marker='o', label='销售额')
plt.plot(df['月份'], df['利润(万)'], marker='s', label='利润')
plt.xlabel('月份')
plt.ylabel('金额(万元)')
plt.title('月度销售趋势')
plt.legend()
plt.tight_layout()
chart_file = 'sales_chart.png'
plt.sa vefig(chart_file)
plt.close()

# 3. 创建 Word 报告
doc = Document()

# 标题
title = doc.add_heading('月度销售报告', level=0)
title.alignment = WD_ALIGN_PARAGRAPH.CENTER

# 摘要
summary = doc.add_paragraph()
summary.add_run('报告摘要:').bold = True
summary.add_run(f'本期共分析 {len(df)} 个月数据,平均销售额 {df["销售额(万)"].mean():.2f} 万元。')

# 表格
doc.add_heading('详细数据', level=2)
table = doc.add_table(rows=len(df)+1, cols=3,)
# 表头
for i, col in enumerate(df.columns):
    table.cell(0, i).text = col
    for run in table.cell(0, i).paragraphs[0].runs:
        run.bold = True
# 数据行
for idx, row in df.iterrows():
    for j, val in enumerate(row):
        table.cell(idx+1, j).text = str(val)

# 插入图表
doc.add_heading('销售趋势图', level=2)
doc.add_picture(chart_file, width=Inches(5.5))

# 页脚
footer = doc.sections[0].footer
footer_para = footer.paragraphs[0]
footer_para.text = "自动生成报告 - 仅供内部使用"

report_path = 'monthly_report.docx'
doc.sa ve(report_path)
print(f"Word 报告已生成:{report_path}")

# 4. 转换成 PDF
pdf_path = 'monthly_report.pdf'
try:
    convert(report_path, pdf_path)
    print(f"PDF 报告已生成:{pdf_path}")
except Exception as e:
    print(f"PDF 转换失败(可能未安装 Word 或依赖缺失): {e}")

执行输出

读取数据预览:

月份 销售额(万) 利润(万)

0 1月 120 30

1 2月 150 40

2 3月 180 50

Word 报告已生成:monthly_report.docx

PDF 报告已生成:monthly_report.pdf

这个案例串联了数据读取、图表生成、文档排版、页眉页脚、格式转换等核心技术。

13. 总结与扩展资源

通过这一路看下来,你已经从零开始掌握了Python操作Word的核心技能:

  • 文档创建、段落与格式
  • 表格、图片、超链接
  • 页眉页脚、分节布局
  • 样式与模板化
  • 文档合并与邮件合并
  • Word 转 PDF 实际部署

最后说几个常见问题和注意事项

  1. 字体缺失服务器环境没有中文字体时,生成的docx在其他电脑打开可能显示为方块。解决方案是安装所需字体,或者通过run.font.name设置通用字体(比如宋体)。
  2. 图片路径:务必使用绝对路径,或者确保图片在运行目录下。
  3. 样式继承:当Run的某个属性为None时,表示继承最近的非None值,这可能造成格式混乱,建议显式设置。
  4. 大文档性能:通过python-docx处理超长表格或大量图片时,速度会下降。可以考虑直接操作XML,或者使用流式生成。
本文内容来源于互联网,如有侵权请联系删除。
作者最新文章
编程开发 Python
相关文章 更多
Python安装后怎么打开:使用IDLE或命令行启动解释器
Python安装后怎么打开:使用IDLE或命令行启动解释器

刚在Windows安装好Python却不知道如何启动?本文详细演示如何通过开始菜单找到并打开IDLE集成开发环境,以及如何在PowerShell或命令提示符中使用python和py命令启动交互式解释器、运行.py脚本文件。包含退出解释器的方法及常见启动问题排查,帮助初学者快速验证安装成功并开始编写代码。

Windows系统Python安装教程:下载、勾选PATH及环境变量配置
Windows系统Python安装教程:下载、勾选PATH及环境变量配置

针对Windows初学者的Python安装实战指南。详细讲解如何从Python官网下载匹配架构的安装包,重点演示安装首屏勾选“Add python.exe to PATH”的关键操作,并提供使用python --version和py命令验证环境变量的具体步骤,帮助新手快速搭建开发环境并排查路径问题。

麒麟OS如何查看Python进程的运行状态
麒麟OS如何查看Python进程的运行状态

要想确认麒麟OS中Python程序的运行状态以及资源占用情况,我们可以这样做:用ps -ef | grep python来筛选进程;通过top命令,按P键排序查看实时负载;使用pgrep -f "script.py"精准获取PID;借助lsof -p PID验证文件打开状态。另外,还可以结合syst

Python在Debian上如何配置SSL证书
Python在Debian上如何配置SSL证书

在Debian系统上配置SSL证书通常涉及以下几个步骤:安装Web服务器:首先,你需要一个Web服务器,比如Apache或Nginx。这里以Apache为例。sudo apt updatesudo apt install apache2获取SSL证书:你可以从Let’s Encrypt免费获取SSL

统信UOS怎么安装Python开发环境
统信UOS怎么安装Python开发环境

要想让Python项目在统信UOS上正常运行,得先安装python3、python3-pip、python3-venv、python3-dev以及build-essential等组件。具体操作就是执行sudo apt install命令来一步到位完成安装,同时别忘了配置清华镜像源来给pip加速哦。在

纯Python方案实现中英文全文搜索
纯Python方案实现中英文全文搜索

在互联网上的各类网站中,无论大小,基本上都会有一个搜索框,用来给用户对内容进行搜索,小到站点搜索,大到搜索引擎搜索。从简单的来说,搜索功能确实很简单,一个简单的select语句就可以实现数据的搜索。而从复杂的来看,无论是搜索的精度还是搜索的效率,都是有很深的研究范围的。对于简单的搜索功能来说,一个s

Mac如何取消通过Python脚本运行的关机程序
Mac如何取消通过Python脚本运行的关机程序

立即在终端输入sudo shutdown -c取消倒计时关机,成功后显示“Shutdown cancelled”;若存在pmset重复任务,需再执行sudo pmset repeat cancel清除。Mac因Python脚本执行了os.system("sudo shutdown -h +10")或

Pythonasyncio异步并发与多固定出口IP调度实战
Pythonasyncio异步并发与多固定出口IP调度实战

之前写过一篇同步场景下用 Python 管理多个固定出口 IP 的实践(ExitPool + requests/httpx),覆盖了健康检查、故障转移和连接池复用。但在实际业务中,越来越多的场景用 asyncio 做高并发采集或批量接口调用——异步事件循环下多出口的管理方式和同步场景完全不同:单线程

Python在静态出口IP产品中的实战:从地址漂移巡检到多IP故障切换
Python在静态出口IP产品中的实战:从地址漂移巡检到多IP故障切换

写在前面:为什么静态出口 IP 不是"买了就行"不少团队在引入静态出口 IP 产品时,第一反应往往是:“地址配上去,这事就算完了。”可真到了真实业务里,静态出口 IP 真正能体现价值的地方,往往不在分配这一步,而在分配之后怎么管:地址有没有漂移,质量是否达标,某一条线路突然不可用时怎么切换,连接层又

using namespace 使用中遇到的问题怎么解决
using namespace 使用中遇到的问题怎么解决

命名空间的基本概念与常见引入问题在C++等编程语言中,命名空间(namespace)是一种将代码标识符(如变量、函数、类名)封装在特定名称下的机制,其主要目的是避免命名冲突,尤其是在大型项目或使用多个第三方库时。使用“using namespace”指令可以将指定命名空间中的所有名称引入当前作用域,

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

macOS软件
macOS软件

正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

Mac软件 更多
灵活计算器
灵活计算器
macOS/iOS/Android

灵活计算器是一款笔记式算数应用,支持实时计算、动态关联和云端同步功能。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

赤友清理大师
赤友清理大师
macOS

赤友清理大师是一款为 Mac 设计的智能清理优化工具,可精准扫描垃圾、大文件、重复文件等,释放磁盘空间。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

极度公式
极度公式
Windows/macOS/Linux

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

WINDOWS 更多
Windows 10
Windows 10
Windows

Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。

极度公式
极度公式
Windows/macOS/Linux

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

密码键盘
密码键盘
Windows/macOS/iOS/Android

密码键盘是一款兼具安全性与便捷性的高效密码管理器。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。