• winfrom嵌入word



    使用微软的DSOFRAMER控件实现方法:
    先下载DsoFramer_KB311765_x86.exe ,自己百度一下有很多。
    安装,默认安装目录C:DsoFramer
    可以先注册下: 开始菜单----运行 输入 regsvr32.exe C:DsoFramerdsoframer.ocx

     

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Diagnostics;
    using System.Drawing;
    using System.Linq;
    using System.Reflection;
    using System.Text;
    using System.Windows.Forms;
    using System.IO;
    namespace WinFormWordDemo
    {

    public partial class Form1 : Form
    {
    Microsoft.Office.Interop.Word.Document doc = null;
    public Form1()
    {
    InitializeComponent();
    }
    private void Form1_Load(object sender, EventArgs e)
    {
    axFramerControl1.Titlebar = false;//隐藏标题
    axFramerControl1.Toolbars = false;
    axFramerControl1.Menubar = false;
    }
    private void button1_Click(object sender, EventArgs e)
    {
    OpenFileDialog File = new OpenFileDialog();
    File.Multiselect = true;
    File.Title = "请选择文件";
    //File.Filter = "*.doc|*.docx";
    if (File.ShowDialog() == DialogResult.OK)
    {
    string filePath = File.FileName;
    this.axFramerControl1.Open(filePath);
    var CurrentDocument = this.axFramerControl1.ActiveDocument;
    if (CurrentDocument != null)
    {
    doc = (Microsoft.Office.Interop.Word.Document)CurrentDocument;
    Microsoft.Office.Interop.Word.Application app = new Microsoft.Office.Interop.Word.Application();
    object missing = System.Reflection.Missing.Value;
    //doc.Application.Selection.TypeText(pText);
    //doc.Content.Text = doc.Content.Text+ "牛叉叉,北京人";//普通文本写入;
    InsertText(doc,"小五测试福裕路", 30,50, Microsoft.Office.Interop.Word.WdColor.wdColorRed);

    }
    }
    }


    /// <summary>
    /// 设置字体样式以及方向 
    /// </summary>
    /// <param name="doc">文档</param>
    /// <param name="pText">写入的文本</param>
    /// <param name="pFontSize">字体颜色</param>
    /// <param name="pFontBold">字体加粗</param>
    /// <param name="pFontColor">字体颜色</param>
    public void InsertText(Microsoft.Office.Interop.Word.Document doc,string pText, int pFontSize, int pFontBold, Microsoft.Office.Interop.Word.WdColor pFontColor)
    {
    doc.Application.Selection.TypeParagraph();//换行
                doc.Application.Selection.Font.Size = pFontSize;
    doc.Application.Selection.Font.Bold = pFontBold;
    doc.Application.Selection.Font.Color = pFontColor;
    //doc.WdParagraphAlignment ptextAlignment
    //doc.Application.Selection.ParagraphFormat.Alignment = ptextAlignment;
    doc.Application.Selection.TypeText(pText);
    }
    private void button2_Click(object sender, EventArgs e)
    {
    //导入,导出,保存;字体格式,加粗,换行;
    axFramerControl1.Save();
    }

    /// <summary>
    /// 另存为
    /// </summary>
    /// <param name="doc"></param>
    /// <param name="pFileName"></param>
    public void SaveWord(string pFileName)
    {
    object myNothing = System.Reflection.Missing.Value;
    object myFileName = pFileName;
    object myWordFormatDocument = null; //doc.Words.w.WdSaveFormat.wdFormatDocument;
    object myLockd = false;
    object myPassword = "";
    object myAddto = true;
    try
    {
    doc.SaveAs(ref myFileName, ref myWordFormatDocument, ref myLockd, ref myPassword, ref myAddto, ref myPassword,
    ref myLockd, ref myLockd, ref myLockd, ref myLockd, ref myNothing, ref myNothing, ref myNothing,
    ref myNothing, ref myNothing, ref myNothing);
    doc.Close(ref myNothing, ref myNothing, ref myNothing);
    //doc.Quit(ref myNothing, ref myNothing, ref myNothing);

    }
    catch(Exception ex)
    {


    string errorMsg = ex.Message;
    }
    }
    }
    }

  • 相关阅读:
    实现新layer的时候易犯的错误
    caffe实现focal loss层的一些理解和对实现一个layer层易犯错的地方的总结
    面经准备
    发送广播
    labelme也可以标注polygan
    中期答辩准备的东西
    授人以鱼,不如授人以渔
    python中strip()函数的理解
    栈的应用
    checkStyle使用具体解释
  • 原文地址:https://www.cnblogs.com/wugh8726254/p/14710577.html
Copyright © 2020-2023  润新知