Extends Verify to allow verification of documents via ImageMagick.NET.
Перейти к файлу
Simon Cropp 32801382be refs and cleanup 2024-11-20 21:52:37 +11:00
.github
src refs and cleanup 2024-11-20 21:52:37 +11:00
.gitattributes Support controlling rendered images and pdf transparent replacement color (#587) 2024-05-10 19:20:05 +10:00
.gitignore
code_of_conduct.md
license.txt
readme.md docs 2024-07-20 08:53:41 +10:00

readme.md

Verify.ImageMagick

Discussions Build status NuGet Status

Extends Verify to allow verification of documents via Magick.NET.

See Milestones for release notes.

Converts documents pdfs to png for verification.

Contains comparers for png, jpg, bmp, and tiff.

NuGet package

https://nuget.org/packages/Verify.ImageMagick/

Usage

[ModuleInitializer]
public static void Init()
{
    VerifyImageMagick.Initialize();
    VerifyImageMagick.RegisterComparers(threshold: 0.05);
}

snippet source | anchor

Initialize registers the pdf to png converter and all comparers.

PDF converter

To register only the pdf to png converter:

VerifyImageMagick.RegisterPdfToPngConverter();

Verify a file

[Test]
public Task VerifyPdf() =>
    VerifyFile("sample.pdf");

snippet source | anchor

Verify a Stream

[Test]
public Task VerifyPdfStream()
{
    var stream = new MemoryStream(File.ReadAllBytes("sample.pdf"));
    return Verify(stream, "pdf");
}

snippet source | anchor

Result

Samples.VerifyPdf#00.verified.png:

Image Comparers

The following will use ImageMagick to compare the images instead of the default binary comparison.

[Test]
public Task CompareImage() =>
    VerifyFile("sample.jpg");

snippet source | anchor

Register all comparers

All comparers can be registered:

VerifyImageMagick.RegisterComparers();

Override transparent background

For images with a transparent background, that background can be overridden:

[Test]
public Task BackgroundColor() =>
    VerifyFile("transparent.png")
        .ImageMagickBackground(MagickColors.Blue);

snippet source | anchor

Open password-protected PDFs

For password-protected PDF, the password can be provided to allow verification:

[Test]
public Task PdfPassword() =>
    VerifyFile("password.pdf")
        .ImageMagickPdfPassword("password");

snippet source | anchor

Icon

Swirl designed by Philipp Petzka from The Noun Project.