1.4.0 • Published 1 year ago

pdf-visual-compare v1.4.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

pdf-visual-compare

Visual regression testing library for PDFs in Js/Ts without binary and OS dependencies.

Tests on push

Getting started

Installation:

npm install -D pdf-visual-compare

Example

  const result: boolean = await comparePdf('./pdf1.pdf', './pdf2.pdf');

  // If you want to configure comparing process, use the following props

  const result: boolean = await comparePdf('./pdf1.pdf', './pdf2.pdf', {
  diffsOutputFolder?: string; // Folder to write output PNG files with differences
  pdfToPngConvertOptions?: {
    viewportScale: 2.0, // The desired scale of PNG viewport. Default value is 1.0.
    disableFontFace: false, //When `false`, fonts will be rendered using a built-in font renderer that constructs the glyphs with primitive path commands. Default value is true.
    useSystemFonts: false, // When `true`, fonts that aren't embedded in the PDF document will fallback to a system font. Default value is false.
    pdfFilePassword: 'pa$$word', // Password for encrypted PDF.
    outputFolder: 'output/folder', // Folder to write output PNG files. If not specified, PNG output will be available only as a Buffer content, without saving to a file.
    outputFileMask: 'buffer', // Output filename mask. Default value is 'buffer'.
    pagesToProcess: [1, 3, 11],   // Subset of pages to convert (first page = 1), other pages will be skipped if specified.
    strictPagesToProcess: false // When `true`, will throw an error if specified page number in pagesToProcess is invalid, otherwise will skip invalid page. Default value is false.
    verbosityLevel: 0 // Verbosity level. ERRORS: 0, WARNINGS: 1, INFOS: 5. Default value is 0.
  };
  excludedAreas?: ExcludedPageArea[]; // Areas list to exclude from comparing for each PDF page. Empty array by default.
  compareThreshold?: number; // Comparing threshold, ranges from 0 to 1. Smaller values make the comparison more sensitive. 0.1 by default.
});

Buy Me A Coffee

In case you want support my work

"Buy Me A Coffee"

1.4.0

1 year ago

1.3.0

2 years ago

1.2.0

2 years ago

1.1.1

2 years ago

1.1.0

2 years ago

1.2.1

2 years ago

1.0.0

2 years ago

0.0.10

2 years ago

0.0.8

2 years ago

0.0.3

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.6

2 years ago

0.0.2

3 years ago

0.0.1

3 years ago