Word控件Spire.Doc 转换教程(十八): 将 RTF 转换为图像并重置图像分辨率
Spire.Doc具有在 C# 和 VB.NET 中操作 RTF 文件格式的强大能力。通过使用 Spire.Doc,开发人员可以将 RTF 转换为 PDF、HTML和 .doc、.docx 格式的 word 文档。本文将向您展示如何将 RTF 转换为图像,然后重置图像分辨率。
Spire.Doc for.NET 最新下载
下载并安装 Spire.Doc for .NET,然后通过以下路径在下载的 Bin 文件夹中添加 Spire.Doc.dll 作为参考:“..\Spire.Doc\Bin\NET4.0\ Spire.Doc.dll”。下面详细介绍如何在 C# 中将 RTF 转换为 PNG 和重置图像分辨率。
第 1 步:创建一个新文档并从文件加载。
Document doc = new Document();
doc.LoadFromFile("sample.rtf", FileFormat.Rtf);
第 2 步:将 RTF 保存到图像。
Image[] images = doc.SaveToImages(Spire.Doc.Documents.ImageType.Metafile);
第 3 步:遍历图片列表中的元素,保存为.Png格式。
for (int i = 0; i < images.Length; i++)
{
Metafile mf = images[i] as Metafile;
Image newimage = ResetResolution(mf, 200);
string outputfile = String.Format("image-{0}.png", i);
newimage.Save(outputfile, System.Drawing.Imaging.ImageFormat.Png);
}
第 4 步:设置图像分辨率调用方法:ResetResolution。
public static Image ResetResolution(Metafile mf, float resolution)
{
int width = (int)(mf.Width * resolution / mf.HorizontalResolution);
int height = (int)(mf.Height * resolution / mf.VerticalResolution);
Bitmap bmp = new Bitmap(width, height);
bmp.SetResolution(resolution, resolution);
using (Graphics g = Graphics.FromImage(bmp))
{
g.DrawImage(mf, Point.Empty);
}
return bmp;
}
重置图片分辨率前图片的有效截图:
重置图像分辨率后的图像:
完整代码:
using Spire.Doc;
using System.Drawing;
using System.Drawing.Imaging;namespace RTFtoImage
{
class Program
{
static void Main(string[] args)
{
//Create a new document and load from file.
Document doc = new Document();
doc.LoadFromFile("sample.rtf", FileFormat.Rtf);
// save the RTF to image
Image[] images = doc.SaveToImages(Spire.Doc.Documents.ImageType.Metafile);
for (int i = 0; i < images.Length; i++)
{
Metafile mf = images[i] as Metafile;
Image newimage = ResetResolution(mf, 200);
string outputfile = String.Format("image-{0}.png", i);
newimage.Save(outputfile, System.Drawing.Imaging.ImageFormat.Png);
}
}
//set the image resolution by the ResetResolution() method
public static Image ResetResolution(Metafile mf, float resolution)
{
int width = (int)(mf.Width * resolution / mf.HorizontalResolution);
int height = (int)(mf.Height * resolution / mf.VerticalResolution);
Bitmap bmp = new Bitmap(width, height);
bmp.SetResolution(resolution, resolution);
using (Graphics g = Graphics.FromImage(bmp))
{
g.DrawImage(mf, Point.Empty);
}
return bmp;
}
}
}
欢迎下载|体验更多E-iceblue产品
Word控件Spire.Doc 转换教程(十八): 将 RTF 转换为图像并重置图像分辨率相关推荐
- Word控件Spire.Doc 转换教程(十二):如何将 Word 转换为 EPub、XPS、Emf
本文将介绍一种通过名为 Spire.Doc 的强大且独立的Word .NET 组件将 Word 转换为 EPub.XPS.Emf的简单方法,无需在机器上安装 Microsoft Word.它还支持将 ...
- Word控件Spire.Doc 转换教程(十五):在 C# 中将 HTML 文件转换为 PDF 和 XPS
HTML 文件广泛用于收集数据,出于安全,我们需要将其转换为 PDF 和 XPS 格式的可打印文档.您可以使用Spire.PDF轻松地将 URL 中的 HTML 页面转换为高质量的 PDF.本文将重点 ...
- Word控件Spire.Doc 转换教程(十三):在word文档和HTML中嵌入图像支持
将 Word 文档转换为 HTML 很流行,并被程序员和开发人员广泛使用.借助Spire.Doc for .NET这个专业的word组件,无需安装MS Word,开发者只需两行C#关键代码即可将wor ...
- Word控件Spire.Doc 转换教程(十一):如何将 HTML 转换为图像
Spire.Doc 可以帮助用户使用 C#/VB.NET 将HTML 转换为 Image.该解决方案使用户可以随时随地通过手机.MP4播放器.PSP.iPad.iTouch等便携式设备阅读HTML.按 ...
- Word控件Spire.Doc 转换教程(二十五):在 C#、VB.NET 中将 ODT 转换为 DOC
具有 .ODT 文件扩展名的文件是 OpenDocument 文本文档文件.这些文件通常由免费的 OpenOffice Writer 文字处理器程序创建.ODT 文件类似于与 Microsoft Wo ...
- Word控件Spire.Doc 转换教程(二十八):将 Word 转换为 PCL
PCL 文件是以打印机命令语言(通常称为 PCL)页面描述语言创建的数字打印文档.从v7.1.19 开始,Spire.Doc 支持将 word 文档转换为 PCL.PCL文件的标准有很多种:这里的 P ...
- Word控件Spire.Doc 转换教程(二十六):在 C#、VB.NET 中将 Word 转换为 EPUB 时添加封面图片
我们之前介绍如何将 Word 转换为 EPUB的文档.但是,在从 Word 文档创建 EPUB 图书时,您可能希望将封面图像添加到 EPUB.以下代码片段将演示相同的内容. Spire.Doc for ...
- Word控件Spire.Doc 转换教程(二十三):保留或禁用从 Word 到 PDF 转换的超链接
超链接为读者提供了更多的附加信息,它被广泛用于我们的 word 文档.Spire.Doc 具有强大的超链接文字元素操作功能.开发者可以在word文档中添加.修改和删除超链接.Spire.Doc for ...
- Word控件Spire.Doc 转换教程(九):在 Doc 转PDF 转换期间设置图像质量
您可能会好奇为什么我们在将Doc 转换为 PDF时设置图像质量.在我们转换Word文档后,尤其是文档中有很多图像,输出的PDF文档的大小明显大于原始的Doc文件.现在,Spire.Doc 新版本的新功 ...
最新文章
- SAP PM 初级系列17 - 维修工单相关的Task List
- Enumerator a Composite Structure
- pb 窗口数据修改sql_大数据hadoop,数据中台选型你应该看到这些分布式数据库
- 论文阅读丨神经清洁: 神经网络中的后门攻击识别与缓解
- 网页Object标签 遮盖DIV标签解决方法
- Java基础学习总结(119)——Java8 JVM与Java7 JVM比较
- KeyMob手机聚合平台已集成多家移动广告平台
- 洛谷 P2488 [SDOI2011]工作安排
- 重定向与请求转发的区别
- apache2: unrecognized service
- MDUI中Select初始化问题
- 【mmdetection3d】——3D 目标检测 KITTI 数据集
- 安卓Toast显示流程分析
- js找出两个数组中的重复项
- Linux内核 之 GDT LDT与分段
- pyraformer: low-complexity pyramidal attention for long-range time series modeling and forecasting
- 5月末跟大家讲讲webpack(生日篇)
- Jenkins安装插件报错解决方法
- 真是没有预料到,一款推送全国公考信息的app开发用了一年时间
- 电子邮件服务器的ip地址_可用的不同类型的IP地址
热门文章
- Win10离线安装.NET Framework 3.5的方法技巧(附离线安装包下载)
- CentOS安装配置tomcat
- Keras之model.fit_generator()的使用
- c语言程序设计分值,计算机考试题分值分布
- NOIP学习之循环控制:26.质因数分解
- 超详细Python爬虫自学整理从基础内容开始到进阶(不断更新)(Anaconda中的Spyder)
- C++实现大数加减法
- 从0开始搭建深度学习环境-Pytorch-GPU
- 个人喜欢的歌曲——女生篇
- Zerotier 搭建moon