| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- using System;
- using System.IO;
- using System.Linq;
- using NUnit.Framework;
- using QuestPDF.Drawing.Exceptions;
- using QuestPDF.Examples.Engine;
- using QuestPDF.Fluent;
- using QuestPDF.Helpers;
- using QuestPDF.Infrastructure;
- namespace QuestPDF.Examples
- {
- public class ImageExamples
- {
- [Test]
- public void LoadingImage()
- {
- RenderingTest
- .Create()
- .PageSize(PageSizes.A5)
- .ProducePdf()
- .ShowResults()
- .Render(page =>
- {
- page.Padding(25).Column(column =>
- {
- column.Spacing(25);
-
- column.Item().Image("logo.png");
- var binaryData = File.ReadAllBytes("logo.png");
- column.Item().Image(binaryData);
-
- using var stream = new FileStream("logo.png", FileMode.Open);
- column.Item().Image(stream);
- });
- });
- }
-
- [Test]
- public void DynamicImage()
- {
- RenderingTest
- .Create()
- .PageSize(450, 350)
- .ProducePdf()
- .ShowResults()
- .Render(page =>
- {
- page.Padding(25)
- .Image(Placeholders.Image);
- });
- }
-
- [Test]
- public void Exception()
- {
- Assert.Throws<DocumentComposeException>(() =>
- {
- RenderingTest
- .Create()
- .PageSize(PageSizes.A2)
- .ProducePdf()
- .ShowResults()
- .Render(page => page.Image("non_existent.png"));
- });
- }
-
-
-
- [Test]
- public void ImageResolutionScaling()
- {
- var image = Image.FromFile("large-image.jpg");
-
- Document
- .Create(document =>
- {
- document.Page(page =>
- {
- page.Size(210, 210);
- page.Margin(50);
- page.Content().Image(image);
- });
- })
- .GeneratePdf($"test.pdf");
- }
- }
- }
|