Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
本文解释了如何使用 C# 将各种其他类型的文件格式转换为 PDF。它涵盖以下主题。
以下代码片段也适用于 Aspose.PDF.Drawing 库。
格式:EPUB
格式:Markdown
格式:MD
格式:PCL
格式:文本
格式:TXT
格式:纯文本
格式:预格式化 TXT
格式:预文本
格式:XPS
Aspose.PDF for .NET 允许您简单地将 EPUB 文件转换为 PDF 格式。
EPUB(电子出版物的缩写)是国际数字出版论坛(IDPF)发布的免费开放电子书标准。文件扩展名为 .epub。EPUB 旨在用于可重排内容,这意味着 EPUB 阅读器可以针对特定显示设备优化文本。
EPUB 还支持固定布局内容。该格式旨在作为出版商和转换公司可以在内部使用的单一格式,以及用于分发和销售。它取代了开放电子书标准。EPUB 3 版本也得到了图书行业研究小组(BISG)的支持,BISG 是一个领先的图书贸易协会,致力于标准化最佳实践、研究、信息和活动,以便内容的打包。
接下来的代码片段向您展示了如何使用 C# 将 EPUB 文件转换为 PDF 格式。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertEPUBtoPDF()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Convert options
var options = new Aspose.Pdf.EpubLoadOptions();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "EPUBToPDF.epub", options))
{
// Save PDF document
document.Save(dataDir + "ConvertEPUBtoPDF_out.pdf");
}
}
您还可以为转换设置页面大小。要定义新的页面大小,您需要 SizeF
对象并将其传递给 EpubLoadOptions 构造函数。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertEPUBtoPDFAdv()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Convert options
var options = new Aspose.Pdf.EpubLoadOptions(new SizeF(1190, 1684));
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "EPUBToPDF.epub", options))
{
// Save PDF document
document.Save(dataDir + "ConvertEPUBtoPDFAdv_out.pdf");
}
}
此功能支持版本 19.6 或更高版本。
Aspose.PDF for .NET 提供了基于输入 Markdown 数据文件创建 PDF 文档的功能。为了将 Markdown 转换为 PDF,您需要使用 MdLoadOptions 初始化 Document。
以下代码片段展示了如何使用 Aspose.PDF 库实现此功能:
步骤: 在 C# 中将 Markdown 转换为 PDF | 步骤: 在 C# 中将 MD 转换为 PDF
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertMarkdownToPDF()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Convert options
var options = new Aspose.Pdf.MdLoadOptions();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "sample.md", options))
{
// Save PDF document
document.Save(dataDir + "ConvertMarkdownToPDF_out.pdf");
}
}
PCL(打印机命令语言)是惠普开发的一种打印机语言,用于访问标准打印机功能。PCL 1 到 5e/5c 是基于命令的语言,使用控制序列,这些序列按接收顺序处理和解释。在消费者层面,PCL 数据流由打印驱动程序生成。PCL 输出也可以通过自定义应用程序轻松生成。
目前仅支持 PCL5 及更早版本
命令集 | 支持 | 异常 | 描述 |
---|---|---|---|
作业控制命令 | + | 双面打印模式 | 控制打印过程:副本数量、输出箱、单面/双面打印、左侧和顶部偏移等。 |
页面控制命令 | + | 穿孔跳过命令 | 指定页面大小、边距、页面方向、行间距、字符间距等。 |
光标定位命令 | + | 指定光标位置,从而确定文本、光栅或矢量图像及其细节的起点。 | |
字体选择命令 | + |
|
允许从 PCL 文件加载软(嵌入)字体并在内存中管理它们。 |
光栅图形命令 | + | 仅支持黑白 |
允许从 PCL 文件加载光栅图像到内存,指定光栅参数。 例如宽度、高度、压缩类型、分辨率等。 |
颜色命令 | + | 允许为所有可打印对象上色。 | |
打印模型命令 | + |
允许使用光栅预定义和用户定义的模式填充文本、光栅图像和矩形区域,指定模式和源光栅图像的透明度模式。 预定义模式包括阴影、交叉阴影和阴影模式。 |
|
矩形区域填充命令 | + | 允许创建和填充带有模式的矩形区域。 | |
HP-GL/2 矢量图形命令 | + | 屏幕矢量命令(SV)、透明模式命令(TR)、透明数据命令(TD)、RO(旋转坐标系统)、可缩放或位图字体命令(SB)、字符倾斜命令(SL)和额外空间(ES)未实现,DV(定义可变文本路径)命令在测试版中实现。 |
允许从 PCL 文件加载 HP-GL/2 矢量图像到内存。矢量图像的原点位于可打印区域的左下角,可以缩放、平移、旋转和裁剪。 矢量图像可以包含文本(如标签)和几何图形,如矩形、圆、椭圆、线、弧、贝塞尔曲线和由简单图形组成的复杂图形。 闭合图形(包括标签字母)可以用实心填充或矢量模式填充。 模式可以是阴影、交叉阴影、阴影、光栅用户定义、PCL 阴影或交叉阴影和 PCL 用户定义。PCL 模式是光栅的。标签可以单独旋转、缩放,并朝四个方向(上、下、左、右)排列。左和右方向涉及逐个字母排列。上下方向涉及上下排列字母。 |
宏 | ― | 允许将一系列 PCL 命令加载到内存中并多次使用该序列,例如,用于打印页面标题或为一组页面设置格式。 | |
Unicode 文本 | ― | 允许打印非 ASCII 字符。由于缺乏包含 Unicode 文本的示例文件,因此未实现。 | |
PCL6 (PCL-XL) |
由于缺乏测试文件,仅在测试版中实现。嵌入字体也不受支持。 JetReady 扩展不受支持,因为无法获得 JetReady 规范。 |
二进制文件格式。 |
为了允许从 PCL 转换为 PDF,Aspose.PDF 提供了 PclLoadOptions
类,用于初始化 LoadOptions 对象。随后,该对象在 Document 对象初始化时作为参数传递,帮助 PDF 渲染引擎确定源文档的输入格式。
以下代码片段展示了将 PCL 文件转换为 PDF 格式的过程。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPCLtoPDF()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Convert options
var options = new Aspose.Pdf.PclLoadOptions();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "ConvertPCLtoPDF.pcl", options))
{
// Save PDF document
document.Save(dataDir + "ConvertPCLtoPDF_out.pdf");
}
}
您还可以监控转换过程中的错误检测。为此,您需要配置 PclLoadOptions 对象:设置或取消设置 SupressErrors。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPCLtoPDFAdvanced()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Convert options
var options = new Aspose.Pdf.PclLoadOptions { SupressErrors = true };
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "ConvertPCLtoPDFAdvanced.pcl", options))
{
if (options.Exceptions != null)
{
foreach (var ex in options.Exceptions)
{
Console.WriteLine(ex.Message);
}
}
// Save PDF document
document.Save(dataDir + "ConvertPCLtoPDFAdvanced_out.pdf");
}
}
Aspose.PDF for .NET 支持将纯文本和预格式化文本文件转换为 PDF 格式的功能。
将文本转换为 PDF 意味着将文本片段添加到 PDF 页面。对于文本文件,我们处理两种类型的文本:预格式化(例如,每行 80 个字符的 25 行)和非格式化文本(纯文本)。根据我们的需要,我们可以自行控制此添加,或将其委托给库的算法。
在纯文本文件的情况下,我们可以使用以下技术:
步骤: 在 C# 中将文本转换为 PDF | 步骤: 在 C# 中将 TXT 转换为 PDF | 步骤: 在 C# 中将纯文本转换为 PDF
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPlainTextFileToPDF()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Read the source text file
using (var streamReader = new StreamReader(dataDir + "TextToPDFInput.txt"))
{
// // Create PDF document
using (var document = new Aspose.Pdf.Document())
{
// Add page
var page = document.Pages.Add();
// Create an instance of TextFragment and pass the text from reader object to its constructor as argument
var text = new Aspose.Pdf.Text.TextFragment(streamReader.ReadToEnd());
// Add a new text paragraph in paragraphs collection and pass the TextFragment object
page.Paragraphs.Add(text);
// Save PDF document
document.Save(dataDir + "TextToPDF_out.pdf");
}
}
}
将预格式化文本转换为 PDF 类似于纯文本,但您需要进行一些额外操作,例如设置边距、字体类型和大小。显然,字体应该是等宽字体(例如 Courier New)。
按照以下步骤使用 C# 将预格式化文本转换为 PDF:
步骤: 在 C# 中将预文本转换为 PDF | 步骤: 在 C# 中将预格式化 TXT 转换为 PDF
在这种情况下,库的算法也会添加额外页面,但我们可以自行控制此过程。 以下示例展示了如何将预格式化文本文件转换为 PDF 文档,页面大小为 A4。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPreFormattedTextToPdf()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Read the text file as array of string
var lines = File.ReadAllLines(dataDir + "ConvertPreFormattedTextToPdf.txt");
// Create PDF document
using (var document = new Aspose.Pdf.Document())
{
// Add page
var page = document.Pages.Add();
// Set left and right margins for better presentation
page.PageInfo.Margin.Left = 20;
page.PageInfo.Margin.Right = 10;
page.PageInfo.DefaultTextState.Font = Aspose.Pdf.Text.FontRepository.FindFont("Courier New");
page.PageInfo.DefaultTextState.FontSize = 12;
foreach (var line in lines)
{
// check if line contains "form feed" character
// see https://en.wikipedia.org/wiki/Page_break
if (line.StartsWith("\x0c"))
{
page = document.Pages.Add();
page.PageInfo.Margin.Left = 20;
page.PageInfo.Margin.Right = 10;
page.PageInfo.DefaultTextState.Font = Aspose.Pdf.Text.FontRepository.FindFont("Courier New");
page.PageInfo.DefaultTextState.FontSize = 12;
}
else
{
// Create an instance of TextFragment and pass the line to its constructor as argument
var text = new Aspose.Pdf.Text.TextFragment(line);
// Add a new text paragraph in paragraphs collection and pass the TextFragment object
page.Paragraphs.Add(text);
}
}
// Save PDF document
document.Save(dataDir + "PreFormattedTextToPDF_out.pdf");
}
}
Aspose.PDF for .NET 支持将 XPS 文件转换为 PDF 格式的功能。请查看本文以解决您的任务。
XPS 文件类型主要与微软公司的 XML Paper Specification 相关。XML Paper Specification(XPS),以前代号为 Metro,并包含下一代打印路径(NGPP)营销概念,是微软将文档创建和查看集成到其 Windows 操作系统中的倡议。
为了使用 Aspose.PDF for .NET 将 XPS 转换为 PDF,我们引入了一个名为 XpsLoadOption 的类,用于初始化 LoadOptions 对象。随后,该对象在 Document 对象初始化时作为参数传递,帮助 PDF 渲染引擎确定源文档的输入格式。
以下代码片段展示了将 XPS 文件转换为 PDF 格式的过程。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertXPSToPDF()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Instantiate Options object
var options = new Aspose.Pdf.XpsLoadOptions();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "XPSToPDF.xps", options))
{
// Save PDF document
document.Save(dataDir + "ConvertXPSToPDF_out.pdf");
}
}
Aspose.PDF for .NET 支持将 PostScript 文件转换为 PDF 格式的功能。Aspose.PDF 的一项功能是您可以在转换过程中设置一组字体文件夹。
为了将 PostScript 文件转换为 PDF 格式,Aspose.PDF for .NET 提供了 PsLoadOptions 类,用于初始化 LoadOptions 对象。随后,该对象可以作为参数传递给 Document 对象构造函数,这将帮助 PDF 渲染引擎确定源文档的格式。
以下代码片段可用于将 PostScript 文件转换为 PDF 格式:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPostScriptToPDF()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Convert options
var options = new PsLoadOptions();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "ConvertPostscriptInput.ps", options))
{
// Save PDF document
document.Save(dataDir + "PSToPDF_out.pdf");
}
}
此外,您可以设置一组在转换过程中使用的字体文件夹:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPostscriptToPDFAdvanced()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Convert options with custom font folders
var options = new Aspose.Pdf.PsLoadOptions
{
FontsFolders = new[] { dataDir + @"\fonts1", dataDir + @"\fonts2" }
};
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "ConvertPostscriptInput.ps", options))
{
// Save PDF document
document.Save(dataDir + "ConvertPostscriptToPDFAdvanced_out.pdf");
}
}
XML 格式用于存储结构化数据。可以通过几种方式将 XML 转换为 PDF:
将 XSL-FO 文件转换为 PDF 可以使用传统的 Aspose.PDF 技术实现 - 使用 XslFoLoadOptions 实例化 Document 对象。但有时您可能会遇到不正确的文件结构。在这种情况下,XSL-FO 转换器允许设置错误处理策略。您可以选择 ThrowExceptionImmediately
、TryIgnore
或 InvokeCustomHandler
。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void Convert_XSLFO_to_PDF()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Convert options
var options = new Aspose.Pdf.XslFoLoadOptions(dataDir + "XSLFOToPdfInput.xslt");
// Set error handling strategy
options.ParsingErrorsHandlingType = Aspose.Pdf.XslFoLoadOptions.ParsingErrorsHandlingTypes.ThrowExceptionImmediately;
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "XSLFOToPdfInput.xml", options))
{
// Save PDF document
document.Save(dataDir + "XSLFOToPdf_out.pdf");
}
}
LaTeX 文件格式是一种带有标记的文本文件格式,属于 TeX 语言家族的 LaTeX 派生格式,LaTeX 是 TeX 系统的派生格式。LaTeX(ˈleɪtɛk/lay-tek 或 lah-tek)是一种文档准备系统和文档标记语言。它广泛用于许多领域的科学文档的交流和出版,包括数学、物理和计算机科学。它在准备和出版包含复杂多语言材料的书籍和文章(如梵文和阿拉伯文,包括批判版)方面也发挥着重要作用。LaTeX 使用 TeX 排版程序格式化其输出,并且本身是用 TeX 宏语言编写的。
Aspose.PDF for .NET 支持将 TeX 文件转换为 PDF 格式的功能,为了实现这一要求,Aspose.Pdf 命名空间中有一个名为 LatexLoadOptions 的类,提供加载 LaTex 文件并使用 Document class 渲染输出为 PDF 格式的能力。 以下代码片段展示了使用 C# 将 LaTex 文件转换为 PDF 格式的过程。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertTeXtoPDF()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Convert options
var options = new Aspose.Pdf.TeXLoadOptions();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "samplefile.tex", options))
{
// Save PDF document
document.Save(dataDir + "TeXToPDF_out.pdf");
}
}
OFD 格式指的是“开放固定布局文档”,作为中国的国家标准用于电子文件存储,作为流行 PDF 格式的替代方案。它支持固定布局文档,确保在不同平台上的一致显示。OFD 文件用于各种目的,包括数字文档和商业应用。
Aspose.PDF for .NET 支持将 OFD 文件转换为 PDF 格式的功能,为了实现这一要求,Aspose.Pdf 命名空间中有一个名为 OfdLoadOptions 的类,提供加载 OFD 文件并使用 Document class 渲染输出为 PDF 格式的能力。
以下代码片段展示了使用 C# 将 OFD 文件转换为 PDF 格式的过程。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertOFDToPDF()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Convert options
var options = new Aspose.Pdf.OfdLoadOptions();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "ConvertOFDToPDF.ofd", options))
{
// Save PDF document
document.Save(dataDir + "ConvertOFDToPDF_out.pdf");
}
}
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.