From 0c3fd0223c784ddcc7d2442105b920587b970727 Mon Sep 17 00:00:00 2001 From: xuri Date: Fri, 13 May 2022 01:03:40 +0800 Subject: This closes #1225, allowing insert EMF format images --- picture_test.go | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'picture_test.go') diff --git a/picture_test.go b/picture_test.go index fbbdf11..c548035 100644 --- a/picture_test.go +++ b/picture_test.go @@ -2,9 +2,11 @@ package excelize import ( "fmt" + "image" _ "image/gif" _ "image/jpeg" _ "image/png" + "io" "io/ioutil" "os" "path/filepath" @@ -66,7 +68,7 @@ func TestAddPicture(t *testing.T) { assert.NoError(t, f.AddPicture("Sheet1", "Q22", filepath.Join("test", "images", "excel.tif"), "")) // Test write file to given path. - assert.NoError(t, f.SaveAs(filepath.Join("test", "TestAddPicture.xlsx"))) + assert.NoError(t, f.SaveAs(filepath.Join("test", "TestAddPicture1.xlsx"))) assert.NoError(t, f.Close()) } @@ -89,7 +91,14 @@ func TestAddPictureErrors(t *testing.T) { // Test add picture to worksheet with invalid file data. err = f.AddPictureFromBytes("Sheet1", "G21", "", "Excel Logo", ".jpg", make([]byte, 1)) - assert.EqualError(t, err, "image: unknown format") + assert.EqualError(t, err, image.ErrFormat.Error()) + + // Test add picture with custom image decoder and encoder. + decode := func(r io.Reader) (image.Image, error) { return nil, nil } + decodeConfig := func(r io.Reader) (image.Config, error) { return image.Config{Height: 100, Width: 90}, nil } + image.RegisterFormat("emf", "", decode, decodeConfig) + assert.NoError(t, f.AddPicture("Sheet1", "Q1", filepath.Join("test", "images", "excel.emf"), "")) + assert.NoError(t, f.SaveAs(filepath.Join("test", "TestAddPicture2.xlsx"))) assert.NoError(t, f.Close()) } -- cgit v1.2.1