C# Word中设置/更改文本方向

时间:2023-03-08 16:06:42

C# Word中设置/更改文本方向

一般情况下在Word中输入的文字都是横向的,今天给大家分享两种方法来设置/更改一个section内的所有文本的方向及部分文本的方向,有兴趣的朋友可以试下。

首先,从https://visualstudiogallery.msdn.microsoft.com/d3a38f74-3490-42da-bdb0-37fa5acebc36下载免费版.NET Word类库并安装,然后创建一个C# 控制台应用程序,添加引用及命名空间并参考以下步骤。

步骤1创建一个新的Document对象并加载Word文档。

Document document = new Document();
document.LoadFromFile("示例.docx");

步骤2为一个section内的所有文本设置文本方向。

//获取第一个section并为其设置文本方向
Section section = document.Sections[];
section.TextDirection = TextDirection.RightToLeftRotated;

如果要设置部分文本的文本方向,可以将该文本放在table中然后再设置文本方向,如以下步骤:

步骤3添加一个新的section和一个table,获取目标单元格并设置文本方向,然后将文本添加到单元格。

//添加一个新的section到文档
Section sec = document.AddSection();
//添加一个table到该section
Table table = sec.AddTable();
//添加一行和一列到table
table.ResetCells(, );
//获取单元格
TableCell cell = table.Rows[].Cells[];
table.Rows[].Height = ;
table.Rows[].Cells[].Width = ;
//设置单元格的文本方向并添加文本到该单元格
cell.CellFormat.TextDirection = TextDirection.RightToLeftRotated;
cell.AddParagraph().AppendText("你好");

添加一个新的段落来检测以上方法是否会影响该section内的其他文本的文本方向:

sec.AddParagraph().AppendText("新段落");

步骤4保存文档。

document.SaveToFile("文本方向.docx", FileFormat.Docx);

运行结果:

设置一个section内的所有文本的文本方向:

C# Word中设置/更改文本方向

设置部分文本的文本方向:

C# Word中设置/更改文本方向

全部代码:

using Spire.Doc;
using Spire.Doc.Documents; namespace Set_text_direction_in_Word
{
class Program
{
static void Main(string[] args)
{
Document document = new Document();
document.LoadFromFile("示例.docx");
//设置一个section内的所有文本的文本方向
Section section = document.Sections[];
section.TextDirection = TextDirection.RightToLeftRotated; //设置部分文本的文本方向
Section sec = document.AddSection();
Table table = sec.AddTable();
table.ResetCells(, );
TableCell cell = table.Rows[].Cells[];
table.Rows[].Height = ;
table.Rows[].Cells[].Width = ;
cell.CellFormat.TextDirection = TextDirection.RightToLeftRotated; cell.AddParagraph().AppendText("你好"); sec.AddParagraph().AppendText("新段落"); //保存文档
document.SaveToFile("文本方向.docx", FileFormat.Docx);
}
}
}