From 6939c97a77d55e8161cbaec20c63fded44e6c68f Mon Sep 17 00:00:00 2001 From: Roman Khafizianov Date: Tue, 20 Aug 2024 18:33:07 +0200 Subject: [PATCH 1/2] GO-3889 psd, tiff support --- go.mod | 4 +- go.sum | 6 ++- pkg/lib/mill/image_resize.go | 62 +++++++++++++++++++++++++++---- pkg/lib/mill/image_resize_psd.go | 54 +++++++++++++++++++++++++++ pkg/lib/mill/testdata/images.go | 7 ++++ pkg/lib/mill/testdata/text.psd | Bin 0 -> 409388 bytes 6 files changed, 123 insertions(+), 10 deletions(-) create mode 100644 pkg/lib/mill/image_resize_psd.go create mode 100644 pkg/lib/mill/testdata/text.psd diff --git a/go.mod b/go.mod index 2779150ed9..c5b0f1c7a6 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ require ( github.com/araddon/dateparse v0.0.0-20210429162001-6b43995a97de github.com/avast/retry-go/v4 v4.6.0 github.com/blevesearch/bleve/v2 v2.3.10 - github.com/chai2010/webp v1.1.1 + github.com/chai2010/webp v1.1.2-0.20240612091223-aa1b379218b7 github.com/cheggaaa/mb v1.0.3 github.com/cheggaaa/mb/v3 v3.0.2 github.com/dave/jennifer v1.7.0 @@ -71,6 +71,7 @@ require ( github.com/multiformats/go-multiaddr-dns v0.3.1 github.com/multiformats/go-multibase v0.2.0 github.com/multiformats/go-multihash v0.2.3 + github.com/oov/psd v0.0.0-20220121172623-5db5eafcecbb github.com/opentracing/opentracing-go v1.2.0 github.com/otiai10/copy v1.14.0 github.com/otiai10/opengraph/v2 v2.1.0 @@ -173,6 +174,7 @@ require ( github.com/google/flatbuffers v1.12.1 // indirect github.com/google/go-querystring v1.1.0 // indirect github.com/google/pprof v0.0.0-20240402174815-29b9bb013b0f // indirect + github.com/gopherjs/gopherjs v0.0.0-20190430165422-3e4dfb77656c // indirect github.com/gorilla/css v1.0.0 // indirect github.com/gosimple/unidecode v1.0.1 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect diff --git a/go.sum b/go.sum index bd4859a3d8..1d226c91d9 100644 --- a/go.sum +++ b/go.sum @@ -202,8 +202,8 @@ github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghf github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/chai2010/webp v1.1.1 h1:jTRmEccAJ4MGrhFOrPMpNGIJ/eybIgwKpcACsrTEapk= -github.com/chai2010/webp v1.1.1/go.mod h1:0XVwvZWdjjdxpUEIf7b9g9VkHFnInUSYujwqTLEuldU= +github.com/chai2010/webp v1.1.2-0.20240612091223-aa1b379218b7 h1:EcFyQu4Hz/YC2lc3xWqn678e2FNfG0cgTr/EOA4ByWs= +github.com/chai2010/webp v1.1.2-0.20240612091223-aa1b379218b7/go.mod h1:0XVwvZWdjjdxpUEIf7b9g9VkHFnInUSYujwqTLEuldU= github.com/cheggaaa/mb v1.0.3 h1:03ksWum+6kHclB+kjwKMaBtgl5gtNYUwNpxsHQciKe8= github.com/cheggaaa/mb v1.0.3/go.mod h1:NUl0GBtFLlfg2o6iZwxzcG7Lslc2wV/ADTFbLXtVPE4= github.com/cheggaaa/mb/v3 v3.0.2 h1:jd1Xx0zzihZlXL6HmnRXVCI1BHuXz/kY+VzX9WbvNDU= @@ -1128,6 +1128,8 @@ github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7J github.com/onsi/gomega v1.9.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA= github.com/onsi/gomega v1.30.0 h1:hvMK7xYz4D3HapigLTeGdId/NcfQx1VHMJc60ew99+8= github.com/onsi/gomega v1.30.0/go.mod h1:9sxs+SwGrKI0+PWe4Fxa9tFQQBG5xSsSbMXOI8PPpoQ= +github.com/oov/psd v0.0.0-20220121172623-5db5eafcecbb h1:JF9kOhBBk4WPF7luXFu5yR+WgaFm9L/KiHJHhU9vDwA= +github.com/oov/psd v0.0.0-20220121172623-5db5eafcecbb/go.mod h1:GHI1bnmAcbp96z6LNfBJvtrjxhaXGkbsk967utPlvL8= github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk= github.com/opentracing-contrib/go-observer v0.0.0-20170622124052-a52f23424492/go.mod h1:Ngi6UdF0k5OKD5t5wlmGhe/EDKPoUM3BXZSSfIuJbis= github.com/opentracing/basictracer-go v1.0.0/go.mod h1:QfBfYuafItcjQuMwinw9GhYKwFXS9KnPs5lxoYwgW74= diff --git a/pkg/lib/mill/image_resize.go b/pkg/lib/mill/image_resize.go index bdd10d095f..9d90ff5160 100644 --- a/pkg/lib/mill/image_resize.go +++ b/pkg/lib/mill/image_resize.go @@ -31,12 +31,15 @@ func init() { } const ( - JPEG Format = "jpeg" - PNG Format = "png" - GIF Format = "gif" - ICO Format = "vnd.microsoft.icon" - WEBP Format = "webp" - HEIC Format = "heic" + JPEG Format = "jpeg" + PNG Format = "png" + GIF Format = "gif" + ICO Format = "vnd.microsoft.icon" + WEBP Format = "webp" + HEIC Format = "heic" + PSD Format = "psd" + PSD_MIME Format = "vnd.adobe.photoshop" + TIFF Format = "tiff" ) func IsImage(mime string) bool { @@ -51,7 +54,7 @@ func IsImage(mime string) bool { func isImageFormatSupported(format Format) bool { switch format { - case JPEG, PNG, GIF, ICO, WEBP, HEIC: + case JPEG, PNG, GIF, ICO, WEBP, HEIC, PSD_MIME, PSD, TIFF: return true } return false @@ -120,6 +123,10 @@ func (m *ImageResize) Mill(r io.ReadSeeker, name string) (*Result, error) { return m.resizeGIF(&imgConfig, r) case HEIC: return m.resizeHEIC(&imgConfig, r) + case TIFF: + return m.resizeTIFF(&imgConfig, r) + case PSD: + return m.resizePSD(&imgConfig, r) } return nil, fmt.Errorf("unknown format") @@ -336,6 +343,47 @@ func (m *ImageResize) resizeGIF(imgConfig *image.Config, r io.ReadSeeker) (*Resu }, nil } +func (m *ImageResize) resizeTIFF(imgConfig *image.Config, r io.ReadSeeker) (*Result, error) { + // tiff resizes to jpeg + img, _, err := image.Decode(r) + if err != nil { + return nil, fmt.Errorf("decode tiff: %w", err) + } + var height int + width, err := strconv.Atoi(m.Opts.Width) + if err != nil { + return nil, fmt.Errorf("invalid width: " + m.Opts.Width) + } + + resized := imaging.Resize(img, width, 0, imaging.Lanczos) + width, height = resized.Rect.Max.X, resized.Rect.Max.Y + + quality, err := strconv.Atoi(m.Opts.Quality) + if err != nil { + return nil, fmt.Errorf("invalid quality: " + m.Opts.Quality) + } + + buf := pool.Get() + defer func() { + _ = buf.Close() + }() + + if err = jpeg.Encode(buf, resized, &jpeg.Options{Quality: quality}); err != nil { + return nil, err + } + readSeekCloser, err := buf.GetReadSeekCloser() + if err != nil { + return nil, err + } + return &Result{ + File: readSeekCloser, + Meta: map[string]interface{}{ + "width": width, + "height": height, + }, + }, nil +} + func getExifData(r io.ReadSeeker) (data []byte, err error) { exifData, err := exif.SearchAndExtractExifWithReader(r) if err != nil { diff --git a/pkg/lib/mill/image_resize_psd.go b/pkg/lib/mill/image_resize_psd.go new file mode 100644 index 0000000000..cecfbd0921 --- /dev/null +++ b/pkg/lib/mill/image_resize_psd.go @@ -0,0 +1,54 @@ +package mill + +import ( + "fmt" + "image" + "image/jpeg" + "io" + "strconv" + + "github.com/disintegration/imaging" + "github.com/oov/psd" +) + +func (m *ImageResize) resizePSD(imgConfig *image.Config, r io.ReadSeeker) (res *Result, err error) { + img, _, err := psd.Decode(r, &psd.DecodeOptions{SkipLayerImage: true}) + if err != nil { + return nil, err + } + + var height int + width, err := strconv.Atoi(m.Opts.Width) + if err != nil { + return nil, fmt.Errorf("invalid width: " + m.Opts.Width) + } + + resized := imaging.Resize(img.Picker, width, 0, imaging.Lanczos) + width, height = resized.Rect.Max.X, resized.Rect.Max.Y + + quality, err := strconv.Atoi(m.Opts.Quality) + if err != nil { + return nil, fmt.Errorf("invalid quality: " + m.Opts.Quality) + } + + buf := pool.Get() + defer func() { + _ = buf.Close() + }() + + // encode to jpeg encoding to increase compatibility on mobile devices + if err = jpeg.Encode(buf, resized, &jpeg.Options{Quality: quality}); err != nil { + return nil, err + } + readSeekCloser, err := buf.GetReadSeekCloser() + if err != nil { + return nil, err + } + return &Result{ + File: readSeekCloser, + Meta: map[string]interface{}{ + "width": width, + "height": height, + }, + }, nil +} diff --git a/pkg/lib/mill/testdata/images.go b/pkg/lib/mill/testdata/images.go index f31b5263c7..d325a389e7 100644 --- a/pkg/lib/mill/testdata/images.go +++ b/pkg/lib/mill/testdata/images.go @@ -9,6 +9,13 @@ type TestImage struct { } var Images = []TestImage{ + { + Path: "testdata/text.psd", + Format: "psd", + HasExif: true, + Width: 800, + Height: 600, + }, { Path: "testdata/Landscape_8.jpg", Format: "jpeg", diff --git a/pkg/lib/mill/testdata/text.psd b/pkg/lib/mill/testdata/text.psd new file mode 100644 index 0000000000000000000000000000000000000000..6df58b4b06c7612a08b41c083e8d4d31789ccb49 GIT binary patch literal 409388 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 literal 0 HcmV?d00001 From df02ecd354806902ebd41283ce19d28fe9f28bf1 Mon Sep 17 00:00:00 2001 From: Roman Khafizianov Date: Tue, 27 Aug 2024 14:17:45 +0200 Subject: [PATCH 2/2] GO-3889 fix tests, add tiff --- pkg/lib/mill/image_exif_test.go | 6 +++--- pkg/lib/mill/testdata/image.tif | Bin 0 -> 11082 bytes pkg/lib/mill/testdata/images.go | 21 ++++++++++++++------- 3 files changed, 17 insertions(+), 10 deletions(-) create mode 100644 pkg/lib/mill/testdata/image.tif diff --git a/pkg/lib/mill/image_exif_test.go b/pkg/lib/mill/image_exif_test.go index 959c405d30..88c5654f10 100644 --- a/pkg/lib/mill/image_exif_test.go +++ b/pkg/lib/mill/image_exif_test.go @@ -30,13 +30,13 @@ func TestImageExif_Mill(t *testing.T) { } if exif.Width != i.Width { - t.Errorf("wrong width") + t.Errorf("wrong width %v %v", exif.Width, i.Width) } if exif.Height != i.Height { - t.Errorf("wrong height") + t.Errorf("wrong height %v %v", exif.Height, i.Height) } if exif.Format != i.Format { - t.Errorf("wrong format") + t.Errorf("wrong format %v %v", exif.Format, i.Format) } }) } diff --git a/pkg/lib/mill/testdata/image.tif b/pkg/lib/mill/testdata/image.tif new file mode 100644 index 0000000000000000000000000000000000000000..671a0759c273e28adb65c243f1cf8e0422d68aa8 GIT binary patch literal 11082 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 BhLQjP literal 0 HcmV?d00001 diff --git a/pkg/lib/mill/testdata/images.go b/pkg/lib/mill/testdata/images.go index d325a389e7..ef6064652f 100644 --- a/pkg/lib/mill/testdata/images.go +++ b/pkg/lib/mill/testdata/images.go @@ -9,13 +9,6 @@ type TestImage struct { } var Images = []TestImage{ - { - Path: "testdata/text.psd", - Format: "psd", - HasExif: true, - Width: 800, - Height: 600, - }, { Path: "testdata/Landscape_8.jpg", Format: "jpeg", @@ -72,4 +65,18 @@ var Images = []TestImage{ Width: 102, Height: 79, }, + { + Path: "testdata/text.psd", + Format: "psd", + HasExif: true, + Width: 800, + Height: 600, + }, + { + Path: "testdata/image.tif", + Format: "tiff", + HasExif: true, + Width: 1728, + Height: 2376, + }, }