Snelle en snelle beeldverwerkingsmodule in Node.js

Sharp is een beeldverwerkingsmodule die de libvips-bibliotheek gebruikt om Node.js-projecten snel te verwerken.

Sharp is een snelle beeldverwerkingsmodule voor Node.js-projecten die worden aangedreven door de libvips-beeldverwerkingsbibliotheek. Vanwege deze toevoeging heeft Sharp, zoals de naam al doet vermoeden, een hoge verwerkingssnelheid, omdat het slechts een paar regio's van de niet-gecomprimeerde afbeeldingsgegevens in het geheugen opslaat, waardoor veel van de gebruikte CPU-kracht en L1/L2/L3-cache wordt vrijgemaakt

De bibliotheek zorgt er ook voor dat er geen onderliggende processen worden voortgebracht en dat asynchrone of wachtende processen worden ondersteund. Als een open source beeldverwerkingsmodule ondersteunt Sharp ook meerdere beeldformaten en ongecomprimeerde onbewerkte pixelgegevens. Voor optimale prestaties moet u ervoor zorgen dat u Node.js versie 10 en hoger gebruikt.

Previous Next

Aan de slag met Sharp

De aanbevolen manier om Sharp via NPM te installeren. Gebruik de volgende opdracht om het te installeren.

Installeer Sharp via NPM

 npm install sharp 

Formaat van afbeeldingen wijzigen via gratis JavaScript-API

Met de open source Sharp-bibliotheek kunnen JavaScript-ontwikkelaars het formaat van afbeeldingen programmatisch wijzigen. Met Sharp kunt u grote afbeeldingsformaten converteren naar kleinere formaten die compatibel zijn met verschillende webtoepassingen. Met behulp van de Sharp-bibliotheek heeft Sharp een 4 tot 5 keer hogere beeldverwerkingssnelheid in vergelijking met andere beeldformaatconverters zoals ImageMagick of GraphicsMagick. Sharp zorgt ervoor dat de beeldkwaliteit niet in het gedrang komt door de resampling-module van Lanczos.

Vertaling:

const transformer = sharp()
  .resize({
    width: 200,
    height: 200,
    fit: sharp.fit.cover,
    position: sharp.strategy.entropy
  });
// Read image data from readableStream
// Write 200px square auto-cropped image data to writableStream
readableStream
  .pipe(transformer)
  .pipe(writableStream)

Beeldverwerking via gratis JavaScript API

De scherpe bibliotheek zorgt voor softwareontwikkelaars om het beeld te verwerken in het JavaScript framewerk. Je kunt beeldoperaties uitvoeren zoals beelden resideren, roteren, onttrekken, correcties en samenstelling. Sharp is compatibel met MacOS, Windows, en Linux-systemen en vereist extra installaties als je de Node gebruikt.

Vertaling:

sharp(input)
  .extract({ left: leftOffsetPre, top: topOffsetPre, width: widthPre, height: heightPre })
  .resize(width, height)
  .extract({ left: leftOffsetPost, top: topOffsetPost, width: widthPost, height: heightPost })
  .toFile(output, function(err) {
    // Extract a region, resize, then extract from the resized image
  });

Rotate Image via JavaScript

const rotateThenResize = await sharp(input)
  .rotate(90)
  .resize({ width: 16, height: 8, fit: 'fill' })
  .toBuffer();
const resizeThenRotate = await sharp(input)
  .resize({ width: 16, height: 8, fit: 'fill' })
  .rotate(90)
  .toBuffer();

Werk met Image Metadata in JavaScript Apps

De open bron scherpe bibliotheek heeft volledige steun ingedeeld voor het werken met Image Metadata binnen JavaScript aanvragen. De bibliotheek zorgt voor snelheidsbeschikking metadata zonder data te ontcijferen. Het heeft ondersteuning voor een aantal belangrijke eigenschappen als imago grootte, formaat, breedte, diepte, dichtheid, ruimte, niveaus, achtergrond, uitgang, uitgang, dsprofile, pagina en nog veel meer. Je kunt ook gemakkelijk toegang krijgen tot pixel-veranderde beelden statistieken voor elk kanaal in het beeld zoals min, max, sum, sum, sum, scherpheid, entropie, en nog veel meer.

Access Image Metadata via JavaScript

const image = sharp(inputJpg);
image
  .metadata()
  .then(function(metadata) {
    return image
      .resize(Math.round(metadata.width / 2))
      .webp()
      .toBuffer();
  })
  .then(function(data) {
    // data contains a WebP image half the width and height of the original JPEG
  });
 Dutch