C#设置Word文本框中改变文字方向的方法

 更新时间:2021年06月24日 09:04:54   作者:E-iceblue  
在Word中可插入文本框,默认情况下插入的文本框中的文字方向为横向排列,对于一些特殊文档的设计要求,需要改变文字方向,本文就详细的介绍一下使用,感兴趣的可以了解一下

在Word中可插入文本框,默认情况下插入的文本框中的文字方向为横向排列,对于一些特殊文档的设计要求,需要改变文字方向,如本次测试中的文档排版为考生试卷类型,考生信息栏的内容为下图中的这种,

本文将以C#程序代码为例,展示如何来实现这种排版。另附VB.NET代码供参考。

测试程序环境如下:

  • Visual Studio 2017
  • .net framework 4.8
  • Free spire.doc.dll 7.11
  • 测试word文档:.docx2013

关于dll安装:在程序中通过nuget搜索Free Spire.Doc安装即可。

设置文字方向时,可支持多种方式,如图:

本次需要实现的目标格式使用LeftToRight类型即可,如需设置竖排显示则选择LeftToRightRotated类型,其他文字旋转类型同理。

C#

using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
using System.Drawing;

namespace SetTextDirection
{
    class Program
    {
        static void Main(string[] args)
        {
            //实例化document对象
            Document doc = new Document();

            //添加一个section
            Section section = doc.AddSection();

            //设置页面边距
            section.PageSetup.Margins.Left = 90;
            section.PageSetup.Margins.Right = 90;
            Paragraph paragraph = section.AddParagraph();

            //添加第一个文本框
            TextBox textBox1 = paragraph.AppendTextBox(section.PageSetup.Margins.Left - 20, section.PageSetup.PageSize.Height + 20);

            //设置文本框为固定定位
            textBox1.Format.HorizontalOrigin = HorizontalOrigin.Page;
            textBox1.Format.HorizontalPosition = 0;
            textBox1.Format.VerticalPosition = -10f;
            textBox1.Format.VerticalOrigin = VerticalOrigin.Page;

            //设置文字旋转方向
            textBox1.Format.TextAnchor = ShapeVerticalAlignment.Center;
            textBox1.Format.LayoutFlowAlt = TextDirection.LeftToRight;//旋转文字方向
            //textBox1.Format.LayoutFlowAlt = TextDirection.LeftToRightRotated;//竖排显示       

            //添加文字并设置字体
            Paragraph textboxPara1 = textBox1.Body.AddParagraph();
            TextRange txtrg = textboxPara1.AppendText("姓名______________学号______________班级______________");
            txtrg.CharacterFormat.FontName = "等线";
            txtrg.CharacterFormat.FontSize = 10;
            txtrg.CharacterFormat.TextColor = Color.Black;
            textboxPara1.Format.HorizontalAlignment = HorizontalAlignment.Center;

            //保存文档
            doc.SaveToFile("Result.docx",FileFormat.Docx2013);
            System.Diagnostics.Process.Start("Result.docx");
        }
    }
}

VB.NET

Imports Spire.Doc
Imports Spire.Doc.Documents
Imports Spire.Doc.Fields
Imports System.Drawing

