Python 将 HTML 转换为图像
|
028-81705109
|
|
微信扫一扫
|

Spire.Cloud 纯前端文档控件

Python 将 HTML 转换为图像

通过将 HTML 转换为图像,可以捕捉 HTML 内容的外观和布局,并生成静态图像文件。这一技术具有广泛的应用领域,包括生成网站预览、创建屏幕截图、对网页进行归档、以及将 HTML 内容整合到主要处理图像的应用程序中。本文将介绍在 Python 环境中利用 Spire.Doc for Python将 HTML 文件或 HTML 字符串转换为图像的方法。

安装 Spire.Doc for Python

本教程需要用到 Spire.Doc for Python 和 plum-dispatch v1.7.4。可以通过以下 pip 命令将它们轻松安装到 Windows 中。

pip install Spire.Doc

如果您不确定如何安装,请参考:如何在 Windows 中安装 Spire.Doc for Python

用 Python 将 HTML 文件转换为图像

在使用 Document.LoadFromFile() 方法将 HTML 文件加载为 Document 对象时,该方法会自动将其内容呈现为 Word 文档的形式。然后,开发者可以使用 Document.SaveImageToStreams() 方法将指定页面保存为图像流并写入图像文件。

以下是使用 Python 将 HTML 文件转换为图像的操作步骤:

  • Python
from spire.doc import Document
from spire.doc import FileFormat
from spire.doc import XHTMLValidationType
from spire.doc import ImageType

# 创建Document类的对象
doc = Document()

# 载入HTML文件
doc.LoadFromFile("G:/文档/示例22.html", FileFormat.Html, XHTMLValidationType.none)

# 将文档第二页保存为图像
imageStream = doc.SaveImageToStreams(0, ImageType.Bitmap)

# 将图像写入PNG文件
with open("output/HTML转图像.png", "wb") as imageFile:
    imageFile.write(imageStream.ToArray())

doc.Close()

Python 将 HTML 转换为图像

用 Python 将 HTML 字符串转换为图像

使用 Paragraph.AppendHTML() 方法可以将简单的 HTML 字符串(通常是文本、链接及其格式)呈现为 Word 文档内容,然后再使用 Document.SaveImageToStreams() 方法将其转换为图像流并写入文件,即可完成 HTML 字符串到图像的转换。

以下是在 Python 程序中将 HTML 字符串转换为图像的操作步骤:

  • Python
from spire.doc import Document
from spire.doc import ImageType

# 创建Document类的对象
doc = Document()

# 添加一个节到文档
sec = doc.AddSection()

# 添加一个段落到节
par = sec.AddParagraph()

# 指定HTML字符串
htmlString = """
<html>
<head>
    <title>旅游统计信息</title>
    <style>
        h1 {
            color: blue;
            font-family: Arial, sans-serif;
        }

        p {
            color: green;
            font-family: Verdana, sans-serif;
        }

        ul {
            color: red;
            font-family: "Courier New", monospace;
        }

        ol {
            color: purple;
            font-family: "Times New Roman", serif;
        }

        table {
            border-collapse: collapse;
            width: 100%;
        }

        th, td {
            border: 1px solid black;
            padding: 8px;
            text-align: left;
            font-family: Arial, sans-serif;
        }

        th {
            background-color: #f2f2f2;
        }
    </style>
</head>
<body>
    <h1>旅游统计信息</h1>
    <p>以下是一些旅游方面的统计信息:</p>
    
    <h2>热门旅游目的地</h2>
    <ul>
        <li>巴黎</li>
        <li>罗马</li>
        <li>东京</li>
        <li>纽约</li>
    </ul>
    
    <h2>旅游收入排行榜</h2>
    <table>
        <tr>
            <th>国家</th>
            <th>收入(亿美元)</th>
        </tr>
        <tr>
            <td>法国</td>
            <td>79.5</td>
        </tr>
        <tr>
            <td>美国</td>
            <td>76.9</td>
        </tr>
        <tr>
            <td>西班牙</td>
            <td>67.7</td>
        </tr>
        <tr>
            <td>意大利</td>
            <td>58.3</td>
        </tr>
    </table>
    
    <a href="https://www.example.com">点击这里访问示例网站</a>
</body>
</html>
"""

