mirror of
https://github.com/aspnet/JavaScriptServices.git
synced 2025-12-22 09:37:45 +00:00
Switch image resizing example from 'jimp' to 'sharp' because it's far faster
This commit is contained in:
@@ -1,15 +1,9 @@
|
||||
var Jimp = require('jimp');
|
||||
var sharp = require('sharp');
|
||||
|
||||
module.exports = function(cb, physicalPath, mimeType, maxWidth, maxHeight) {
|
||||
Jimp.read(physicalPath, function (err, loadedImage) {
|
||||
if (err) {
|
||||
cb(err);
|
||||
}
|
||||
|
||||
loadedImage
|
||||
.contain(maxWidth > 0 ? maxWidth : Jimp.AUTO, maxHeight > 0 ? maxHeight : Jimp.AUTO)
|
||||
.getBuffer(mimeType, function(err, buffer) {
|
||||
cb(err, { base64: buffer && buffer.toString('base64') });
|
||||
});
|
||||
});
|
||||
sharp(physicalPath)
|
||||
.resize(maxWidth > 0 ? maxWidth : null, maxHeight > 0 ? maxHeight : null)
|
||||
.toBuffer(function (err, buffer) {
|
||||
cb(err, { base64: buffer && buffer.toString('base64') });
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1,12 +1,19 @@
|
||||
<h1>Image Resizing</h1>
|
||||
|
||||
<p>
|
||||
This sample shows how the NPM module <a href="https://www.npmjs.com/package/jimp"><code>jimp</code></a>
|
||||
This sample shows how the NPM module <a href="https://www.npmjs.com/package/sharp"><code>sharp</code></a>
|
||||
can be used for dynamic image resizing from within an ASP.NET Core application. There is one copy of the
|
||||
following image on disk, but we can set up an MVC action method that returns it resized to fit within an
|
||||
arbitrary width and height.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<strong>Dependencies:</strong> On Windows and Linux, there are no native dependencies. Just running
|
||||
<code>npm install</code> is enough. On OS X, however, you need to have <code>libvips</code> installed,
|
||||
which you can get through <a href="http://brew.sh/">Homebrew</a> by running
|
||||
<code>brew install homebrew/science/vips</code>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<em><a href="https://www.flickr.com/photos/dcoetzee/3572948635">Parrot</a>
|
||||
by <a href="https://www.flickr.com/photos/dcoetzee/">D Coetzee</a>
|
||||
|
||||
@@ -4,6 +4,6 @@
|
||||
"dependencies": {
|
||||
"babel-core": "^6.7.4",
|
||||
"babel-preset-es2015": "^6.6.0",
|
||||
"jimp": "^0.2.24"
|
||||
"sharp": "^0.15.0"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user