Namespace SetTextDirection
         Class Program
                   Private Shared Sub Main(args As String())
                            '实例化document对象
                            Dim doc As New Document()

                            '添加一个section
                            Dim section As Section = doc.AddSection()

                            '设置页面边距
                            section.PageSetup.Margins.Left = 90
                            section.PageSetup.Margins.Right = 90
                            Dim paragraph As Paragraph = section.AddParagraph()


                            '添加第一个文本框
                            Dim textBox1 As TextBox = paragraph.AppendTextBox(section.PageSetup.Margins.Left - 20, section.PageSetup.PageSize.Height + 20)

                            '设置文本框为固定定位
                            textBox1.Format.HorizontalOrigin = HorizontalOrigin.Page
                            textBox1.Format.HorizontalPosition = 0
                            textBox1.Format.VerticalPosition = -10F
                            textBox1.Format.VerticalOrigin = VerticalOrigin.Page


                            '设置文字旋转方向
                            textBox1.Format.TextAnchor = ShapeVerticalAlignment.Center
                            textBox1.Format.LayoutFlowAlt = TextDirection.LeftToRight'旋转文字方向
                            'textBox1.Format.LayoutFlowAlt = TextDirection.LeftToRightRotated; '竖排显示


                            '添加文字并设置字体
                            Dim textboxPara1 As Paragraph = textBox1.Body.AddParagraph()
                            Dim txtrg As TextRange = textboxPara1.AppendText("姓名______________学号______________班级______________")
                            txtrg.CharacterFormat.FontName = "等线"
                            txtrg.CharacterFormat.FontSize = 10
                            txtrg.CharacterFormat.TextColor = Color.Black
                            textboxPara1.Format.HorizontalAlignment = HorizontalAlignment.Center


                            '保存文档
                            doc.SaveToFile("Result.docx", FileFormat.Docx2013)
                            System.Diagnostics.Process.Start("Result.docx")
                   End Sub
         End Class
End Namespace

到此这篇关于C#设置Word文本框中改变文字方向的方法的文章就介绍到这了,更多相关C# Word改变文字方向内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#中Winform窗体Form的关闭按钮变灰色的方法

    C#中Winform窗体Form的关闭按钮变灰色的方法

    这篇文章主要介绍了C#中Winform窗体Form的关闭按钮变灰色的方法,对于C#程序界面的设计有一定的借鉴价值,需要的朋友可以参考下
    2014-08-08
  • 基于C#实现屏幕桌面截图

    基于C#实现屏幕桌面截图

    这篇文章主要为大家详细介绍了如何利用C#实现屏幕桌面截图以及左上角区域截图功能,文中的示例代码讲解详细,对我们学习C#有一定的帮助,感兴趣的小伙伴可以了解一下
    2022-12-12
  • C#中Trim()、TrimStart()、TrimEnd()的用法介绍

    C#中Trim()、TrimStart()、TrimEnd()的用法介绍

    这篇文章主要介绍了C#中Trim()、TrimStart()、TrimEnd()的用法,有需要的朋友可以参考一下
    2014-01-01
  • Unity实现局域网聊天室功能

    Unity实现局域网聊天室功能

    这篇文章主要为大家详细介绍了Unity实现局域网聊天室功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • C# Winform 实现屏蔽键盘的win和alt+F4的实现代码

    C# Winform 实现屏蔽键盘的win和alt+F4的实现代码

    最近在做一个恶搞程序,就是打开后,程序获得桌面的截图然后,然后全屏显示在屏幕上,用户此时则不能进行任何操作。
    2009-02-02
  • C#圆形头像框制作并从数据库读取

    C#圆形头像框制作并从数据库读取

    本文主要介绍了C#圆形头像框制作并从数据库读取,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • 使用C#实现替换文件中的IP地址

    使用C#实现替换文件中的IP地址

    这篇文章主要为大家详细介绍了如何使用C#来处理一个实际的编程挑战:读取一个配置文件并替换其中的IP地址,感兴趣的小伙伴可以了解下
    2024-01-01
  • c# this关键字用法代码详解

    c# this关键字用法代码详解

    在本篇文章里小编给大家整理的是关于c# this关键字用法以及相关实例代码,有兴趣的朋友们可以学习下。
    2020-02-02
  • C#使用OpenCvSharp4实现读取本地视频

    C#使用OpenCvSharp4实现读取本地视频

    OpenCvSharp4库是一个基于.Net封装的OpenCV库,这篇文章主要介绍了C#使用OpenCvSharp4实现读取本地视频的详细教程,有需要的小伙伴可以参考下
    2024-01-01
  • C#实现BBcode转为Markdown的方法

    C#实现BBcode转为Markdown的方法

    这篇文章主要给大家介绍了关于C#实现BBcode转Markdown的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-02-02

最新评论