mirror of
https://github.com/xiaoqidun/ofdgo.git
synced 2026-10-29 08:46:55 +08:00
1 parent
3d54b15b11
commit
7f6282fd94
2 files changed
+73
-8
No files matched your search
+11
-1
@@ -883,6 +883,9 @@ func (p *pdfImporter) compositeRegion(backdrop []pdfCompositeNode, node pdfCompo
|
||||
transfers = make([]*pdfgo.TransferFunction, len(buffer))
|
||||
previousTransfers = make([]*pdfgo.TransferFunction, len(buffer))
|
||||
}
|
||||
var colorValues [4]float64
|
||||
var colorRGB [3]float64
|
||||
colorReady := false
|
||||
for y := 0; y < h; y += pdfCompositeTileSize {
|
||||
for x := 0; x < w; x += pdfCompositeTileSize {
|
||||
if err := p.ctx.Err(); err != nil {
|
||||
@@ -933,7 +936,14 @@ func (p *pdfImporter) compositeRegion(backdrop []pdfCompositeNode, node pdfCompo
|
||||
} else if c.transfers != nil {
|
||||
rgb, err = space.RGB(pixel.Values[:space.Components()], "RelativeColorimetric")
|
||||
} else {
|
||||
rgb, err = codecpdf.OutputColor(space, pixel.Values)
|
||||
if colorReady && pixel.Values == colorValues {
|
||||
rgb = colorRGB
|
||||
} else {
|
||||
rgb, err = codecpdf.OutputColor(space, pixel.Values)
|
||||
if err == nil {
|
||||
colorValues, colorRGB, colorReady = pixel.Values, rgb, true
|
||||
}
|
||||
}
|
||||
}
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
Reference in new issue
Block a user