v0.0.458 revert 457 and fix ObjectFitImage
All checks were successful
Build Docker and Deploy / Run goext test-suite (push) Successful in 2m49s

This commit is contained in:
2024-05-20 00:15:24 +02:00
parent bfa8457e95
commit d8b2d01274
3 changed files with 13 additions and 23 deletions

View File

@@ -7,9 +7,7 @@ import (
"gogs.mikescher.com/BlackForestBytes/goext/langext"
"image"
"image/color"
"image/png"
"net/http"
"os"
)
type PDFImageRef struct {
@@ -229,7 +227,7 @@ func (b *WPDFBuilder) Image(img *PDFImageRef, opts ...*PDFImageOpt) {
reEncodePixelPerMM := 15.0
var imageFit *imageext.ImageFit = nil
var fillColor color.Color = color.Transparent
var compression *imageext.ImageCompresson = nil
compression := imageext.CompressionPNGSpeed
var crop *imageext.ImageCrop = nil
for _, opt := range opts {
@@ -245,14 +243,14 @@ func (b *WPDFBuilder) Image(img *PDFImageRef, opts ...*PDFImageOpt) {
allowNegativePosition = langext.Coalesce(opt.allowNegativePosition, allowNegativePosition)
imageFit = langext.CoalesceOpt(opt.imageFit, imageFit)
fillColor = langext.Coalesce(opt.fillColor, fillColor)
compression = langext.CoalesceOpt(opt.compression, compression)
compression = langext.Coalesce(opt.compression, compression)
reEncodePixelPerMM = langext.Coalesce(opt.reEncodePixelPerMM, reEncodePixelPerMM)
crop = langext.CoalesceOpt(opt.crop, crop)
}
regName := img.Name
if imageFit != nil || fillColor != nil || crop != nil || compression != nil {
if imageFit != nil || fillColor != nil || crop != nil {
var dataimg image.Image
if img.Image != nil {
@@ -263,16 +261,6 @@ func (b *WPDFBuilder) Image(img *PDFImageRef, opts ...*PDFImageOpt) {
b.b.SetError(err)
return
}
img.Image = langext.Ptr(dataimg)
}
_ = os.WriteFile("/tmp/a.png", img.Bin, 0755)
{
bfr := bytes.Buffer{}
enc := &png.Encoder{CompressionLevel: png.NoCompression}
_ = enc.Encode(&bfr, dataimg)
_ = os.WriteFile("/tmp/b.png", img.Bin, 0755)
}
if crop != nil {
@@ -296,7 +284,7 @@ func (b *WPDFBuilder) Image(img *PDFImageRef, opts ...*PDFImageOpt) {
}
}
bfr, imgMime, err := imageext.EncodeImage(dataimg, langext.Coalesce(compression, imageext.CompressionPNGSpeed))
bfr, imgMime, err := imageext.EncodeImage(dataimg, compression)
if err != nil {
b.b.SetError(err)
return
@@ -313,8 +301,6 @@ func (b *WPDFBuilder) Image(img *PDFImageRef, opts ...*PDFImageOpt) {
imageType = "GIF"
}
_ = os.WriteFile("/tmp/c.png", bfr.Bytes(), 0755)
b.b.RegisterImageOptionsReader(regName, gofpdf.ImageOptions{ImageType: imageType}, &bfr)
}