• <menu id="w2i4a"></menu>
  • logo E-iceblue中文文檔

    文檔首頁(yè)>>E-iceblue中文文檔>>替換 Word 中的圖像

    替換 Word 中的圖像


    Spire.Doc for .NET是一款專門對(duì) Word 文檔進(jìn)行操作的 .NET 類庫(kù)。在于幫助開發(fā)人員無(wú)需安裝 Microsoft Word情況下,輕松快捷高效地創(chuàng)建、編輯、轉(zhuǎn)換和打印 Microsoft Word 文檔。擁有近10年專業(yè)開發(fā)經(jīng)驗(yàn)Spire系列辦公文檔開發(fā)工具,專注于創(chuàng)建、編輯、轉(zhuǎn)換和打印Word/PDF/Excel等格式文件處理,小巧便捷。在 C#、VB.NET 中從 Word 中提取圖像。

    Spire.Doc for.NET 最新下載

    讓我們看看 Spire.Doc 是如何幫助開發(fā)人員解決與 Office 技術(shù)編程相關(guān)的問題。根據(jù)描述,發(fā)帖人希望將Word文件中的每張圖片對(duì)應(yīng)替換為“Here was image {image index}”。但是,我們想提供一個(gè)帶有以下示例代碼的解決方案。

    測(cè)試文件

    用 C# 中的文本替換 Word 中的圖像

    用文本替換圖像的代碼片段;

    第 1 步:創(chuàng)建一個(gè)新的 Word 文檔并加載測(cè)試文件。

    Document document = new Document(@"..\..\test.docx");

    第 2 步:獲取Word文檔中的所有圖片并將它們替換為文本“Here was image {image index}”。

    int j = 1;
    foreach (Section sec in document.Sections)
    {
    foreach (Paragraph para in sec.Paragraphs)
    {
    List pictures = new List();
    foreach (DocumentObject docObj in para.ChildObjects)
    {
    if (docObj.DocumentObjectType == DocumentObjectType.Picture)
    {
    pictures.Add(docObj);
    }
    }
    foreach (DocumentObject pic in pictures)
    {
    int index = para.ChildObjects.IndexOf(pic);
    TextRange range = new TextRange(document);
    range.Text = string.Format("Here was image {0}", j);
    para.ChildObjects.Insert(index, range);
    para.ChildObjects.Remove(pic);
    j++;
    }
    }
    }

    第 3 步:保存并啟動(dòng)文件。

    document.SaveToFile(@"..\..\result.docx", FileFormat.Docx);
    System.Diagnostics.Process.Start(@"..\..\result.docx");

    結(jié)果:

    用 C# 中的文本替換 Word 中的圖像

    完整的 C# 代碼:

    [C#]

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Spire.Doc;
    using Spire.Doc.Documents;
    using Spire.Doc.Fields;
    using Spire.Doc.Interface;
    using System.Drawing;
    
    namespace ReplaceImageWithText
    {
    class Program
    {
    static void Main(string[] args)
    {
    Document document = new Document(@"..\..\test.docx");
    int j = 1;
    foreach (Section sec in document.Sections)
    {
    foreach (Paragraph para in sec.Paragraphs)
    {
    List pictures = new List();
    foreach (DocumentObject docObj in para.ChildObjects)
    {
    if (docObj.DocumentObjectType == DocumentObjectType.Picture)
    {
    pictures.Add(docObj);
    }
    }
    foreach (DocumentObject pic in pictures)
    {
    int index = para.ChildObjects.IndexOf(pic);
    TextRange range = new TextRange(document);
    range.Text = string.Format("Here was image {0}", j);
    para.ChildObjects.Insert(index, range);
    para.ChildObjects.Remove(pic);
    j++;
    }
    }
    }
    document.SaveToFile(@"..\..\result.docx", FileFormat.Docx);
    System.Diagnostics.Process.Start(@"..\..\result.docx");
    }
    }
    }

    以上便是如何在 C#/VB.NET 中的指定位置插入圖像,如果您有其他問題也可以繼續(xù)瀏覽本系列文章,獲取相關(guān)教程,你還可以給我留言或者加入我們的官方技術(shù)交流群(767755948)

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();