Socket
Socket
Sign inDemoInstall

decode-tiff

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

decode-tiff - npm Package Compare versions

Comparing version 0.2.0 to 0.2.1

45

lib/index.js

@@ -28,3 +28,4 @@ "use strict";

0x0117: "stripByteCounts",
0x0128: "resolutionUnit"
0x0128: "resolutionUnit",
0x0140: "colorMap"
};

@@ -187,6 +188,8 @@

function readStrips(ifdEntries) {
var ret = new Uint8Array(ifdEntries.imageWidth[0] * ifdEntries.imageLength[0] * ifdEntries.bitsPerSample.length);
var ret = new Uint8Array(ifdEntries.stripByteCounts.reduce(function (s, b) {
return s + b;
}, 0));
var copiedBl = 0;
for (var s = 0; s < ifdEntries.stripOffsets.length; s++) {
var x = buf.subarray(ifdEntries.stripOffsets[s], ifdEntries.stripByteCounts[s]);
var x = buf.subarray(ifdEntries.stripOffsets[s], ifdEntries.stripOffsets[s] + ifdEntries.stripByteCounts[s]);
ret.set(x, copiedBl);

@@ -246,12 +249,38 @@ copiedBl += x.byteLength;

function decompressData(ifdEntries, stripData) {
var compression = ifdEntries.compression;
if (!compression || compression[0] === 1) {
// no-compress
return stripData;
} else if (compression[0] === 2) {
// CCITT Group 3
throw new Error("CCITT group3 decompressionion is not implemented.");
} else if (compression[0] === 5) {
// LZW
throw new Error("LZW decompressionion is not implemented.");
} else if (compression[0] === 6) {
// JPEG
throw new Error("JPEG decompressionion is not implemented.");
} else if (compression[0] === 7) {
// JPEG2
throw new Error("JPEG2 decompressionion is not implemented.");
} else if (compression[0] === 8) {
// Zip(Adobe Deflate)
throw new Error("Zip (Adove Deflate) decompressionion is not implemented.");
} else if (compression[0] === 32773) {
// Packbits
throw new Error("Packbits decompression is not implemented.");
} else {
throw new Error("Unknown compression type: " + compression[0]);
}
}
function normalizeStripData(ifdEntries, stripData) {
var colorMap = ifdEntries.colorMap,
bitsPerSample = ifdEntries.bitsPerSample,
compression = ifdEntries.compression,
photometricInterpretation = ifdEntries.photometricInterpretation;
var x = void 0;
if (compression && compression[0] !== 1) {
throw new Error("Compression is not implemented.");
}
stripData = decompressData(ifdEntries, stripData);
if (!bitsPerSample) {

@@ -296,2 +325,4 @@ throw new Error("Bilevel image decode is not implemented.");

return x;
} else {
throw new Error("Can't detect image type. PhotometricInterpretation: " + photometricInterpretation[0] + ", BitsPerSample: " + bitsPerSample);
}

@@ -298,0 +329,0 @@ }

2

package.json
{
"name": "decode-tiff",
"version": "0.2.0",
"version": "0.2.1",
"description": "Lightweight tiff decoder",

@@ -5,0 +5,0 @@ "main": "lib/index.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc