C# 如何为文本设置位置和样式?

C# 如何为文本设置位置和样式?,c#,itextsharp,C#,Itextsharp,我创建了以下方法来将文本放置在文档中所需的位置(基于stackoverflow主题) 我的问题是Basefont不支持粗体、下划线或斜体。那么,设置文本位置并对其应用样式的好方法是什么 感谢阅读和以后的回答。首先,您需要知道字体系列和字体之间的区别 Helvetica是字体系列的一个示例Helvetica(常规)、Helvetica Bold、Helvetica Italic和Helvetica Bold Italic是不同字体的示例 假设您在定义bf时使用了常规的Helvetica,那么您使用

我创建了以下方法来将文本放置在文档中所需的位置(基于stackoverflow主题)

我的问题是Basefont不支持粗体、下划线或斜体。那么,设置文本位置并对其应用样式的好方法是什么


感谢阅读和以后的回答。

首先,您需要知道字体系列和字体之间的区别

Helvetica是字体系列的一个示例Helvetica(常规)Helvetica BoldHelvetica ItalicHelvetica Bold Italic是不同字体的示例

假设您在定义
bf
时使用了常规的Helvetica,那么您使用的是一种特定的字体。如果希望文本为粗体,则需要使用不同的字体,例如使用Helvetica粗体定义的
bf_bold
实例

下划线不是字体的属性。如果要绘制直线,需要使用
moveTo()
lineTo()
stroke()
运算符

所有这些都很难,我很惊讶你竟然想这样做。就好像有人给了你高级手册,故意把手册藏起来给初学者看,只是为了让你受苦


为什么不使用
ColumnText
在绝对位置绘制具有不同样式的文本?你在哪里找到了你问题中的片段,为什么你没有看?如果你害怕看Java代码,你也可以找到示例的C#端口。

请不要在问题标题中重复标记。我终于找到了我想要做的事情,但我相信你说这是一条艰难的道路。我的最后期限很短,恐慌让我无法以标准方式学习IText(我搜索我想要的示例并进行调整)。但是非常感谢你的回答
PdfContentByte cb = _pdfWriter.DirectContent;
            BaseFont bf = BaseFont.CreateFont();
            cb.BeginText();
            cb.SetFontAndSize(bf, size);
            cb.SetTextMatrix(x, y);
            cb.ShowText(text);
            cb.Stroke();
            cb.EndText();