예제 #1
0
        public void IsBold_Setter_AddsBoldForPlaceholderTextFont(SCPresentation presentation, SlideElementQuery portionRequest)
        {
            // Arrange
            MemoryStream mStream = new ();
            IPortion     portion = TestHelper.GetParagraphPortion(presentation, portionRequest);

            // Act
            portion.Font.IsBold = true;

            // Assert
            portion.Font.IsBold.Should().BeTrue();

            presentation.SaveAs(mStream);
            presentation = SCPresentation.Open(mStream, false);
            portion      = TestHelper.GetParagraphPortion(presentation, portionRequest);
            portion.Font.IsBold.Should().BeTrue();
        }
예제 #2
0
        public void SlidesRemove_RemovesFirstSlideFromPresentation_WhenFirstSlideObjectWasPassed(byte[] pptxBytes, int expectedSlidesCount)
        {
            // Arrange
            SCPresentation presentation  = SCPresentation.Open(pptxBytes, true);
            ISlide         removingSlide = presentation.Slides[0];
            var            mStream       = new MemoryStream();

            // Act
            presentation.Slides.Remove(removingSlide);

            // Assert
            presentation.Slides.Should().HaveCount(expectedSlidesCount);

            presentation.SaveAs(mStream);
            presentation = SCPresentation.Open(mStream, false);
            presentation.Slides.Should().HaveCount(expectedSlidesCount);
        }
예제 #3
0
        public void Color_SetterSetsGreenColorForFont_WhenGreenIsSpecified(SCPresentation presentation, SlideElementQuery portionQuery)
        {
            // Arrange
            Color        greenColor  = ColorTranslator.FromHtml("#008000");
            MemoryStream mStream     = new ();
            IColorFormat colorFormat = TestHelper.GetParagraphPortion(presentation, portionQuery).Font.ColorFormat;

            // Act
            colorFormat.Color = greenColor;

            // Assert
            colorFormat.Color.Should().Be(greenColor);

            presentation.SaveAs(mStream);
            presentation = SCPresentation.Open(mStream, false);
            colorFormat  = TestHelper.GetParagraphPortion(presentation, portionQuery).Font.ColorFormat;
            colorFormat.Color.Should().Be(greenColor);
        }
예제 #4
0
        public void Size_SetterChangesFontSizeOfParagraphPortion()
        {
            // Arrange
            int            newFontSize    = 28;
            var            savedPreStream = new MemoryStream();
            SCPresentation presentation   = SCPresentation.Open(Resources._001, true);
            IPortion       portion        = GetPortion(presentation);
            int            oldFontSize    = portion.Font.Size;

            // Act
            portion.Font.Size = newFontSize;
            presentation.SaveAs(savedPreStream);

            // Assert
            presentation = SCPresentation.Open(savedPreStream, false);
            portion      = GetPortion(presentation);
            portion.Font.Size.Should().NotBe(oldFontSize);
            portion.Font.Size.Should().Be(newFontSize);
            portion.Font.SizeCanBeChanged().Should().BeTrue();
        }
예제 #5
0
        public void ParagraphText_SetterChangesParagraphText(
            SCPresentation presentation,
            SlideElementQuery prRequest,
            string newPrText,
            int expectedNumPortions)
        {
            // Arrange
            IParagraph paragraph          = TestHelper.GetParagraph(presentation, prRequest);
            var        presentationStream = new MemoryStream();

            // Act
            paragraph.Text = newPrText;

            // Assert
            paragraph.Text.Should().BeEquivalentTo(newPrText);
            paragraph.Portions.Should().HaveCount(expectedNumPortions);

            presentation.SaveAs(presentationStream);
            presentation.Close();
            paragraph = TestHelper.GetParagraph(presentationStream, prRequest);
            paragraph.Text.Should().BeEquivalentTo(newPrText);
            paragraph.Portions.Should().HaveCount(expectedNumPortions);
        }
예제 #6
0
        public void ParagraphsAdd_AddsANewTextParagraphAtTheEndOfTheTextBoxAndReturnsAddedParagraph()
        {
            // Arrange
            const string   TEST_TEXT             = "ParagraphsAdd";
            var            mStream               = new MemoryStream();
            SCPresentation presentation          = SCPresentation.Open(Resources._001, true);
            ITextBox       textBox               = ((IAutoShape)presentation.Slides[0].Shapes.First(sp => sp.Id == 4)).TextBox;
            int            originParagraphsCount = textBox.Paragraphs.Count;

            // Act
            IParagraph newParagraph = textBox.Paragraphs.Add();

            newParagraph.Text = TEST_TEXT;

            // Assert
            textBox.Paragraphs.Last().Text.Should().BeEquivalentTo(TEST_TEXT);
            textBox.Paragraphs.Should().HaveCountGreaterThan(originParagraphsCount);

            presentation.SaveAs(mStream);
            presentation = SCPresentation.Open(mStream, false);
            textBox      = ((IAutoShape)presentation.Slides[0].Shapes.First(sp => sp.Id == 4)).TextBox;
            textBox.Paragraphs.Last().Text.Should().BeEquivalentTo(TEST_TEXT);
            textBox.Paragraphs.Should().HaveCountGreaterThan(originParagraphsCount);
        }