UNPKG

@pdfme/pdf-lib

Version:

Create and modify PDF files with JavaScript

56 lines 2.96 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const fs_1 = __importDefault(require("fs")); const core_1 = require("../../../src/core"); const catUnicornJpg = fs_1.default.readFileSync('./assets/images/cat_riding_unicorn.jpg'); const minionsLaughing = fs_1.default.readFileSync('./assets/images/minions_laughing.jpg'); const cmykJpg = fs_1.default.readFileSync('./assets/images/cmyk_colorspace.jpg'); describe(`JpegEmbedder`, () => { it(`can be constructed with JpegEmbedder.for(...)`, async () => { const embedder = await core_1.JpegEmbedder.for(catUnicornJpg); expect(embedder).toBeInstanceOf(core_1.JpegEmbedder); }); it(`can embed JPEG images into PDFContexts without a predefined ref`, async () => { const context = core_1.PDFContext.create(); const embedder = await core_1.JpegEmbedder.for(catUnicornJpg); expect(context.enumerateIndirectObjects().length).toBe(0); const ref = await embedder.embedIntoContext(context); expect(context.enumerateIndirectObjects().length).toBe(1); expect(context.lookup(ref)).toBeInstanceOf(core_1.PDFRawStream); }); it(`can embed JPEG images into PDFContexts with a predefined ref`, async () => { const context = core_1.PDFContext.create(); const predefinedRef = core_1.PDFRef.of(9999); const embedder = await core_1.JpegEmbedder.for(catUnicornJpg); expect(context.enumerateIndirectObjects().length).toBe(0); const ref = await embedder.embedIntoContext(context, predefinedRef); expect(context.enumerateIndirectObjects().length).toBe(1); expect(context.lookup(predefinedRef)).toBeInstanceOf(core_1.PDFRawStream); expect(ref).toBe(predefinedRef); }); it(`can extract properties of JPEG images (1)`, async () => { const embedder = await core_1.JpegEmbedder.for(catUnicornJpg); expect(embedder.bitsPerComponent).toBe(8); expect(embedder.height).toBe(1080); expect(embedder.width).toBe(1920); expect(embedder.colorSpace).toBe('DeviceRGB'); }); it(`can extract properties of JPEG images (2)`, async () => { const embedder = await core_1.JpegEmbedder.for(minionsLaughing); expect(embedder.bitsPerComponent).toBe(8); expect(embedder.height).toBe(354); expect(embedder.width).toBe(630); expect(embedder.colorSpace).toBe('DeviceRGB'); }); it(`can extract properties of JPEG images (3)`, async () => { const embedder = await core_1.JpegEmbedder.for(cmykJpg); expect(embedder.bitsPerComponent).toBe(8); expect(embedder.height).toBe(333); expect(embedder.width).toBe(500); expect(embedder.colorSpace).toBe('DeviceCMYK'); }); }); //# sourceMappingURL=JpegEmbedder.spec.js.map