ImageExamples.cs 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using System.IO;
  2. using NUnit.Framework;
  3. using QuestPDF.Drawing.Exceptions;
  4. using QuestPDF.Examples.Engine;
  5. using QuestPDF.Fluent;
  6. using QuestPDF.Helpers;
  7. namespace QuestPDF.Examples
  8. {
  9. public class ImageExamples
  10. {
  11. [Test]
  12. public void LoadingImage()
  13. {
  14. RenderingTest
  15. .Create()
  16. .PageSize(PageSizes.A5)
  17. .ProducePdf()
  18. .ShowResults()
  19. .Render(page =>
  20. {
  21. page.Padding(25).Column(column =>
  22. {
  23. column.Spacing(25);
  24. column.Item().Image("logo.png");
  25. var binaryData = File.ReadAllBytes("logo.png");
  26. column.Item().Image(binaryData);
  27. using var stream = new FileStream("logo.png", FileMode.Open);
  28. column.Item().Image(stream);
  29. });
  30. });
  31. }
  32. [Test]
  33. public void Exception()
  34. {
  35. Assert.Throws<DocumentComposeException>(() =>
  36. {
  37. RenderingTest
  38. .Create()
  39. .PageSize(PageSizes.A2)
  40. .ProducePdf()
  41. .ShowResults()
  42. .Render(page => page.Image("non_existent.png"));
  43. });
  44. }
  45. }
  46. }