亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

C# 中使用Word文檔對圖像進行操作

系統 3506 0

? ? ? ? ? ? ? ? ? ? ? ? ? C# 中使用 Word 文檔對圖像進行操作

Download Files: ImageOperationsInWord.zip

簡介

在這篇文章中我們可以學到在 C# 程序中使用一個 Word 文檔對圖像的各種操作。圖像會比閱讀文字更有吸引力,而且圖像是與內容緊密相關的。有時圖像可以將內容描述的更為清晰,就像使用圖表顯示某一周期內的數據變化。

?

Spire.Doc for .NET 是一個的基于 .NET 專業 Word 組件,它不僅可以在脫離微軟 office 自動化的情況下快速地生成、打開、修改、保存 Word 文檔 ,還支持用戶使用 C# 將圖像插入 Word 并根據頁面設置它的大小。這篇就是介紹給大家一個簡單的方法來插入圖像 ---- 使用 Spire.Doc for .NET。

?

以下就是我們要學習的操作步驟:

1、 Word 文檔中插入一張圖片。

2、 Word 文檔中提取一張圖片。

3、 Word 文檔中將圖片替換成文字。

?

在進行這些操作之前我們要先創建 Word 文檔。在這里我使用 Spire.Doc for .NET 來創建文檔并完成后續的操作。

? ?

創建一個控制臺程序來做演示。根據以下步驟: ????????

1、 打開 Visual Studio ????????

2、 "File" -> "New" -> "Project..." ????????

3、 選擇 C# 語言然后選擇控制臺程序并命名為 “ImageOperationInWord” ????????

4、 單擊 OK

?

Word 中插入圖片

首先,創建新的 Word 文檔并為之添加章節和段。然后,使用 p.AppendPicture(Image) 方法將圖像插入到新段中。設置圖像的高度和寬度屬性來規定圖片大小。使用以下代碼來用 C# 把圖片插入到 Word 中。

?

Namespace 使用:

using ?Spire.Doc;??
using ?Spire.Doc.Documents;??
using ?Spire.Doc.Fields;??
using ?System.Drawing; ?

?

Word 文檔中創建并插入圖像:

?

? private ? static ? void ?InsertImage() ?
{??
?// Create?Document??
? Document?document?=? new ?Document();??
? Section?s?=?document.AddSection();??
??Paragraph?p?=?s.AddParagraph();??
?
? // Insert?Image?and?Set?Its?Size??
? DocPicture?Pic?=?p.AppendPicture(Image.FromFile( @" D:\C#?Corner.png " ));??
? Pic.Width?=? 500 ;??
? Pic.Height?=? 500 ;??

? // Save?and?Launch??
? document.SaveToFile( " Image.docx " ,?FileFormat.Docx);??
? System.Diagnostics.Process.Start( " Image.docx " );??
?} ?

?

?

結果

?

? C# 中使用Word文檔對圖像進行操作

Word 文檔中提取圖片

? 在這里我們學習下如何在 C# 中從已存在的 Word 文檔中提取圖片并將圖片保存到指定的路徑。圖片是一種屬于段落項目的文檔對象。 Spire.Doc for .NET? 提供了一個 DocumentObject 類來存儲文檔中的圖像,并且還提供 DocPicture 類來獲得和設置文檔中的圖像。在這里我使用了 ExtractImages.docx 并在其中保存了兩幅圖。在輸出圖像文件夾中我們可以看到紅色框中的來自 Word 文檔的兩幅圖像。

?

? 提取 Word 圖片代碼:

?

? private ? static ? void ?ExtractImages()??
?{??
????? // Load?document??
?????Document?document?=? new ?Document( @" D:\ExtractImages.docx " );??
????? int ?index?=? 0 ;??
???
????? // Get?Each?Section?of?Document??
????? foreach ?(Section?section? in ?document.Sections)??
?????{??
????????? // Get?Each?Paragraph?of?Section??
????????? foreach ?(Paragraph?paragraph? in ?section.Paragraphs)??
?????????{??
? ? ? ? ? ?? // Get?Each?Document?Object?of?Paragraph?Items??
????????????? foreach ?(DocumentObject?docObject? in ?paragraph.ChildObjects)??
?????????????{??
????????????????? // If?Type?of?Document?Object?is?Picture,?Extract.??
????????????????? if ?(docObject.DocumentObjectType?==?DocumentObjectType.Picture)??
?????????????????{??
?????????????????????DocPicture?pic?=?docObject? as ?DocPicture;??
?????????????????????String?imgName?=?String.Format( @" D:\Extracted_Image-{}.png " ,?index);??
??
????????????????????? // Save?Image??
?????????????????????pic.Image.Save(imgName,?System.Drawing.Imaging.ImageFormat.Png);??
?????????????????????index++;??
?????????????????}??
?????????????}??
?????????}??
?????}??
?}??

