向 PS 文件添加文本
处理 PS 文件文本的 C# .NET API 解决方案
使用 PostScript 文件中的字体有一些需要理解的特性。这里有几个要点:
PostScript 文件中使用的字体可以嵌入在文件中,也可以从外部引用。在不同系统上打开文件时,嵌入字体将可用,但它们会增加文件大小。无论用于渲染文本的初始字体如何 Aspose .Page 的 PsDocument 嵌入了初始字体的截断版本,其中仅添加了文档中使用的字形。因此嵌入字体的体积可以明显小于初始字体之一。特别是对于像 Times New Roman 这样的多语言字体来说这是公平的 、Courier、Arial 等。默认情况下,Aspose.Page 始终嵌入字体,但如果您只想引用它们,则需要将 PsSaveOption 中的 EmbedFonts 属性设置为 false。
PostScript 支持大量字体,包括轮廓和位图、Adobe Type0(复合)、Type1、Type3、Type14 (CFF)、Type42 (True Type) 和 CID-Keyed。但是,为了简化,Aspose.Page 的 PsDocument 仅接受 True Type、Open Type 和 CFF 字体(有限制),因为这些字体类型是最流行且非常相似的。对于简单字体,PostScript 只能渲染 ASCII 范围 (0-255) 内的字符。因此,如果渲染 文本包含编码超过 255 个的字符,Aspose.Page 始终创建复合 (Type0) 字体,其中它将简单字体(例如 Type 42)与 CMAP 对象连接起来,将字符代码映射到字形 ID。
在 PostScript 中处理文本时,必须确保 PostScript 解释器或打印机可以使用和访问必要的字体文件,以便打印结果看起来不错。
PostScript 中的字体渲染质量可能会有所不同,具体取决于用于解释文件的输出设备或软件。因此,不要忘记在不同的设备和打印机上测试文件,以确保一致且准确的字体显示。
了解这些方面有助于确保在基于 PostScript 的工作流程中正确使用字体和一致呈现。但无论如何,Aspose.Page 为您提供了轻松管理PS 文件字体的功能。使用此 API,您可以使用自定义或系统字体添加不同颜色的文本和画笔。了解更多关于 如何处理 PS 文件 和 如何处理 PS 文件的文本 特别是遵循文档。
要将文本插入 PS 文档,我们需要:
Aspose.Page for .NET API 是一个功能丰富、功能强大且易于使用的 C# 平台文档操作和转换 API。
打开 NuGet 包管理器,搜索 Aspose.Page 并安装。您也可以从包管理器控制台使用以下命令。
Package Manager Console Command
PM> Install-Package Aspose.Page
将文本添加到 PS 文件的步骤 C#。
下面的代码片段演示了如何使用 C# 中的 Aspose.Page 库将使用 Unicode 字符串的文本添加到 PostScript (PS) 文档。要查看示例的更完整版本和更多示例,请转到 Aspose.Page-for-.NET GitHub 项目 。
- 使用包含文档的目录路径初始化 dataDir 变量。
- 将变量 FONTS_FOLDER 设置为包含必要字体的文件夹的路径。
- 使用 FileStream 类为 PostScript 文档创建输出流。
- 使用 PsSaveOptions 对象指定 PostScript 文档的保存选项。
- 选项对象的 AdditionalFontsFolders 属性设置为一个数组,其中包含指向 FONTS_FOLDER 的路径。这允许系统在该文件夹中找到任何需要的字体。
- 指定要添加的文本及其大小。
- 使用输出流、选项和 false 作为参数创建 PsDocument 的新实例。这将使用指定的选项初始化一个新的 PostScript 文档。
- 在文档对象上调用 ClosePage() 方法,表示当前页面完成。
将文本添加到 PS 文件的 C# 代码
using Aspose.Page;
using Aspose.Page.EPS;
using Aspose.Page.EPS.Device;
using Aspose.Page.Font;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.IO;
// Secify the path to the documents directory.
string dataDir = RunExamples.GetDataDir_WorkingWithText();
string FONTS_FOLDER = RunExamples.GetDataDir_Data() + @"necessary_fonts/";
//Create output stream for PostScript document
using (Stream outPsStream = new FileStream(dataDir + "AddTextUsingUnocodeString_outPS.ps", FileMode.Create))
{
//Create save options with A4 size
PsSaveOptions options = new PsSaveOptions();
// Set custom fonts folder. It will be added to system fonts folders for finding needed font.
options.AdditionalFontsFolders = new string[] { FONTS_FOLDER };
//A text to write to PS file
string str = "試してみます。";
int fontSize = 48;
// Create new 1-paged PS Document
PsDocument document = new PsDocument(outPsStream, options, false);
//Close current page
document.ClosePage();
//Save the document
document.Save();
}
常问问题
1. 我可以向 PostScript (PS) 文档添加文本吗?
是的,您可以使用文本绘制运算符和命令将文本添加到 PostScript 文档,其中包括用于指定文本起始位置的moveto
、用于显示文本的show
以及用于设置字体和大小的setfont
。
2. 如何在 PS 文件中添加具有特定格式的文本?
使用setfont
运算符选择所需的字体和大小,并使用其他与文本相关的运算符来调整颜色、样式和对齐等属性。
3. 将文本添加到 PostScript (PS) 文档的最佳实践有哪些?
将文本添加到 PostScript 文档时,必须考虑可读性、对齐方式以及与文档整体设计的一致性。
PS 什么是PS文件格式
PS 格式是页面描述语言 (PDL) 格式之一。它能够在页面上包含图形和文本信息。这就是为什么大多数图像编辑程序都支持该格式的原因。 postscript 文件本身就是对打印机的一种指令。它包含有关从其页面打印什么以及如何打印的信息。