# 将HTML字符串所展示的内容插入到段落中
par.AppendHTML(htmlString)

# 将文档第一页转换为图像
imageStream = doc.SaveImageToStreams(0, ImageType.Bitmap)

# 将图像写入PNG文件
with open("output/HTML字符串转图像.png", "wb") as imageFile:
    imageFile.write(imageStream.ToArray())

doc.Close()

Python 将 HTML 转换为图像

申请临时 License

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。

Java
Spire.PDF for Java
文档操作
Java 设置 PDF 文档自定义属性
Java 复制 PDF 文档
Java 隐藏/显示 PDF 图层
Java 创建 PDF 文件包(Portfolio)
Java 如何提取 PDF 文件包(Portfolio)中的文件
Java 判断 PDF 文档是否为 PDF 文件包(Portfolio)
Java 更改 PDF 版本
Java 创建多栏 PDF
Java 获取或设置 PDF 文档的属性
Java 拆分 PDF 页面
Java 将 PDF 拆分为多个 PDF 文件
Java 合并 PDF 文件:完整合并、指定页面合并与流合并
Java 设置 PDF 浏览偏好
Java 在 PDF 文档中添加或删除页面
Java PDF 压缩教程:高效减小 PDF 文件大小
Java 创建带标签的 PDF 文档
通过 Java 生成 PDF 文件:从零创建、模板填充到 HTML 导出
Java 添加、隐藏或删除 PDF 图层
Java 比较 PDF 文档
Java 读取 PDF:提取文本、图片和表格
如何在 Java 中通过模板生成 PDF
在 Java 快速解析 PDF:文本、表格、图像与元数据
在 Java 中修改或编辑 PDF 文件:附实用代码示例
页面设置
Java 在 PDF 中添加有序和无序列表
Java 设置 PDF 的页边距,页面大小以及纸张方向
Java 添加编号列表和项目符号列表到 PDF
Java 添加页面跳转按钮到 PDF
Java 判断 PDF 页面方向
Java 合并 PDF 页面
Java 获取 PDF 页面大小
Java 设置 PDF 页面显示设置和缩放比例
Java 在 PDF 中创建多级列表
Java 重新排列 PDF 页面顺序
Java 调整现有 PDF 文档的边距
Java 更改 PDF 页面大小
Java 添加页码到 PDF 文档
Java 查找并删除 PDF 中的空白页面
Java 旋转 PDF 页面
Java 拆分 PDF 页面
Java 为 PDF 文档设置背景色或背景图片
Java 获取 PDF 文档页数
Java 裁剪 PDF 页面
Java 填充 PDF 表单域
Java 将 PDF 表单域设置为只读
Java 检测 PDF 文档中的必填域
Java 给 PDF 文档添加目录
Java 在 PDF 中添加工具提示
Java 在 PDF 文档中创建、填写或删除可填写表单域
Java 读取 PDF 表单域的值
Java 导入和导出 PDF 表单数据
文档转换
Java 将 PDF 转为 HTML 时保存到流
Java SVG 转 PDF,添加 SVG 图片到 PDF
Java 转换图片到 PDF
Linux 系统下使用 Java 和 Spire 组件转换文档时,结果文档乱码或字体缺失错误的处理方法
Java 将 PDF 转为 OFD
Java 将 PDF 转为 PDF/A
Java 将 PDF 转为 TIFF
Java 将 Tiff 转为 PDF
Java 将 HTML 转换为 PDF – URL、 HTML 字符串及文件
Java 将 PDF 转为灰度
Java 将 PDF 转换为图片(支持 PNG/JPEG/TIFF/SVG 等格式)
Java 将 PDF 转为 SVG
Java 将 OFD 转换为 PDF
Java 将文本文件 TXT 转换为 PDF
Java 将 PDF 转为线性 PDF
Java 将 PDF 转为 Excel
Java 将 PDF 转换为 PowerPoint 演示文稿
Java 将 PDF 转为 HTML
Java 将 PDF 转为 Word
Java 将 PDF 转换为 JPEG 或 PNG
如何在 Java 中将 PDF 转换为 CSV(轻松提取 PDF 表格)
Java 将 Byte 数组转换为 PDF(加载或生成)
文本
Java 设置 PDF 中文字对齐方式 【完整示例解析】
Java 设置 PDF 文本倾斜、旋转
Java 在 PDF 中绘制上标文本和下标文本
Java 设置 PDF 文档中文字的字体颜色
Java 在 PDF 中查找替换文本
Java 在 PDF 中查找并高亮文本
Java 提取 PDF 文本教程:支持文本型和扫描型 PDF(附完整代码)
图片和图形
Java 在 PDF 中添加形状
Java 删除 PDF 中的图片
Java 添加 PDF 专色文本和专色图形
Java 替换 PDF 文档中的图片
Java 添加虚线和实线到 PDF 文档
Java 设置 PDF 文档中的图片透明度
Java 获取 PDF 中图片的坐标信息
Java 在 PDF 中插入、替换或删除图像
Java 提取,压缩 PDF 文档中的图片
Java 提取 PDF 图片教程:高质量提取与图片过滤技巧
安全
Java 验证 PDF 数字签名的有效性
Java PDF 添加数字签名
Java 在 PDF 中添加骑缝章
Java 获取 PDF 中的数字签名信息
Java 删除 PDF 中的数字签名
Java 添加时间戳数字签名到 PDF
Java 验证 PDF 是否为加密文档
Java 加密或解密 PDF 文档
Java 验证或提取 PDF 中的数字签名
水印
Java 设置 PDF 平铺图片背景(水印)
在 Java 中向 PDF 添加水印:文本、图像和自定义样式
Java 插入图片水印到 PDF 文档
Java 添加和移除 PDF 文档中的水印印章
表格
Java 创建并格式化 PDF 表格
Java 使用 PdfTable 类创建并设置表格样式
Java 设置 PDF 跨页表格重复显示表头行
Java 提取 PDF 中的表格
Java 将表格数据从 PDF 导出到 Excel
页眉和页脚
Java 添加页眉页脚到 PDF
Java 添加不同页眉到 PDF 文档
Java 给现有的 PDF 文档添加页眉页脚
字体
Java 在 PDF 中应用不同的字体
打印
Java 制作 PDF 打印小册子
Java 打印 PDF 文档
附件
Java PDF 删除附件
Java 添加或删除 PDF 中的附件
Java 从 PDF 文档中提取附件
超链接
Java 添加链接到 PDF
Java 更新和删除 PDF 中的超链接
注释和动作
Java 添加动态图章到 PDF
Java 添加图片图章到 PDF
Java 在 PDF 中添加标注(Annotation)
Java 为 PDF 文档设置过期日期
Java 添加导航按钮到 PDF 文档
Java 删除 PDF 中的注释
Java 在 PDF 中添加注释
Java 添加动作到 PDF 文档
条形码
Java 在 PDF 中添加条形码
Java 添加二维码到 PDF 文档
Java 在 PDF 中添加条形码或二维码
书签
Java 修改 PDF 书签
Java 读取 PDF 中的书签
Java 删除 PDF 书签
Java 设置打开 PDF 文档时展开或折叠书签
Java 在 PDF 中添加、编辑或删除书签
列表
Java 在 PDF 文档中创建列表
Spire.PDF for Java 中文教程
Spire.Doc for Java
文档转换
使用 Java 将 Word 转换为 PDF:基础步骤 + 完整示例代码
Java 转换 Word 到图片时设置图片的分辨率
Linux 系统下 Java 转换 Word 到 PDF 时,结果文档乱码的处理方法
Java 将 Excel 数据保存为 Word 表格
Java 实现 Word 文档转换为 TIFF 图片(支持指定节导出)
Java 将 WPS 文字文档转为 PDF
Java 实现 Word 转 HTML:支持文档、节与段落级转换
Java 将 Word 转为 OFD
Java 将 XML 转为 PDF
Java 将 HTML 转为 XML
Java 将 HTML 转为 XPS
Java 将 Word 转为 XML 和 XML 转为 Word 的方法
Java 将 Word 文档转换为 XPS、XML、RTF、TXT 格式
Java 将 Word 转为 Excel
Java 将 Word 文档转换为加密 PDF
Java 将 Markdown 转换为 Word 和 PDF
Java 将 RTF 转换为 HTML、图片
Java 将 HTML 转换为图片
将 HTML 转换为 PDF | 简单快速的 Java 教程
Java 实现 HTML 转 Word 自动化 - 教程与代码示例
用 Java 实现 TXT 文本与 Word 互转:完整教程
如何使用 Java 将 RTF 文件转换为 PDF:全面教程
文档操作
从零开始创建 Word | 专业 Java 实践指南
Java 启用 Word 修订功能,接受/拒绝修订
Java 给 Word 文档添加内容控件
Java 添加 OLE 到 Word 文档
Java 复制 Word 文档
Java 添加、计数、检索和删除 Word 文档变量
Java 使用象征符号在 Word 中绘制复选框
使用 Java 轻松拆分 Word 文档(图文详解)
Java 添加 Word 数学公式
Java 创建 WPS 文字(Word)文档
使用 Java 准确统计 Word 文档中的字数(图文详解)
Java 在 Word 中嵌入多媒体(视频、音频)文件
Java 加载,操作和保存 WPS 文字文档
Java 获取 Word 中所有修订
Java 合并 Word 文档
Java 从 Word 文档中读取或删除文档属性
Java 在 Word 文档中添加或更改变量
Java 比较 Word 文档
Java 插入分页符和分节符到 Word 文档
Java 添加、插入和删除 Word 文档中的页面
Java 读取 Word 文档中的内容
Java 修改 Word 文档中的内容控件
Java 将一个 Word 文档的内容复制到另一个文档
Java 基于模板生成 Word 文档
在 Java 中解析 HTML:读取文件、抓取 URL 与提取数据
超链接
Java 添加超链接到 Word 文档
Java 修改 Word 超链接
Java 移除 Word 文档中的超链接
Java 查找并导出 Word 文档中的超链接
Java Word 文档中更改超链接颜色或移除超链接下划线
页面背景
Java 复制 Word 水印
Java 给 Word 不同页面设置不同背景
Java Word 文档添加背景颜色或背景图片
Java 给 Word 文档的段落或文本设置背景色
安全
Java 验证 Word 文档的限制编辑密码
Java 判断 Word 文档是否被密码保护
Java 给 Word 添加数字签名
Java Word 文档加密与解密
Java 在 Word 文档中设置或取消编辑限制
Java 在 Word 文档中添加图像印章
文本
轻松高亮 Word 文档中的关键文本 | Java 教程
Java 在 Word 中设置上、下标
Java 用图片替换 Word 文档中的特定文本
Java 在 Word 文档中使用正则表达式匹配文本
Java 给 Word 中的指定文本字符串添加边框
Java 给 Word 字符串添加强调符号(着重号)
Java 在 Word 文档中查找并替换文本
Java 设置 Word 文档字体格式
Java 从 Word 文档中提取文本和图片
Word 文档中如何给文本和段落添加边框 | Java 教程
图片和图形
Java 在 Word 中添加图形
Java 设置 Word 文档图片文字环绕方式
Java 旋转 Word 文档中的图形
Java 获取 Word 中指定图片的位置、大小、环绕方式
Java Word 文档中插入图片
Java 在 Word 文档中添加艺术字
Java 替换 Word 中的图片
页面设置
Java 实现 Word 文档分栏效果
Java 在 Word 中添加行号
Java 设置 Word 行间距和字间距
Java 设置 Word 页面方向和页面大小
Java 将文档属性添加到 Word 文档
Java 设置 Word 文档页边距
Java 添加页码到 Word 文档
Java 给 “多栏” Word 文档的每栏都设置页码
Java 在 Word 文档页面上添加装订线
Java 添加、修改和移除 Word 页面边框
批注
Java 修改或替换 Word 批注
Java 给 Word 指定字符串添加批注
Java 读取 Word 批注中的文本和图片
Java 获取 Word 中指定批注所标记的文字
Java 在 Word 文档中添加、回复或删除批注
Java 提取 Word 文档中的批注
段落
Java 设置 Word 中的段落缩进方式
Java 设置 Word 段落边框
Java 批量删除 Word 中的空白段落
Java 获取 Word 中的标题(目录)
Java 将 ASCII 字符设置为 Word 列表符号
Java 删除 Word 中的指定段落
Java 在 Word 中隐藏特定段落
Java 提取使用特定样式的 Word 段落
Java 设置 Word 文档中段落的对齐方式
Java Word 中在已有文本上添加项目符号列表或编号列表
Java 从 Word 文档中的现有文本创建项目符号列表或编号列表
Java 设置 Word 文档的段落间距和行间距
书签
Java 替换 Word 书签内容
Java 获取书签文本
Java 给 Word 指定字符串添加书签
如何在 Word 书签位置插入文本、图片和表格(Java 示例)
Java 在 Word 中添加或删除书签
表格
Java 合并、拆分 Word 表格中的单元格
Java 添加 Word 嵌套表格
Java 设置 Word 表格禁止跨页断行
Java 添加图片到 Word 表格
Java 操作 Word 表格:从复制单行、单列到整表的完整教程
Java 添加 Word 表格行或列
Java Word 表格设置样式和边框
Java 删除 Word 表格和 Word 表格内容
Java Word 表格自适应列宽
Java 设置 Word 表格的水平对齐方式
Java 读取 Word 表格中的文本和图片
Java 创建 Word 表格
Java 设置 Word 表格列宽
Java 添加、修改和移除 Word 表格边框
Java 提取 Word 文档中的表格
页眉和页脚
Java 设置 Word 奇偶页、首页页眉页脚不同
Java 添加表格到 Word 页眉
Java 复制 Word 中的页眉页脚
Java 调整 Word 页眉页脚的位置高度
Java Word 文档中插入页眉和页脚
Java 删除 Word 文档中的页眉页脚
表单域
Java 删除 Word 目录
Java 在 Word 中创建可填充表单
Java 在 Word 文档中创建目录
Java 给新建的 Word 文档创建目录
打印
Java 打印 Word 文档
Java 使用新方法打印 Word 文档
脚注和尾注
Java Word 中插入或删除脚注
Java 删除 Word 文档中的脚注
Java 读取 Word 中的脚注、尾注
文本框
Java 添加表格到 Word 文本框
Java 获取和删除 Word 文本框中的表格
Java 读取 Word 文本框中的文本/图片/表格
Java 设置 Word 文本框中的文字旋转方向
Java Word 文档中添加或删除文本框
字体
Java Word 转换 PDF 时嵌入非安装字体
Java 更改 Word 文档中段落文本的字体颜色
Java 在 Word 中更改字体颜色
Java 获取或替换 Word 文档中的字体
邮件合并
Java 创建 Word 邮件合并模板并合并文本
Java 在 Word 中邮件合并图片
水印
Java 添加多行文字水印到 Word 文档
Java 添加 Word 水印时,移除段落、文本域、表格和文本框中的背景色
Java 添加多行图片水印到 Word 文档
Java 移除 Word 文档中的水印
<