From c22a4e5981c2a13bf4f705ac6a3c38aa4a9bfc2c Mon Sep 17 00:00:00 2001 From: "sneha.biju" Date: Thu, 5 Oct 2023 11:47:05 +0530 Subject: [PATCH 1/4] Added samples for replacing text with chart, hyperlink and TOC --- .../Find-and-replace-text-with-TOC.sln | 25 +++++ .../Data/Input.docx | Bin 0 -> 12237 bytes .../Find-and-replace-text-with-TOC.csproj | 13 +++ .../Find-and-replace-text-with-TOC/Program.cs | 37 ++++++++ .../Find-and-replace-text-with-chart.sln | 25 +++++ .../Data/Input.docx | Bin 0 -> 17040 bytes .../Find-and-replace-text-with-chart.csproj | 13 +++ .../Program.cs | 87 ++++++++++++++++++ .../Program.cs | 1 - .../Replace-text-with-hyperlink.sln | 25 +++++ .../Data/Input.docx | Bin 0 -> 12797 bytes .../Replace-text-with-hyperlink/Program.cs | 40 ++++++++ .../Replace-text-with-hyperlink.csproj | 13 +++ 13 files changed, 278 insertions(+), 1 deletion(-) create mode 100644 Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC.sln create mode 100644 Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Data/Input.docx create mode 100644 Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Find-and-replace-text-with-TOC.csproj create mode 100644 Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs create mode 100644 Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart.sln create mode 100644 Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Data/Input.docx create mode 100644 Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Find-and-replace-text-with-chart.csproj create mode 100644 Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Program.cs create mode 100644 Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink.sln create mode 100644 Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink/Data/Input.docx create mode 100644 Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink/Program.cs create mode 100644 Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink/Replace-text-with-hyperlink.csproj diff --git a/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC.sln b/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC.sln new file mode 100644 index 00000000..9c344f46 --- /dev/null +++ b/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33213.308 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Find-and-replace-text-with-TOC", "Find-and-replace-text-with-TOC\Find-and-replace-text-with-TOC.csproj", "{23ABDEA3-F208-4355-B4A4-D17CBC963A16}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {23ABDEA3-F208-4355-B4A4-D17CBC963A16}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {23ABDEA3-F208-4355-B4A4-D17CBC963A16}.Debug|Any CPU.Build.0 = Debug|Any CPU + {23ABDEA3-F208-4355-B4A4-D17CBC963A16}.Release|Any CPU.ActiveCfg = Release|Any CPU + {23ABDEA3-F208-4355-B4A4-D17CBC963A16}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {632BD348-C0F4-4909-B134-1554F75A6F1B} + EndGlobalSection +EndGlobal diff --git a/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Data/Input.docx b/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Data/Input.docx new file mode 100644 index 0000000000000000000000000000000000000000..1102cfb7d0660899dc9fcc1e18c26111d4a10550 GIT binary patch literal 12237 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 Lr|b>Q&!_(f+i<#C literal 0 HcmV?d00001 diff --git a/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Find-and-replace-text-with-TOC.csproj b/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Find-and-replace-text-with-TOC.csproj new file mode 100644 index 00000000..a79dbe14 --- /dev/null +++ b/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Find-and-replace-text-with-TOC.csproj @@ -0,0 +1,13 @@ + + + + Exe + netcoreapp3.1 + Find_and_replace_text_with_TOC + + + + + + + diff --git a/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs b/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs new file mode 100644 index 00000000..600dab77 --- /dev/null +++ b/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs @@ -0,0 +1,37 @@ +using Syncfusion.DocIO; +using Syncfusion.DocIO.DLS; +using Syncfusion.DocIORenderer; +using System; +using System.IO; + +namespace Find_and_replace_text_with_TOC +{ + internal class Program + { + static void Main(string[] args) + { + using (FileStream fileStreamPath = new FileStream(Path.GetFullPath(@"../../../Data/Input.docx"), FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) + { + //Opens an existing Word document. + using (WordDocument document = new WordDocument(fileStreamPath, FormatType.Docx)) + { + TextSelection[] selections = document.FindAll("[Insert TOC]", true, true); + WTextRange textrange = selections[0].GetAsOneRange(); + WParagraph paragraph = textrange.OwnerParagraph; + //Remove the existing text + paragraph.ChildEntities.Remove(textrange); + //Append the TOC + paragraph.AppendTOC(1, 3); + //Update the TOC + document.UpdateTableOfContents(); + //Creates file stream. + using (FileStream outputFileStream = new FileStream(Path.GetFullPath(@"../../../Data/Result_check.docx"), FileMode.Create, FileAccess.ReadWrite)) + { + //Saves the Word document to file stream. + document.Save(outputFileStream, FormatType.Docx); + } + } + } + } + } +} diff --git a/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart.sln b/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart.sln new file mode 100644 index 00000000..8728e676 --- /dev/null +++ b/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33213.308 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Find-and-replace-text-with-chart", "Find-and-replace-text-with-chart\Find-and-replace-text-with-chart.csproj", "{6DC22CF0-0561-4C68-9D83-5C0971490748}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {6DC22CF0-0561-4C68-9D83-5C0971490748}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6DC22CF0-0561-4C68-9D83-5C0971490748}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6DC22CF0-0561-4C68-9D83-5C0971490748}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6DC22CF0-0561-4C68-9D83-5C0971490748}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {D05EB822-AE02-4DFA-B932-C32E99F9BFA9} + EndGlobalSection +EndGlobal diff --git a/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Data/Input.docx b/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Data/Input.docx new file mode 100644 index 0000000000000000000000000000000000000000..4083503924f2ee967dbc1c3b3b0588a3c961a7c7 GIT binary patch literal 17040 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 + + + Exe + netcoreapp3.1 + Find_and_replace_text_with_chart + + + + + + + diff --git a/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Program.cs b/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Program.cs new file mode 100644 index 00000000..034833a8 --- /dev/null +++ b/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Program.cs @@ -0,0 +1,87 @@ +using Syncfusion.DocIO; +using Syncfusion.DocIO.DLS; +using Syncfusion.OfficeChart; +using System; +using System.ComponentModel; +using System.IO; + +namespace Find_and_replace_text_with_chart +{ + internal class Program + { + static void Main(string[] args) + { + using (FileStream fileStreamPath = new FileStream(Path.GetFullPath(@"../../../Data/Input.docx"), FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) + { + //Opens an existing Word document. + using (WordDocument document = new WordDocument(fileStreamPath, FormatType.Docx)) + { + TextBodyPart bodyPart = new TextBodyPart(document); + //Create new paragraph + WParagraph paragraph= CreateBarChart(document); + bodyPart.BodyItems.Add(paragraph); + //Replaces the placeholder text with a new chart. + document.Replace("[Purchase details]", bodyPart, true, true, true); + //Creates file stream. + using (FileStream outputFileStream = new FileStream(Path.GetFullPath(@"../../../Data/Result.docx"), FileMode.Create, FileAccess.ReadWrite)) + { + //Saves the Word document to file stream. + document.Save(outputFileStream, FormatType.Docx); + } + } + } + } + private static WParagraph CreateBarChart(WordDocument document) + { + WParagraph paragraph = new WParagraph(document); + WChart barchart = paragraph.AppendChart(400, 300); + barchart.ChartType = OfficeChartType.Bar_Clustered; + AddBarChartData(barchart); + barchart.ChartTitle = "Purchase Details"; + barchart.ChartTitleArea.FontName = "Calibri"; + barchart.ChartTitleArea.Size = 14; + IOfficeChartSerie serie1 = barchart.Series.Add("Sum of Future Expenses"); + serie1.Values = barchart.ChartData[2, 2, 6, 2]; + IOfficeChartSerie serie2 = barchart.Series.Add("Sum of Purchases"); + serie2.Values = barchart.ChartData[2, 3, 6, 3]; + + barchart.HasDataTable = true; + barchart.DataTable.HasBorders = true; + barchart.DataTable.HasHorzBorder = true; + barchart.DataTable.HasVertBorder = true; + barchart.DataTable.ShowSeriesKeys = true; + barchart.HasLegend = false; + + barchart.PlotArea.Border.LinePattern = OfficeChartLinePattern.Solid; + barchart.ChartArea.Border.LinePattern = OfficeChartLinePattern.Solid; + barchart.PrimaryCategoryAxis.CategoryLabels = barchart.ChartData[2, 1, 6, 1]; + barchart.PrimaryCategoryAxis.Font.Size = 12; + barchart.PrimaryCategoryAxis.MajorTickMark = OfficeTickMark.TickMark_None; + barchart.PrimaryValueAxis.MajorTickMark = OfficeTickMark.TickMark_None; + + return paragraph; + } + + private static void AddBarChartData(WChart chart) + { + chart.ChartData.SetValue(1, 2, "Sum of Future Expenses"); + chart.ChartData.SetValue(1, 3, "Sum of Purchases"); + chart.ChartData.SetValue(2, 1, "Nancy Davalio"); + chart.ChartData.SetValue(2, 2, 1300); + chart.ChartData.SetValue(2, 3, 600); + chart.ChartData.SetValue(3, 1, "Andrew Fuller"); + chart.ChartData.SetValue(3, 2, 680); + chart.ChartData.SetValue(3, 3, 1000); + chart.ChartData.SetValue(4, 1, "Janet Leverling"); + chart.ChartData.SetValue(4, 2, 1280); + chart.ChartData.SetValue(4, 3, 800); + chart.ChartData.SetValue(5, 1, "Margaret Peacock"); + chart.ChartData.SetValue(5, 2, 2000); + chart.ChartData.SetValue(5, 3, 400); + chart.ChartData.SetValue(6, 1, "Steven Buchanan"); + chart.ChartData.SetValue(6, 2, 2660); + chart.ChartData.SetValue(6, 3, 731); + } + + } +} diff --git a/Find-and-Replace/Find-and-replace-text-with-image/.NET-Standard/Find-and-replace-text-with-image/Program.cs b/Find-and-Replace/Find-and-replace-text-with-image/.NET-Standard/Find-and-replace-text-with-image/Program.cs index 45d385e0..9f0fb8fc 100644 --- a/Find-and-Replace/Find-and-replace-text-with-image/.NET-Standard/Find-and-replace-text-with-image/Program.cs +++ b/Find-and-Replace/Find-and-replace-text-with-image/.NET-Standard/Find-and-replace-text-with-image/Program.cs @@ -22,7 +22,6 @@ static void Main(string[] args) WParagraph paragraph = new WParagraph(document); FileStream imageStream = new FileStream(Path.GetFullPath(@"../../../Data" + textSelections[i].SelectedText + ".png"), FileMode.Open, FileAccess.ReadWrite); WPicture picture = paragraph.AppendPicture(imageStream) as WPicture; - TextSelection newSelection = new TextSelection(paragraph, 0, 1); TextBodyPart bodyPart = new TextBodyPart(document); bodyPart.BodyItems.Add(paragraph); document.Replace(textSelections[i].SelectedText, bodyPart, true, true); diff --git a/Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink.sln b/Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink.sln new file mode 100644 index 00000000..7cbf13a2 --- /dev/null +++ b/Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33213.308 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Replace-text-with-hyperlink", "Replace-text-with-hyperlink\Replace-text-with-hyperlink.csproj", "{0E4D096D-C506-497E-8DE1-A71DECFBBB8C}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {0E4D096D-C506-497E-8DE1-A71DECFBBB8C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0E4D096D-C506-497E-8DE1-A71DECFBBB8C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0E4D096D-C506-497E-8DE1-A71DECFBBB8C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0E4D096D-C506-497E-8DE1-A71DECFBBB8C}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {FC6DAA82-E7CA-4AB9-A2A0-A54A52989B25} + EndGlobalSection +EndGlobal diff --git a/Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink/Data/Input.docx b/Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink/Data/Input.docx new file mode 100644 index 0000000000000000000000000000000000000000..0912c43f301be76b13862f764eb8ca781eeb0b34 GIT binary patch literal 12797 zcmeHtgI=3Dm`pTKCW+3q2$}A;mN*=^y2mQi6u@B+|$q zLt%P=D!;@Iw!LFxvt!9MAe_rHL+>OhVmRWq-ySI#_+S z`T+(2yuE<|WdCN8A7Zc@FM#Vz8fbBFK$Fz5H?nk~qy0_(&lLX;+uvV?ULM}L1T0=|{ZFR|f@%4pkX$e&8SWjehW;Slh-637rX)9jq z5<5`|A+#N4;ZeI+N+w_ThUT0B%NFXonE$v!}5ps`~3; z=m8cl>jj}&ozAumPP!J~4KOhMw|yvtP4Phk!xi8?0DuDgaDq%*WJaIyl%t=|IH zo~ney4jXcZ&HO7=!lam`zgr&*{reBY2lTCTBnlpDs5JnZ#JyN>#GBK`eW;*lLwLew zYN&9H6Pc_Q-g=S_Pp=&Yb%lbIcie-W*SLZZF(_y^nK!#v_cf;kR^NhcsUgnTaY{3) zUN(K6V}oKysH6k=0ECXoAM+2X!^QX)=MDMT7gW+wNbA#6sEC@WOqhg=)5PC5BTPQj z=!C=um?P{WRI3`Cy|djb`JkR}3p;^MZ#xW1C6Gl4|7IGU=yB$ZAcLOE9Tp_wNc4X!s+-J&%}=LVqqY50k=ax;p5V0cWA%aEGM&`V)Y1L=YvvIF zHIRiIoxZF=_M1i&uPR|->b`|M#K0E@iI2F7stBI)rp|t+i_`?9pLYS-QmRs7NtkZT zdOTar{&~lC^cASWHm>z^vxcuc^=lN(;*`wyJay0JXGP8!JfLN=>*wNA7sNN;x?tkL zrF)*6qhVzXbiuLt3Bclwy1WIHqqQ8R@grdsu&ll_`6d!be(QONw(?oSbK&S-8ZMVL zji`4HMN$=DOBCGnh&*)j&t5jOl0v)lvlBFNeV^8wI2=h~z#w;jMdy3Z66t~HJHwx_ zt6nyOGhgveSO6*)p%2=42ut!l3MWTxL+*`w9jvMjzG5(wWy3Jw#ZN9M#h9HkX}?OUgw1G^_}sCz=hu3$3WA9hM$yS zi`hVQT-4+EzvO%Df{^DJRVd92B6O}-OT50tZHlzzM+?)|uA=VIm6 z&Oj)=v)Y42p`Hro6E9L_s>xDFo5{r_PBDa{GQ2Rkp{_TDELEi_<)fpg|9;D`qd3k- zzD$f3D!rwt9TJ)9V#S^c3KRx;U$`1@WoE+M}teF`KCaOVcIQ!yPBQEzS5rEyhhN zpwYY5&LV8FDD<+;{ka398!w_0JF3T38{1JhAwd*@)dX)T(}6$ZOOS^&=;)VH7N@7; z(wa#auYsc~2*N0zoR*sbp8*u$c59DcZ!I$EDp_nvwRG`u#IUO0EMaI# zxKTFlEG|Xwrdi>>0cAjP3Wf<>m34K0@5ar9_r@YvuG60hf zTmUr4?{4#7xy4_d=fCp|5Mas=bie<%kMh`2V4MY}yn(O&$zC*^Ub6gqmg0n~3oihn z54^?HFypt|omHY@r&GEum-dy(4wGM4S0}qeUBc%)in537k&nWwJQgWkOFmSc^C4TP zSe)WfV#erdXlq+$PMJ$f%-#74=Ca98F?_9$H{`%&HsZ;apo@s|KVTkEhP2Xl3bRi* zbYYanlFg*=uT(~Mxnl`7hyQ`!V3WGB<^RbBjDtskkk|GteC(J_Toq5l5F(CVLNNMJ zNLeCu3O~$%u}GG>v@5T_q)RWetW&EdbC&kC0e|4)Te3rw+Dy(>BvpGOT2$5%IiU=X z`y()<{&%o#xHUgZr(QAuE){T1qsCIda!ir3@>GhR*`XJpbdl>NaXaV@G&}x zAH9 zMMUGnQH)^Do8YL|!Z@>hoIx^@P$H|ru0zEExJLKSTwywrxHB|%PUq8gL1tSkjIL66lgHvF^xf2kB zd3pJg*KD~j)$QUT9```DF?X6EZ$$mjM1{Lle}~h>JzyGTcbZvQQh%+SOqSzi$1}NW zP3UN-!MSvKt;^%zM8=xH7l4rZiJ}QNkga=0&cQOYTIf41VUX6tP%u;X$C+k{^bbVJ zak$X}#Hoxqqa=`>)Ry4gn?Y9h=WN`oZoY|1WS=58JY{66AfGs@uWebgqkQ% zkc3<>QR%}HhNh=Us*BOz1Qhf903i)L?-2O5ecqULwi+Gu9VFNIV9l9?o@sK|Pa3&_ z;^KNqv|3BLe0n3S27$ZJt0&5T#+A& z6J`)X&+m-?wfxKEhCcBXwJa*JcK+kj9DE9hrc*VG_OYpXzI@MoPJLVxp}v7npt_Cl z5H!_1#=WbSZLiOT{lMpg4XB~5heY4L*NF!9&vU8-aLHicN>6Aj zW3YHJ%UJ6-iBM0~rXG|RK5i~D3mra|$Fi3hPEcaC4v7>S*6axJf~s>LO{?$p6!D<( zA9rZVwoy4Q6K{Qw`buBSsc!lbZHCV0(46iI$3A2AmFW>8X4*Tz_?x6s6>@07i7Xq_ z$86h~UgdRjzlmLLR%wy4`FRH^-))ehUlKZZ(Xy#>5Q2$&ORiONE z{c~KnM*V`K$4|lGdaA6<{acldVOPd(Vm10$Cp}sv{S0nGRi`Cf(F>7XgTv^FM;h>; z>og^!E(R2Pt8s?y=BSUfpF6BP9g@<+qW9w!eevPPtFM+X&SpXQWa zS@z?;#`D#{IYC-8bWMVjg}TG2D3{?wRU@}e-GsvPam_{T{gzyfojnZxNcDzfJ}HI< z*->FB^CDH`y+n<##?yFqD~;X8bER|}TkeEk>heB(&s35mSqZcbJ5=8x;{C8y7KCtX#_PwguL^r7K9rCF8S z0r=03)t)w0gN+;OgJts1Yr*|Sg{NCJ=nEI;W%WBQ4~QV6T&8nDXYQ?wIKeIM+r|6*~|F%V4d?HcpNi`5$;>=x-8(;3xrvq#kKQtj~Z7B3RTLS+Kn4oE?bb2 z8iF#aI#dqk+nitjF$kX7>3dRx0|3=vo>+~EdbUjuUfCNA$#fQzI9LC zaI~n}>*q-8jb42eTBALozE6oIPlKjFB{3SLx!-gV4N08E6si%@Mm3)pOWC%ieZ9O2 zneIlE5OU?d>j~?^*=pG$E%~Hyaq)Hkas-Dw;sjMrd$+`;YvkGW<=F=RzNAOpKNTAw zR3Wb{*9dunTE z_gnxJ*h@!aI%roc%;TRXmUXjWso{##OFqGHZ4PZWyVfs=`a73`7tT5B@-cv3d$q&_ z^Ifoo)Kl06Vwd8}b}VRqnL+Hvqs@z~St1I7jo4Su23=y*wiqs%rFt}}WI7UnF`7|Z zs{Af<+R)pbD-3UaS8k!w*7vbSICimU6I1m<&;I0ELe-Vx>S* zHUe1-Dsp_H$BlzW^gLAbZq7%mcdt40>F9*0 zHkM1>%Jp?kaQnyg0ku8a>XOw8nQdJ76T<%#B`YFJ&|{~d~Q zZ2WU8=WWf~ zH1K*MP`VWai2Z&IzQ&q4-J~5dRi7pjY;RpydB$6Cn|Fc+1{-Dyj$0Alg%M8<#Y&Ndrf@R4Z6NCR$K9R@N^)p3J%BLc&X6`%!b1_k4V_m+-g*f zZ{%3bw)@UCtqyV8o>er*V|t9fvd`wTynOhmvP%GC+$)qQ)ax3%25)lX#-%yHhi-Uv zZQn5TdX_r(ve5DRk8fpyW>DU@K({jE2mk;t_*Z`I;OJ&)^t)qe%g}OIZ9xgT;GBKy znpX0N8LFXSAI8mMisUty+3h2ASojf_W+gmr6?y{@X40r$Xj;*QEEjWN12(7m#K`rkOiqgrqNS& zT+<$@WIoQ=9_ANR6v~ugqgQQw$$8?inS(g6XBAW%5Cz;VWPou_ux+?nKc>YfB-t+8 zSlxgj9gNQh2(cf>2ZRZsH2P9A0%%8haMVjbEwG=pphQS|;W`Y3(oGKXS`_97PvTxK z#0%ZfxxDn%$otyQ!#{rH@2#4gkqo~@pQ!msjaKfoJMwe7g>>wCU@=RGMA%?f|6Zs4 z3L{KL?Ez`)?7w zTAi_??>lIG8FaN&8?S)I@wa-l2|g}SaRF=&MZziD3GiVWnP zJ@{y=(J1Kz)QH|~ija}9!tPMFcp^TokSo|orCbfG7$B#$!&O_YrM?vfNm0twEmyHI z9aAK?2``=JA%7hpvcR?CtaWwz?o6jBAYwB=b)~_=>{S+I4E#B)!E(D@fnAgQW+Ffo z@xy^aa0x#9e3xx5_<*f1=zy&*;D9aP?|?1-%K;lG-nd;KL+UQH0ytSx4izj;xA$J~ zy)`hP^hCA#h+poWXMy}|dPeKOck%Il*gcmy^j>>eUX5zyRoiXem#1o)W|X+;rqmEm zDPlb2o5=b)t6HkoV4Sy|A{Ipz>rc`ZpHh(;3^mJd%zF`qOeO#J$n{A{iy*06p6i`> z(vtw^#H=Xc1u%yd_6*3AlfqC^~p`voVq(b*6A% zuL_!2Y|qDRrp`y+(IWBouBWff{u$?@@J zay?^kCfx{sEvng7G({T#pJiR@P}q&9@SU&vj*{M_V6}SOV4&efO_;8myFa~wP_E+C zDmeW#58aHx^RtVo;?Bxt@Lv5k3XEkh4sEqYyCf@Iokgm$5F#}{giL@Gl;owiaI)3NY=~lmmur? zlKITut)5BrC{T`6!KcrwblvTmX^gY*@CcW+V-6|N3}sBdKF`A#K1Ih{DYSmG7`b`e z#2nm)dWU|xu@qvAL`26%g`yC{xaMwedvtKaih=^I3T3}@4} z1o){GH+S+6Qnn?$wM+l?ZaKW~Zeul)Y;-y9H^qpJ2XgoqmpfHE!>Xl5D6Lv#1S^IYkBY$B{-!A83=^EfE6ZDt|1`xkher9*5>e*jdzS z`PNli!ga@0lCQ*w+oA^@n1kF(^Nu&2J%q22JP73#{^2N!RMjb;CIin3@h(hGyg^D3(m9$`<8Ha zAS{Y$4x%bW6AF0_r~_RNKdgE&vM)NNAn*)^E?W-2N4jiIdz36;zesVk-@n>{2!8P2 zFDpG<*)TgNRTSledrvgQ9|&D1d**KUMK*_9x_D{>h}a?i>p4PD8pYtxz)NNMAr7?p z1K-uj{?SzLIX9(KJoSN0(ewfcxk91L|5w-kxY6(Z`R^{8)1f0GQ`QZ_ykB{SelPDC z088a@rYT+qLy<+wbt0oqDuM?YKbkL)O1h?$%u3{QH?W)lOf(zTCUT7 z6wyu^HUiMZP?Mg^Y9~FW4#xlZ@$$4AK-WF`sZ;44ZXrnTym{w)AmYlOv z*sVz~QX_x`-VV*a7da^%C+NexeD6xFx;Zje8R=2k%3+gv$uTo<7!PX!9oCL$vagQ% zmyu3+Qy-l3eriUPC9Y`xF&54GJx7*G^^^Yy`&Mifn)>G7#UCRYP?E@~{I{@H*)1(# z{fj_KkIn!N8Q3Zf6r_!1cJuOSe-p8@^T7W6M+~2tYu3*l{7wAQiI(|~ep~NlZvslV zvORRxSVooEabE3v@Jn`5!hNpDv$^N!NNoC7v;8Cr@=uU(dCz`kCYp7>K4on1E=to^ zDcW$oy-TQyulV9Tm}Yv@sxq*2OIGZySN^o(+}iT0(O`<8r?4&F_+FW=*PdCaea`tt zG105w>@*0^rlTHjS=h1Nh2`7o73IS!R>g$(p)enwR|D)RZk~KVC8BqE%}B?GlUM4U z>rYF!_@B)3L1gAHq7t|xGSxz6RwvzXH*4%|nw>AOZ;Z69GjNw&2-;RU$aM}6>r_}T zI6-#TC*twTHhmq!T^{}3PJ+NqL{s+`7}xI4lXHmInSwsGFCWw{;;mRyK*b$Hc3|m! z0(1Mc@^ITuO0D=&l6q+!5wVg-nk;Gl3}*h~ebC1ToBQO6$cZ!4l`QPKo1SCS`qk;& zjn%f>7WnmnD)3xLlQi|yu_yOv^;o)j)3e2Q)|bXmv!lmu{n}RWy~#`-bIyk+B1m_G z1;KXc{{4dBVx+I|m+go6xOM4WdgQXNUx+TAV>C=CGUaXt2Ab;f#_l!j?WE-hS z4RH$Rkx`Jh_!bL!)NNPOqieKhrCOjIKJc?Hm%nqL$0c%-i=Ti z0fC|6gWW}sf>%*r1Xl41Q!ya>^aVD!3E$$Li>m&)4}Q>upiJp=4<%w#N@Xs3|GnOV z@B%JK(hDGusY~#<2H#+YLEbsj7Wzq#7724j%@r*~>G5SmFFH^UwKFxKRYKkN#*#Me zCLrEjVm)=vP2o9f`_9yp1uJUB(|7;8aNMe3`xwnE@7j~=^Lr%o`x2hh`6rx5h?nN3 zKFn$F>E=iytW@$3+>wXsmq8n84pLhMezeM_(SvfvWSx&c|B>1QaSNK!2b|0>;5HNLzbDh! z#@bO)Pv6q$x1FT6*j01jR0dsO+~WnD(!B0F`^a(dO@Q&yx0tbU&jb5SQ;CVX;C7qd%&$1?1NVt*13-JON4FVA)i&e z@^UmCFw+TR$5fq(uRqwbR6twnj3^ zo_3Io;;vAYFif6fj(Gt+*Xacr({F%%qc1z~-`<&fU>UG8FqZ#}0=s6EbnENt9#Rnx zFZOO&aO;>B<+p(Dh$OMqG^m|t#xX3W{*-)|VNriY3E^&yH-u~8QE4#(+h9yud8PBs zP16h=O=ysN2pS7*nf%ilxffe0J^2@gsWO6=ypBWdew;``SsF;^Z+a|VhT-p{PFe60 zaBVOW`p+80DD7g+|32kFQrG{Atw3W4h?SE8@(TwyrG6qxY>Kq{iYGFl zGINRP6AABXSRoacYt1@`dwH}X1ci}wtlxP*be?uf9g3ttLD4I}GY`r|;R7L8w#{i^ zx^2)7Qh28-^1jF|M>oj)n`!3yM!qCjIsK(REW!ZHH(wQbRz3G1=ZRx*gHdOK5>yp*8wf)UW{cptr9~i zghp-N#;s_&!yA^b7~m>=PVYbRu~J%d{M4BqIo;54r5M_D96*ti0~Hbhu1~tA4f?AJQMtL#m2WirYUThw4c>55k%8l4{@P9iz3c_5V6;ZcOIl+_8%^pJC%~&#c2k zhI4 z1d9*Z6UH6eYq@=O=J+vA<`laylHOC;9vyI6|78#$pftdQ>z{e@zt8?(#6Pg+WhMTu z;P0&7zhD7zKr8zT$M;v@uXM*hp|wC>#($9?e}(^@_VXtg05}0|JOBSkK)-7Gl?w8w zE&{|qH2q2p`BlZQg|t6akOIk^zjx-ZWwl@7ziyWQ3IBriZ}@+<&VL2}nn?c%&LRB+ z{7YK>tA<~*w?8#lll`ILZ@JvB_`hcYf1&{ZeF^~Jzw&}#;eYqae}%uN{tNsMA1x~Z W0bCxxG05Qn-N4l2<8Lb)@c#f1*#0yC literal 0 HcmV?d00001 diff --git a/Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink/Program.cs b/Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink/Program.cs new file mode 100644 index 00000000..d5d51dcd --- /dev/null +++ b/Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink/Program.cs @@ -0,0 +1,40 @@ +using Syncfusion.DocIO; +using Syncfusion.DocIO.DLS; +using System; +using System.IO; + +namespace Replace_text_with_hyperlink +{ + internal class Program + { + static void Main(string[] args) + { + using (FileStream fileStreamPath = new FileStream(Path.GetFullPath(@"../../../Data/Input.docx"), FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) + { + //Opens an existing Word document. + using (WordDocument document = new WordDocument(fileStreamPath, FormatType.Docx)) + { + string textToReplace = "Syncfusion"; + //Initialize new text body part + TextBodyPart textBodyPart = new TextBodyPart(document); + //Initialize new paragraph + WParagraph paragraph = new WParagraph(document); + //Adds the paragraph into the text body part + textBodyPart.BodyItems.Add(paragraph); + //Appends web hyperlink to the paragraph + paragraph.AppendHyperlink("http://www.syncfusion.com", textToReplace, HyperlinkType.WebLink); + //Replaces all entries of given string in the document with text body part + document.Replace(textToReplace, textBodyPart, false, true); + //Clears the text body part + textBodyPart.Clear(); + //Creates file stream. + using (FileStream outputFileStream = new FileStream(Path.GetFullPath(@"../../../Data/Result.docx"), FileMode.Create, FileAccess.ReadWrite)) + { + //Saves the Word document to file stream. + document.Save(outputFileStream, FormatType.Docx); + } + } + } + } + } +} diff --git a/Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink/Replace-text-with-hyperlink.csproj b/Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink/Replace-text-with-hyperlink.csproj new file mode 100644 index 00000000..95a2339b --- /dev/null +++ b/Find-and-Replace/Replace-text-with-hyperlink/.NET Standard/Replace-text-with-hyperlink/Replace-text-with-hyperlink.csproj @@ -0,0 +1,13 @@ + + + + Exe + netcoreapp3.1 + Replace_text_with_hyperlink + + + + + + + From 12f20bff44e2f225d0f27d688db0a731f1bdf4f4 Mon Sep 17 00:00:00 2001 From: "sneha.biju" Date: Thu, 5 Oct 2023 13:04:54 +0530 Subject: [PATCH 2/4] Addressed the feedback --- .../Find-and-replace-text-with-TOC/Program.cs | 27 ++++++++++++++++--- .../Program.cs | 19 +++++++++++-- 2 files changed, 41 insertions(+), 5 deletions(-) diff --git a/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs b/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs index 600dab77..22aaa2ee 100644 --- a/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs +++ b/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs @@ -18,14 +18,15 @@ static void Main(string[] args) TextSelection[] selections = document.FindAll("[Insert TOC]", true, true); WTextRange textrange = selections[0].GetAsOneRange(); WParagraph paragraph = textrange.OwnerParagraph; + int index = paragraph.ChildEntities.IndexOf(textrange); //Remove the existing text paragraph.ChildEntities.Remove(textrange); - //Append the TOC - paragraph.AppendTOC(1, 3); + //Insert the TOC + InsertTOC(document, paragraph, index); //Update the TOC document.UpdateTableOfContents(); //Creates file stream. - using (FileStream outputFileStream = new FileStream(Path.GetFullPath(@"../../../Data/Result_check.docx"), FileMode.Create, FileAccess.ReadWrite)) + using (FileStream outputFileStream = new FileStream(Path.GetFullPath(@"../../../Data/Result.docx"), FileMode.Create, FileAccess.ReadWrite)) { //Saves the Word document to file stream. document.Save(outputFileStream, FormatType.Docx); @@ -33,5 +34,25 @@ static void Main(string[] args) } } } + /// + /// Insert the TOC in the index of given paragraph + /// + /// + /// + /// + private static void InsertTOC(WordDocument document, WParagraph ownerPara, int index) + { + //Create a new paragraph + WParagraph newPara = new WParagraph(document); + //Append TOC to the new paragraph + newPara.AppendTOC(1, 3); + //Insert the child entities of new paragraph to the owner paragraph at the given index. + for (int i = 0; i < newPara.ChildEntities.Count; i++) + { + ownerPara.ChildEntities.Insert(index, newPara.ChildEntities[i]); + index++; + i--; + } + } } } diff --git a/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Program.cs b/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Program.cs index 034833a8..b32b7114 100644 --- a/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Program.cs +++ b/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Program.cs @@ -30,13 +30,24 @@ static void Main(string[] args) } } } - } + } + /// + /// Create a bar chart inside a new paragraph. + /// + /// + /// private static WParagraph CreateBarChart(WordDocument document) { + //Create new paragraph WParagraph paragraph = new WParagraph(document); + //Append new chart WChart barchart = paragraph.AppendChart(400, 300); + //Set type as bar chart barchart.ChartType = OfficeChartType.Bar_Clustered; + //Add data for the bar chart AddBarChartData(barchart); + + //Set the other parts of the chart. barchart.ChartTitle = "Purchase Details"; barchart.ChartTitleArea.FontName = "Calibri"; barchart.ChartTitleArea.Size = 14; @@ -59,9 +70,13 @@ private static WParagraph CreateBarChart(WordDocument document) barchart.PrimaryCategoryAxis.MajorTickMark = OfficeTickMark.TickMark_None; barchart.PrimaryValueAxis.MajorTickMark = OfficeTickMark.TickMark_None; + //Return the new paragraph that has bar chart in it. return paragraph; } - + /// + /// Add the data for bar chart + /// + /// private static void AddBarChartData(WChart chart) { chart.ChartData.SetValue(1, 2, "Sum of Future Expenses"); From d94abb53b529410b528fffb862e41fbf15d4dc7f Mon Sep 17 00:00:00 2001 From: "sneha.biju" Date: Thu, 5 Oct 2023 14:26:44 +0530 Subject: [PATCH 3/4] Modified --- .../.NET standard/Find-and-replace-text-with-TOC/Program.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs b/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs index 22aaa2ee..b19e67e5 100644 --- a/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs +++ b/Find-and-Replace/Find-and-replace-text-with-TOC/.NET standard/Find-and-replace-text-with-TOC/Program.cs @@ -47,11 +47,10 @@ private static void InsertTOC(WordDocument document, WParagraph ownerPara, int i //Append TOC to the new paragraph newPara.AppendTOC(1, 3); //Insert the child entities of new paragraph to the owner paragraph at the given index. - for (int i = 0; i < newPara.ChildEntities.Count; i++) + for (int i = 0; i < newPara.ChildEntities.Count;) { ownerPara.ChildEntities.Insert(index, newPara.ChildEntities[i]); index++; - i--; } } } From 6223553f3d09d765fc607a5013f39f1c6488417c Mon Sep 17 00:00:00 2001 From: "sneha.biju" Date: Thu, 5 Oct 2023 14:34:02 +0530 Subject: [PATCH 4/4] Document modified --- .../Data/Input.docx | Bin 17040 -> 17047 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Data/Input.docx b/Find-and-Replace/Find-and-replace-text-with-chart/.NET Standard/Find-and-replace-text-with-chart/Data/Input.docx index 4083503924f2ee967dbc1c3b3b0588a3c961a7c7..1a6356e2f7b2eb3e6d14cd3309b0781c6082433b 100644 GIT binary patch delta 6231 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 delta 6281 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 I>3<&o2lAuC-v9sr