mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
update images
This commit is contained in:
parent
793cf35f42
commit
fbc040dc9c
6 changed files with 42 additions and 32 deletions
|
@ -138,7 +138,7 @@ define(['visibleinviewport', 'imageFetcher', 'layoutManager', 'events', 'browser
|
|||
return true;
|
||||
}
|
||||
|
||||
function fillVibrantOnLoaded(img, url, vibrantElement, canvas, canvasContext) {
|
||||
function fillVibrantOnLoaded(img, url, vibrantElement) {
|
||||
|
||||
vibrantElement = document.getElementById(vibrantElement);
|
||||
if (!vibrantElement) {
|
||||
|
@ -148,7 +148,7 @@ define(['visibleinviewport', 'imageFetcher', 'layoutManager', 'events', 'browser
|
|||
requestIdleCallback(function () {
|
||||
|
||||
//var now = new Date().getTime();
|
||||
var swatch = getVibrantInfo(canvas || img, url, canvasContext).split('|');
|
||||
var swatch = getVibrantInfo(img, url).split('|');
|
||||
//console.log('vibrant took ' + (new Date().getTime() - now) + 'ms');
|
||||
if (swatch.length) {
|
||||
|
||||
|
@ -176,7 +176,7 @@ define(['visibleinviewport', 'imageFetcher', 'layoutManager', 'events', 'browser
|
|||
|
||||
url = url.split('?')[0];
|
||||
|
||||
var cacheKey = 'vibrant11';
|
||||
var cacheKey = 'vibrant21';
|
||||
return cacheKey + url;
|
||||
}
|
||||
|
||||
|
@ -185,14 +185,14 @@ define(['visibleinviewport', 'imageFetcher', 'layoutManager', 'events', 'browser
|
|||
return appSettings.get(getSettingsKey(url));
|
||||
}
|
||||
|
||||
function getVibrantInfo(img, url, canvasContext) {
|
||||
function getVibrantInfo(img, url) {
|
||||
|
||||
var value = getCachedVibrantInfo(url);
|
||||
if (value) {
|
||||
return value;
|
||||
}
|
||||
|
||||
var vibrant = new Vibrant(img, canvasContext);
|
||||
var vibrant = new Vibrant(img);
|
||||
var swatches = vibrant.swatches();
|
||||
|
||||
value = '';
|
||||
|
|
|
@ -622,7 +622,7 @@ module.exports = MMCQ.quantize
|
|||
this.swatches = bind(this.swatches, this);
|
||||
var a, allPixels, b, cmap, g, i, image, imageData, offset, pixelCount, pixels, r;
|
||||
if (typeof colorCount === 'undefined') {
|
||||
colorCount = 64;
|
||||
colorCount = 16;
|
||||
}
|
||||
if (typeof quality === 'undefined') {
|
||||
quality = 5;
|
||||
|
@ -837,22 +837,29 @@ module.exports = MMCQ.quantize
|
|||
*/
|
||||
|
||||
window.CanvasImage = CanvasImage = (function() {
|
||||
function CanvasImage(image, context) {
|
||||
function CanvasImage(image) {
|
||||
|
||||
if (context) {
|
||||
this.width = image.width;
|
||||
this.height = image.height;
|
||||
this.canvas = document.createElement('canvas');
|
||||
|
||||
this.context = context;
|
||||
} else {
|
||||
this.canvas = document.createElement('canvas');
|
||||
this.width = this.canvas.width = image.width;
|
||||
this.height = this.canvas.height = image.height;
|
||||
this.context = this.canvas.getContext('2d');
|
||||
|
||||
this.context = this.canvas.getContext('2d');
|
||||
this.context.drawImage(image, 0, 0, this.width, this.height);
|
||||
}
|
||||
}
|
||||
var originalWidth = image.width;
|
||||
var originalHeight = image.height;
|
||||
|
||||
var maxArea = 300 * 300;
|
||||
var bitmapArea = originalWidth * originalHeight;
|
||||
var scaleRatio = 1;
|
||||
if (bitmapArea > maxArea) {
|
||||
scaleRatio = maxArea / bitmapArea;
|
||||
}
|
||||
|
||||
//console.log(scaleRatio);
|
||||
|
||||
this.width = this.canvas.width = originalWidth * scaleRatio;
|
||||
this.height = this.canvas.height = originalHeight * scaleRatio;
|
||||
|
||||
this.context.drawImage(image, 0, 0, originalWidth, originalHeight, 0, 0, this.width, this.height);
|
||||
}
|
||||
|
||||
CanvasImage.prototype.getPixelCount = function() {
|
||||
return this.width * this.height;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue