• Word中截取部分内容并保存为jpg图片的方法


    private void button1_Click(object sender, EventArgs e)
    {
    var appWord = new Microsoft.Office.Interop.Word.Application();
    var doc = new Microsoft.Office.Interop.Word.Document();
    object oMissing = System.Reflection.Missing.Value;//这个是什么东西,我始终没搞明白-_-
    //打开模板文档,并指定doc的文档类型
    object objTemplate = @"c:18_0000f032-1c39-4bc9-a47c-327d8d493978.docx";
    object objDocType = WdDocumentType.wdTypeDocument;
    appWord.Visible = true;
    doc = appWord.Documents.Add(ref objTemplate, ref oMissing, ref objDocType, ref oMissing);
    object start = 0;
    object end = 160;
    doc.Range(ref start, ref end).Select();
    appWord.Selection.Range.Copy();

    var process = new Process();
    process = Process.Start("mspaint.exe",@"c:1.jpg");
    var processId = process.Id;
    var element = FindWindowByProcessId(processId);
    SendKeys.SendWait("^v"); //发送 Ctrl + s 键
    SendKeys.SendWait("^s"); //发送 Ctrl + s 键
    SendKeys.SendWait("%{F4}"); // 发送 Alt + F4 键
    }

    public static AutomationElement FindWindowByProcessId(int processId)
    {
    AutomationElement targetWindow = null;
    int count = 0;
    try
    {
    Process p = Process.GetProcessById(processId);
    targetWindow = AutomationElement.FromHandle(p.MainWindowHandle);
    return targetWindow;
    }
    catch (Exception ex)
    {
    count++;
    StringBuilder sb = new StringBuilder();
    string message = sb.AppendLine(string.Format("Target window is not existing.try #{0}", count)).ToString();
    if (count > 5)
    {
    throw new InvalidProgramException(message, ex);
    }
    else
    {
    return FindWindowByProcessId(processId);
    }
    }
    }

  • 相关阅读:
    布局神器display:table-cell
    解决IE兼容总汇【转】
    jQuery Validate【强大的表单验证】
    使用信号SIGALRM 为 recvfrom 设置超时,防止死等待
    并发服务器(IO多路复用)
    并发服务器(多进程版本)
    TCP listen()函数内幕
    c++ 重载运算符规则
    内核定时器struct timer_list
    C和arm汇编的相互调用(看书笔记)
  • 原文地址:https://www.cnblogs.com/littlehb/p/3699966.html
Copyright © 2020-2023  润新知