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;
    }
    }
    }
    }

  • 相关阅读:
    Nginx Http模块开发
    nginx模块开发获取post参数
    nginx上传模块nginx_upload_module和nginx_uploadprogress_module模块进度显示,如何传递GET参数等。
    Spring data jpa 复杂动态查询方式总结
    springData Jpa 快速入门
    从一个简单的 JPA 示例开始
    java中使用Protobuf的实例(Demo)
    Protocol Buffers官方文档(开发指南)
    protobuf(Protocol Buffers)java初体验
    [thrift] thrift基本原理及使用
  • 原文地址:https://www.cnblogs.com/wugh8726254/p/14710577.html
Copyright © 2011-2022 走看看