如何利用C#实现在Word中插入竖排文字

 我来答
就烦条0o
2017-12-07 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46492
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部
1.创建打印模板文件(*.dot)
此为关键步骤,在需要竖排的地方,先文字的字体、样式设置后,然后设置文字方向,再选择该段文字,为其插入一个书签(BookMark),并为该书签命名。
2.利用C#打开,替换该书签即可,代码如下:
注意使用以下代码时,需要引入Word库
Word.ApplicationClass App = null; //Word应用程序对象
Word.Document doc = null; //Word文档对象
object missing = System.Reflection.Missing.Value;
object miss=Type.Missing;
if (App==null) App = new Word.ApplicationClass();//创建word对象
App.Visible = false; //设置word不可见
//根据模板创建新文档,不过这个模板文件的名称放置在app.config文件中
object oTemplate = ConfigurationSettings.AppSettings["TemplateOfLetter"];//获取文件名
doc = App.Documents.Add(ref oTemplate, ref missing,ref missing, ref missing);//创建新文档
doc.Activate();//激活文档
Object objBookMark = "姓名";//姓 名 创建书签对象
string name="张三";
doc.Bookmarks.get_Item(ref objBookMark).Range.Text =name;//替换该书签,可为任意值了
//打印输出
doc.PrintOut( ref missing,ref missing,ref missing,ref missing,ref missing,ref missing,
ref missing,ref missing,ref missing,ref missing,ref missing,ref missing,ref missing,
ref missing,ref missing,ref missing,ref missing,ref missing);
//关闭新创建的文档
object SaveChanges = Word.WdSaveOptions.wdDoNotSaveChanges;//创建关闭选项
if (doc!=null)
doc.Close( ref SaveChanges, ref missing, ref missing);
//退出Word
if (App!=null)
App.Application.Quit(ref miss, ref miss, ref miss);
App=null;
doc = null;
Office文档开发
2018-03-09 · 专注文档开发的码字君
Office文档开发
采纳数:47 获赞数:66

向TA提问 私信TA
展开全部

设置或更改文字方向,你用Spire.Doc.dll就可以,你可以参考下面的demo,附上全部代码操作步骤。

代码中对设置文字方向分别列了两种情况,

  1. 设置整个文字方向

  2. 设置部分文字方向

using Spire.Doc;
using Spire.Doc.Documents;

namespace Set_text_direction_in_Word
{
    class Program
    {
        static void Main(string[] args)
        {            
            //创建一个新的Document对象并加载Word文档
            Document document = new Document();
            document.LoadFromFile("示例.docx");
            //设置一个section内的所有文本的文本方向
            Section section = document.Sections[0];
            section.TextDirection = TextDirection.RightToLeftRotated;           

            //设置部分文本的文本方向
            Section sec = document.AddSection();
            Table table = sec.AddTable();
            table.ResetCells(1, 1);
            TableCell cell = table.Rows[0].Cells[0];
            table.Rows[0].Height = 50;
            table.Rows[0].Cells[0].Width = 5;
            cell.CellFormat.TextDirection = TextDirection.RightToLeftRotated;
            cell.AddParagraph().AppendText("你好");
            sec.AddParagraph().AppendText("新段落");
 
            //保存文档
            document.SaveToFile("文本方向.docx", FileFormat.Docx);
        }
    }
}

调试项目就可以生成文档了。

  1. 设置全部文字方向后

  2. 设置部分文字方向后


已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式