From a35636999df85335c4ab4efa05306e2e8f1c5748 Mon Sep 17 00:00:00 2001 From: Deluan Date: Wed, 1 Apr 2020 09:09:51 -0400 Subject: [PATCH] feat: fine tune album art image size. better, but still not ideal --- engine/cover.go | 4 ++-- go.mod | 2 +- go.sum | 6 ++++-- ui/src/album/AlbumDetails.js | 4 +--- ui/src/album/AlbumGridView.js | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/engine/cover.go b/engine/cover.go index ecc418759..622e5fd29 100644 --- a/engine/cover.go +++ b/engine/cover.go @@ -16,7 +16,7 @@ import ( "github.com/deluan/navidrome/model" "github.com/deluan/navidrome/static" "github.com/dhowden/tag" - "github.com/nfnt/resize" + "github.com/disintegration/imaging" ) type Cover interface { @@ -88,7 +88,7 @@ func resizeImage(reader io.Reader, size int, out io.Writer) error { return err } - m := resize.Resize(uint(size), 0, img, resize.NearestNeighbor) + m := imaging.Resize(img, size, size, imaging.Lanczos) return jpeg.Encode(out, m, &jpeg.Options{Quality: 75}) } diff --git a/go.mod b/go.mod index 4f1b33ed7..7947d650a 100644 --- a/go.mod +++ b/go.mod @@ -10,6 +10,7 @@ require ( github.com/deluan/rest v0.0.0-20200327222046-b71e558c45d0 github.com/dgrijalva/jwt-go v3.2.0+incompatible github.com/dhowden/tag v0.0.0-20191122115059-7e5c04feccd8 + github.com/disintegration/imaging v1.6.2 github.com/djherbis/fscache v0.10.0 github.com/dustin/go-humanize v1.0.0 github.com/fatih/camelcase v0.0.0-20160318181535-f6a740d52f96 // indirect @@ -26,7 +27,6 @@ require ( github.com/kr/pretty v0.1.0 // indirect github.com/lib/pq v1.3.0 // indirect github.com/mattn/go-sqlite3 v2.0.3+incompatible - github.com/nfnt/resize v0.0.0-20160724205520-891127d8d1b5 github.com/onsi/ginkgo v1.12.0 github.com/onsi/gomega v1.9.0 github.com/pkg/errors v0.9.1 // indirect diff --git a/go.sum b/go.sum index fb65180b4..545d37a9d 100644 --- a/go.sum +++ b/go.sum @@ -28,6 +28,8 @@ github.com/dgrijalva/jwt-go v3.2.0+incompatible h1:7qlOGliEKZXTDg6OTjfoBKDXWrumC github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= github.com/dhowden/tag v0.0.0-20191122115059-7e5c04feccd8 h1:nmFnmD8VZXkjDHIb1Gnfz50cgzUvGN72zLjPRXBW/hU= github.com/dhowden/tag v0.0.0-20191122115059-7e5c04feccd8/go.mod h1:SniNVYuaD1jmdEEvi+7ywb1QFR7agjeTdGKyFb0p7Rw= +github.com/disintegration/imaging v1.6.2 h1:w1LecBlG2Lnp8B3jk5zSuNqd7b4DXhcjwek1ei82L+c= +github.com/disintegration/imaging v1.6.2/go.mod h1:44/5580QXChDfwIclfc/PCwrr44amcmDAg8hxG0Ewe4= github.com/djherbis/fscache v0.10.0 h1:+O3s3LwKL1Jfz7txRHpgKOz8/krh9w+NzfzxtFdbsQg= github.com/djherbis/fscache v0.10.0/go.mod h1:yyPYtkNnnPXsW+81lAcQS6yab3G2CRfnPLotBvtbf0c= github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo= @@ -93,8 +95,6 @@ github.com/lib/pq v1.3.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/mattn/go-sqlite3 v1.10.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= github.com/mattn/go-sqlite3 v2.0.3+incompatible h1:gXHsfypPkaMZrKbD5209QV9jbUTJKjyR5WD3HYQSd+U= github.com/mattn/go-sqlite3 v2.0.3+incompatible/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= -github.com/nfnt/resize v0.0.0-20160724205520-891127d8d1b5 h1:BvoENQQU+fZ9uukda/RzCAL/191HHwJA5b13R6diVlY= -github.com/nfnt/resize v0.0.0-20160724205520-891127d8d1b5/go.mod h1:jpp1/29i3P1S/RLdc7JQKbRpFeM1dOBd8T9ki5s+AY8= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.12.0 h1:Iw5WCbBcaAAd0fpRb1c9r5YCylv4XDoCSigm1zLevwU= github.com/onsi/ginkgo v1.12.0/go.mod h1:oUhWkIvk5aDxtKvDDuw8gItl8pKl42LzjC9KZE0HfGg= @@ -139,6 +139,8 @@ github.com/wendal/errors v0.0.0-20130201093226-f66c77a7882b/go.mod h1:Q12BUT7DqI golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550 h1:ObdrDkeb4kJdCP557AjRjq69pTHfNouLtWZG7j9rPN8= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/image v0.0.0-20191009234506-e7c1f5e7dbb8 h1:hVwzHzIUGRjiF7EcUjqNxk3NCfkPxbDKRdnNE1Rpg0U= +golang.org/x/image v0.0.0-20191009234506-e7c1f5e7dbb8/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a h1:oWX7TPOiFAMXLq8o0ikBYfCJVlRHBcsciT5bXOrH628= diff --git a/ui/src/album/AlbumDetails.js b/ui/src/album/AlbumDetails.js index 616852110..e2d21e95d 100644 --- a/ui/src/album/AlbumDetails.js +++ b/ui/src/album/AlbumDetails.js @@ -21,9 +21,7 @@ const AlbumDetails = ({ classes, record }) => { return ( diff --git a/ui/src/album/AlbumGridView.js b/ui/src/album/AlbumGridView.js index c18f2c633..1bf6e1e39 100644 --- a/ui/src/album/AlbumGridView.js +++ b/ui/src/album/AlbumGridView.js @@ -33,8 +33,8 @@ const useStyles = makeStyles((theme) => ({ }, cover: { display: 'inline-block', - maxWidth: '100%', - height: 'auto' + width: '100%', + height: '100%' }, tileBar: { textAlign: 'center',