? ?

? ? 結果

?

? ?? C# 中使用Word文檔對圖像進行操作 ?

?

Word 文檔中將圖片替換為文字

? ? 我們來看下 ?Spire.Doc 是如何幫助開發者們解決他們關于 office 技術的程序問題的。觀察以上問題的描述,我們最終是想使用相應的 “C# Corner Demo Example - {image index}”? 來將 Word 文件中的每幅圖都替換掉。我們還是用下面的演示代碼來解決吧。

?

? ?Word 文檔中的圖片替換為文字的代碼:

?

?
? private ? static ? void ?ReplaceImageWithText()??
?{??
?????Document?doc?=? new ?Document( @" D:\ExtractImages.docx " );??
????? int ?j?=? 1 ;??
????? foreach ?(Section?sec? in ?doc.Sections)??
????{??
????????? foreach ?(Paragraph?para? in ?sec.Paragraphs)??
?????????{??
?????????????List<DocumentObject>?images?=? new ?List<DocumentObject>();??
????????????? foreach ?(DocumentObject?docObj? in ?para.ChildObjects)??
???
????????????{??
????????????????? if ?(docObj.DocumentObjectType?==?DocumentObjectType.Picture)??
?????????????????{??
?????????????????????images.Add(docObj);??
????????????????}??
?????????????}??
????????????? foreach ?(DocumentObject?pic? in ?images)??
?????????????{??
????????????????? int ?index?=?para.ChildObjects.IndexOf(pic);??
?????????????????TextRange?range?=? new ?TextRange(doc);??
?????????????????range.Text?=? string .Format( " C#?Corner?Demo?Example?{} " ,?j);??
????????????????para.ChildObjects.Insert(index,?range);??
?????????????????para.ChildObjects.Remove(pic);??
?????????????????j++;??
?????}
?????}??
?????doc.SaveToFile( @" D:\result.docx " ,?FileFormat.Docx);??
?????System.Diagnostics.Process.Start( @" D:\result.docx " );??
?}???

? ? ? ?

? ? ? 在替換前

?

? ? ?? C# 中使用Word文檔對圖像進行操作

?

? ? ?將圖片替換為文字后

?

? ? ?? C# 中使用Word文檔對圖像進行操作

? ?注意:更詳細的代碼請下載最上面的附加的壓縮包。

?

總結

?

? ?希望大家看完后都理解了如何以編程方式在 Word 文檔中對圖像進行操作。如果大家有其他的關于圖像操作的好建議,歡迎討論哦。

關于 Spire.Doc 的更多內容點擊 這里

C# 中使用Word文檔對圖像進行操作


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产成人精品一区二区 | 奇米影视狠狠狠天天777 | 国产香蕉一区二区在线网站 | 中文字幕在线亚洲 | 国产亚洲精品国产福利在线观看 | 久久国产精品男女热播 | 天天操狠狠操夜夜操 | 国产欧美亚洲三区久在线观看 | 精品在线免费播放 | 精品国产一区二区三区2021 | 欧美大狠狠大臿蕉香蕉大视频 | 性欧美高清久久久久久久 | 四虎国产精品免费久久久 | 欧美日本一区二区 | 国产精品久久久久久久hd | 豆国产97在线 | 中国 | 国产高清精品一级毛片 | 欧美深夜影院 | 大胆国模一区二区三区伊人 | 美日韩中文字幕 | 精品久久久久久综合日本 | 亚洲欧美精品一区二区 | 色综合欧美亚洲另类久久 | 久久精品欧美日韩精品 | 国产精品中文字幕在线 | 思99re久久这里只有精品首页 | 91精品国产福利尤物 | 久久精品国产清自在天天线 | 久久精品国产只有精品6 | 日本久久99| 中文字幕精品亚洲无线码二区 | 亚洲专区在线视频 | 精品一本久久中文字幕 | 成人做爰小视频 | 日韩一区精品 | 最近手机中文字幕1页 | 97视频在线播放 | 国产一级毛片国语版 | 四虎www成人影院观看 | 成年女人在线观看 | 欧美日韩国产成人综合在线 |