mirror of
https://github.com/cyanfish/naps2.git
synced 2024-10-04 03:17:07 +03:00
79 lines
2.7 KiB
C#
79 lines
2.7 KiB
C#
using NAPS2.Pdf;
|
|
using NAPS2.Sdk.Tests.Asserts;
|
|
using Xunit;
|
|
|
|
namespace NAPS2.Sdk.Tests.Pdf;
|
|
|
|
public class PdfiumPdfRendererTests : ContextualTests
|
|
{
|
|
[Fact]
|
|
public void RenderPdfFromWord()
|
|
{
|
|
var path = CopyResourceToFile(PdfResources.word_generated_pdf, "test.pdf");
|
|
|
|
var images = new PdfiumPdfRenderer().Render(ImageContext, path, PdfRenderSize.Default).ToList();
|
|
|
|
Assert.Equal(2, images.Count);
|
|
ImageAsserts.Similar(PdfResources.word_p1, images[0], ignoreResolution: true);
|
|
ImageAsserts.Similar(PdfResources.word_p2, images[1], ignoreResolution: true);
|
|
}
|
|
|
|
[Fact]
|
|
public void RenderPlainImagePdf()
|
|
{
|
|
var path = CopyResourceToFile(PdfResources.image_pdf, "test.pdf");
|
|
|
|
var images = new PdfiumPdfRenderer().Render(ImageContext, path, PdfRenderSize.Default).ToList();
|
|
|
|
Assert.Single(images);
|
|
// This also verifies that the renderer gets the actual image dpi (72)
|
|
ImageAsserts.Similar(ImageResources.dog, images[0]);
|
|
}
|
|
|
|
[Fact]
|
|
public void RenderImageWithTextPdf()
|
|
{
|
|
var path = CopyResourceToFile(PdfResources.image_with_text_pdf, "test.pdf");
|
|
|
|
var images = new PdfiumPdfRenderer().Render(ImageContext, path, PdfRenderSize.Default).ToList();
|
|
|
|
Assert.Single(images);
|
|
// This also verifies that the renderer gets the actual image dpi (72)
|
|
ImageAsserts.Similar(ImageResources.ocr_test, images[0], ignoreResolution: true);
|
|
}
|
|
|
|
[Fact]
|
|
public void RenderCmykImagePdf()
|
|
{
|
|
var path = CopyResourceToFile(PdfResources.image_pdf_cmyk, "test.pdf");
|
|
|
|
var images = new PdfiumPdfRenderer().Render(ImageContext, path, PdfRenderSize.Default).ToList();
|
|
|
|
Assert.Single(images);
|
|
// This also verifies that the renderer gets the actual image dpi (72)
|
|
ImageAsserts.Similar(ImageResources.dog, images[0]);
|
|
}
|
|
|
|
[Fact]
|
|
public void RenderBlackAndWhiteImagePdf()
|
|
{
|
|
var path = CopyResourceToFile(PdfResources.image_pdf_bw, "test.pdf");
|
|
|
|
var images = new PdfiumPdfRenderer().Render(ImageContext, path, PdfRenderSize.Default).ToList();
|
|
|
|
Assert.Single(images);
|
|
// This also verifies that the renderer gets the actual image dpi (72)
|
|
ImageAsserts.Similar(ImageResources.dog_bw, images[0]);
|
|
}
|
|
|
|
[Fact]
|
|
public void RenderFormsAndAnnotations()
|
|
{
|
|
var path = CopyResourceToFile(PdfResources.filled_form_annotated, "test.pdf");
|
|
|
|
var images = new PdfiumPdfRenderer().Render(ImageContext, path, PdfRenderSize.Default).ToList();
|
|
|
|
Assert.Single(images);
|
|
ImageAsserts.Similar(ImageResources.filled_form_annotated, images[0], ImageAsserts.XPLAT_RMSE_THRESHOLD);
|
|
}
|
|
} |