Files

89 lines
2.4 KiB
C#
Raw Permalink Normal View History

using System;
using System.IO;
using System.Linq;
2021-10-29 01:23:46 +02:00
using NUnit.Framework;
using QuestPDF.Drawing.Exceptions;
2021-10-29 01:23:46 +02:00
using QuestPDF.Examples.Engine;
using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
2021-10-29 01:23:46 +02:00
namespace QuestPDF.Examples
{
public class ImageExamples
{
[Test]
public void LoadingImage()
{
RenderingTest
.Create()
.PageSize(PageSizes.A5)
.ProducePdf()
.ShowResults()
.Render(page =>
{
page.Padding(25).Column(column =>
2021-10-29 01:23:46 +02:00
{
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);
2021-10-29 01:23:46 +02:00
});
});
}
2022-10-19 20:08:35 +02:00
[Test]
public void DynamicImage()
{
RenderingTest
.Create()
.PageSize(450, 350)
.ProducePdf()
.ShowResults()
.Render(page =>
{
page.Padding(25)
.Image(Placeholders.Image);
});
}
2021-10-29 01:23:46 +02:00
[Test]
public void Exception()
{
Assert.Throws<DocumentComposeException>(() =>
{
RenderingTest
.Create()
.PageSize(PageSizes.A2)
.ProducePdf()
.ShowResults()
.Render(page => page.Image("non_existent.png"));
});
2021-10-29 01:23:46 +02:00
}
2023-04-30 11:28:14 +02:00
[Test]
2023-04-30 11:28:14 +02:00
public void ImageResolutionScaling()
{
2023-04-30 11:28:14 +02:00
var image = Image.FromFile("large-image.jpg");
Document
.Create(document =>
{
2023-04-30 11:28:14 +02:00
document.Page(page =>
{
page.Size(210, 210);
page.Margin(50);
page.Content().Image(image);
});
})
.GeneratePdf($"test.pdf");
}
2021-10-29 01:23:46 +02:00
}
}