From 57fb98e9dbb8f4f707de4c905202f631a1310c7d Mon Sep 17 00:00:00 2001 From: vderyushev Date: Fri, 29 Mar 2024 13:20:36 +0300 Subject: [PATCH] Added new examples --- .../ApiExamples/ApiExamples.csproj | 2 +- Examples/ApiExamples/ApiExamples/ExCharts.cs | 55 +++++++++++++ .../ApiExamples/ExHtmlLoadOptions.cs | 15 ++++ Examples/ApiExamples/ApiExamples/ExImage.cs | 6 +- .../ApiExamples/ExOoxmlSaveOptions.cs | 20 +++++ .../ApiExamples/ExParagraphFormat.cs | 21 +++++ Examples/ApiExamples/ApiExamples/ExShape.cs | 74 ++++++++++++++++++ Examples/ApiExamples/ApiExamples/ExStyles.cs | 24 ++++++ Examples/Data/Html with FontFace.html | 16 ++++ Examples/Data/MyFonts/VeraSeBd.ttf | Bin 0 -> 58736 bytes 10 files changed, 228 insertions(+), 5 deletions(-) create mode 100644 Examples/Data/Html with FontFace.html create mode 100644 Examples/Data/MyFonts/VeraSeBd.ttf diff --git a/Examples/ApiExamples/ApiExamples/ApiExamples.csproj b/Examples/ApiExamples/ApiExamples/ApiExamples.csproj index aca254064..32f2fc4c4 100644 --- a/Examples/ApiExamples/ApiExamples/ApiExamples.csproj +++ b/Examples/ApiExamples/ApiExamples/ApiExamples.csproj @@ -128,7 +128,7 @@ - + diff --git a/Examples/ApiExamples/ApiExamples/ExCharts.cs b/Examples/ApiExamples/ApiExamples/ExCharts.cs index 3b8197f4c..42d2fceba 100644 --- a/Examples/ApiExamples/ApiExamples/ExCharts.cs +++ b/Examples/ApiExamples/ApiExamples/ExCharts.cs @@ -1712,5 +1712,60 @@ public void DataTable() doc.Save(ArtifactsDir + "Charts.DataTable.docx"); //ExEnd:DataTable } + + [Test] + public void ChartFormat() + { + //ExStart:ChartFormat + //GistId:5f20ac02cb42c6b08481aa1c5b0cd3db + //ExFor:Chart.Format + //ExFor:ChartTitle.Format + //ExFor:ChartAxisTitle.Format + //ExFor:ChartLegend.Format + //ExSummary:Shows how to use chart formating. + Document doc = new Document(); + DocumentBuilder builder = new DocumentBuilder(doc); + + Shape shape = builder.InsertChart(ChartType.Column, 432, 252); + Chart chart = shape.Chart; + + // Delete series generated by default. + ChartSeriesCollection series = chart.Series; + series.Clear(); + + string[] categories = new string[] { "Category 1", "Category 2" }; + series.Add("Series 1", categories, new double[] { 1, 2 }); + series.Add("Series 2", categories, new double[] { 3, 4 }); + + // Format chart background. + chart.Format.Fill.Solid(Color.DarkSlateGray); + + // Hide axis tick labels. + chart.AxisX.TickLabels.Position = AxisTickLabelPosition.None; + chart.AxisY.TickLabels.Position = AxisTickLabelPosition.None; + + // Format chart title. + chart.Title.Format.Fill.Solid(Color.LightGoldenrodYellow); + + // Format axis title. + chart.AxisX.Title.Show = true; + chart.AxisX.Title.Format.Fill.Solid(Color.LightGoldenrodYellow); + + // Format legend. + chart.Legend.Format.Fill.Solid(Color.LightGoldenrodYellow); + + doc.Save(ArtifactsDir + "Charts.ChartFormat.docx"); + //ExEnd:ChartFormat + + doc = new Document(ArtifactsDir + "Charts.ChartFormat.docx"); + + shape = (Shape)doc.GetChild(NodeType.Shape, 0, true); + chart = shape.Chart; + + Assert.AreEqual(Color.DarkSlateGray.ToArgb(), chart.Format.Fill.Color.ToArgb()); + Assert.AreEqual(Color.LightGoldenrodYellow.ToArgb(), chart.Title.Format.Fill.Color.ToArgb()); + Assert.AreEqual(Color.LightGoldenrodYellow.ToArgb(), chart.AxisX.Title.Format.Fill.Color.ToArgb()); + Assert.AreEqual(Color.LightGoldenrodYellow.ToArgb(), chart.Legend.Format.Fill.Color.ToArgb()); + } } } diff --git a/Examples/ApiExamples/ApiExamples/ExHtmlLoadOptions.cs b/Examples/ApiExamples/ApiExamples/ExHtmlLoadOptions.cs index d89790860..8ea74806f 100644 --- a/Examples/ApiExamples/ApiExamples/ExHtmlLoadOptions.cs +++ b/Examples/ApiExamples/ApiExamples/ExHtmlLoadOptions.cs @@ -328,5 +328,20 @@ public void BlockImport(BlockImportMode blockImportMode) doc.Save(ArtifactsDir + "HtmlLoadOptions.BlockImport.docx"); //ExEnd } + + [Test] + public void FontFaceRules() + { + //ExStart:FontFaceRules + //GistId:5f20ac02cb42c6b08481aa1c5b0cd3db + //ExFor:HtmlLoadOptions.SupportFontFaceRules + //ExSummary:Shows how to load declared "@font-face" rules. + HtmlLoadOptions loadOptions = new HtmlLoadOptions(); + loadOptions.SupportFontFaceRules = true; + Document doc = new Document(MyDir + "Html with FontFace.html", loadOptions); + + Assert.AreEqual("Bitstream Vera Serif Bold", doc.FontInfos[0].Name); + //ExEnd:FontFaceRules + } } } \ No newline at end of file diff --git a/Examples/ApiExamples/ApiExamples/ExImage.cs b/Examples/ApiExamples/ApiExamples/ExImage.cs index a66f38ff2..c0459588e 100644 --- a/Examples/ApiExamples/ApiExamples/ExImage.cs +++ b/Examples/ApiExamples/ApiExamples/ExImage.cs @@ -410,14 +410,13 @@ public void ScaleImage() Assert.AreEqual(300.0d, imageSize.HeightPoints); } -#if NET5_0_OR_GREATER [Test] public void InsertWebpImage() { //ExStart:InsertWebpImage //GistId:e386727403c2341ce4018bca370a5b41 //ExFor:DocumentBuilder.InsertImage(String) - //ExSummary:Shows how to insert WebP image (only .NetStandard) + //ExSummary:Shows how to insert WebP image. Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); @@ -433,13 +432,12 @@ public void ReadWebpImage() //ExStart:ReadWebpImage //GistId:e386727403c2341ce4018bca370a5b41 //ExFor:ImageType - //ExSummary:Shows how to read WebP image (only .NetStandard) + //ExSummary:Shows how to read WebP image. Document doc = new Document(MyDir + "Document with WebP image.docx"); Shape shape = (Shape)doc.GetChild(NodeType.Shape, 0, true); Assert.AreEqual(ImageType.WebP, shape.ImageData.ImageType); //ExEnd:ReadWebpImage } -#endif } } \ No newline at end of file diff --git a/Examples/ApiExamples/ApiExamples/ExOoxmlSaveOptions.cs b/Examples/ApiExamples/ApiExamples/ExOoxmlSaveOptions.cs index 1091361d4..dc2cfb14e 100644 --- a/Examples/ApiExamples/ApiExamples/ExOoxmlSaveOptions.cs +++ b/Examples/ApiExamples/ApiExamples/ExOoxmlSaveOptions.cs @@ -10,6 +10,7 @@ using System.Drawing; using System.IO; using Aspose.Words; +using Aspose.Words.DigitalSignatures; using Aspose.Words.Drawing; using Aspose.Words.Lists; using Aspose.Words.Loading; @@ -402,5 +403,24 @@ public void Zip64ModeOption() new OoxmlSaveOptions { Zip64Mode = Zip64Mode.Always }); //ExEnd:Zip64ModeOption } + + [Test] + public void DigitalSignature() + { + //ExStart:DigitalSignature + //GistId:5f20ac02cb42c6b08481aa1c5b0cd3db + //ExFor:OoxmlSaveOptions.DigitalSignatureDetails + //ExSummary:Shows how to sign OOXML document. + Document doc = new Document(MyDir + "Document.docx"); + + CertificateHolder certificateHolder = CertificateHolder.Create(MyDir + "morzal.pfx", "aw"); + OoxmlSaveOptions saveOptions = new OoxmlSaveOptions(); + saveOptions.DigitalSignatureDetails = new DigitalSignatureDetails( + certificateHolder, + new SignOptions() { Comments = "Some comments", SignTime = DateTime.Now }); + + doc.Save(ArtifactsDir + "OoxmlSaveOptions.DigitalSignature.docx", saveOptions); + //ExEnd:DigitalSignature + } } } diff --git a/Examples/ApiExamples/ApiExamples/ExParagraphFormat.cs b/Examples/ApiExamples/ApiExamples/ExParagraphFormat.cs index 283cf16d2..a0c338376 100644 --- a/Examples/ApiExamples/ApiExamples/ExParagraphFormat.cs +++ b/Examples/ApiExamples/ApiExamples/ExParagraphFormat.cs @@ -528,5 +528,26 @@ public void ParagraphBaselineAlignment() format = doc.FirstSection.Body.Paragraphs[0].ParagraphFormat; Assert.AreEqual(BaselineAlignment.Top, format.BaselineAlignment); } + + [Test] + public void MirrorIndents() + { + //ExStart:MirrorIndents + //GistId:5f20ac02cb42c6b08481aa1c5b0cd3db + //ExFor:ParagraphFormat.MirrorIndents + //ExSummary:Show how to make left and right indents the same. + Document doc = new Document(MyDir + "Document.docx"); + ParagraphFormat format = doc.FirstSection.Body.Paragraphs[0].ParagraphFormat; + + format.MirrorIndents = true; + + doc.Save(ArtifactsDir + "ParagraphFormat.MirrorIndents.docx"); + //ExEnd:MirrorIndents + + doc = new Document(ArtifactsDir + "ParagraphFormat.MirrorIndents.docx"); + format = doc.FirstSection.Body.Paragraphs[0].ParagraphFormat; + + Assert.AreEqual(true, format.MirrorIndents); + } } } diff --git a/Examples/ApiExamples/ApiExamples/ExShape.cs b/Examples/ApiExamples/ApiExamples/ExShape.cs index b7f413c8d..68e8867f4 100644 --- a/Examples/ApiExamples/ApiExamples/ExShape.cs +++ b/Examples/ApiExamples/ApiExamples/ExShape.cs @@ -3106,5 +3106,79 @@ public void TextBoxOleControl() Assert.AreEqual("Updated text", textBoxControl.Text); //ExEnd:TextBoxOleControl } + + [Test] + public void Glow() + { + //ExStart:Glow + //GistId:5f20ac02cb42c6b08481aa1c5b0cd3db + //ExFor:ShapeBase.Glow + //ExFor:GlowFormat.Color + //ExFor:GlowFormat.Radius + //ExFor:GlowFormat.Transparency + //ExFor:GlowFormat.Remove() + //ExSummary:Shows how to interact with glow shape effect. + Document doc = new Document(MyDir + "Various shapes.docx"); + Shape shape = (Shape)doc.GetChild(NodeType.Shape, 0, true); + + shape.Glow.Color = Color.Salmon; + shape.Glow.Radius = 30; + shape.Glow.Transparency = 0.15; + + doc.Save(ArtifactsDir + "Shape.Glow.docx"); + + doc = new Document(ArtifactsDir + "Shape.Glow.docx"); + shape = (Shape)doc.GetChild(NodeType.Shape, 0, true); + + Assert.AreEqual(Color.FromArgb(217, 250, 128, 114).ToArgb(), shape.Glow.Color.ToArgb()); + Assert.AreEqual(30, shape.Glow.Radius); + Assert.AreEqual(0.15d, shape.Glow.Transparency, 0.01d); + + shape.Glow.Remove(); + + Assert.AreEqual(Color.Black.ToArgb(), shape.Glow.Color.ToArgb()); + Assert.AreEqual(0, shape.Glow.Radius); + Assert.AreEqual(0, shape.Glow.Transparency); + //ExEnd:Glow + } + + [Test] + public void Reflection() + { + //ExStart:Reflection + //GistId:5f20ac02cb42c6b08481aa1c5b0cd3db + //ExFor:ShapeBase.Reflection + //ExFor:ReflectionFormat.Size + //ExFor:ReflectionFormat.Blur + //ExFor:ReflectionFormat.Transparency + //ExFor:ReflectionFormat.Distance + //ExFor:ReflectionFormat.Remove() + //ExSummary:Shows how to interact with reflection shape effect. + Document doc = new Document(MyDir + "Various shapes.docx"); + Shape shape = (Shape)doc.GetChild(NodeType.Shape, 0, true); + + shape.Reflection.Transparency = 0.37; + shape.Reflection.Size = 0.48; + shape.Reflection.Blur = 17.5; + shape.Reflection.Distance = 9.2; + + doc.Save(ArtifactsDir + "Shape.Reflection.docx"); + + doc = new Document(ArtifactsDir + "Shape.Reflection.docx"); + shape = (Shape)doc.GetChild(NodeType.Shape, 0, true); + + Assert.AreEqual(0.37d, shape.Reflection.Transparency, 0.01d); + Assert.AreEqual(0.48d, shape.Reflection.Size, 0.01d); + Assert.AreEqual(17.5d, shape.Reflection.Blur, 0.01d); + Assert.AreEqual(9.2d, shape.Reflection.Distance, 0.01d); + + shape.Reflection.Remove(); + + Assert.AreEqual(0, shape.Reflection.Transparency); + Assert.AreEqual(0, shape.Reflection.Size); + Assert.AreEqual(0, shape.Reflection.Blur); + Assert.AreEqual(0, shape.Reflection.Distance); + //ExEnd:Reflection + } } } diff --git a/Examples/ApiExamples/ApiExamples/ExStyles.cs b/Examples/ApiExamples/ApiExamples/ExStyles.cs index 0f1381a37..3cd961af2 100644 --- a/Examples/ApiExamples/ApiExamples/ExStyles.cs +++ b/Examples/ApiExamples/ApiExamples/ExStyles.cs @@ -397,5 +397,29 @@ public void StylePriority() doc.Save(ArtifactsDir + "Styles.StylePriority.docx"); //ExEnd:StylePriority } + + [Test] + public void LinkedStyleName() + { + //ExStart:LinkedStyleName + //GistId:5f20ac02cb42c6b08481aa1c5b0cd3db + //ExFor:Style.LinkedStyleName + //ExSummary:Shows how to link styles among themselves. + Document doc = new Document(); + + Style styleHeading1 = doc.Styles[StyleIdentifier.Heading1]; + + Style styleHeading1Char = doc.Styles.Add(StyleType.Character, "Heading 1 Char"); + styleHeading1Char.Font.Name = "Verdana"; + styleHeading1Char.Font.Bold = true; + styleHeading1Char.Font.Border.LineStyle = LineStyle.Dot; + styleHeading1Char.Font.Border.LineWidth = 15; + + styleHeading1.LinkedStyleName = "Heading 1 Char"; + + Assert.AreEqual("Heading 1 Char", styleHeading1.LinkedStyleName); + Assert.AreEqual("Heading 1", styleHeading1Char.LinkedStyleName); + //ExEnd:LinkedStyleName + } } } diff --git a/Examples/Data/Html with FontFace.html b/Examples/Data/Html with FontFace.html new file mode 100644 index 000000000..1fc787ae4 --- /dev/null +++ b/Examples/Data/Html with FontFace.html @@ -0,0 +1,16 @@ + + + Web Font Sample + + + + This is Bitstream Vera Serif Bold. + + \ No newline at end of file diff --git a/Examples/Data/MyFonts/VeraSeBd.ttf b/Examples/Data/MyFonts/VeraSeBd.ttf new file mode 100644 index 0000000000000000000000000000000000000000..672bf761fe9ebf408371373f84d7203358766854 GIT binary patch literal 58736 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