zoukankan      html  css  js  c++  java
  • 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;
    }
    }
    }
    }

  • 相关阅读:
    div随意拖动,基于jquery。
    智能社官网顶部导航实现demo
    Notepad++7.4.2的配置使用详情
    ejs模板在express里的默认文件夹路径修改
    web前端-《手机移动端WEB资源整合》——meta标签篇
    npm --save-dev --save 的区别【转载】
    正则表达式处理字符串指定位置插入【高级】
    nodejs里的express自动刷新高级篇【转载】
    webstorm快捷键说明
    js私有作用域(function(){})(); 模仿块级作用域
  • 原文地址:https://www.cnblogs.com/wugh8726254/p/14710577.html
Copyright © 2011-2022 走看看