[ 
https://issues.apache.org/jira/browse/PDFBOX-1991?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13940238#comment-13940238
 ] 

Tilman Hausherr commented on PDFBOX-1991:
-----------------------------------------

The branch where pageHeight is used comes from a code segment that was in 
radialShadingContext. However that segment was deleted when Andreas committed 
the "Luis Bernardo changes" (PDFBOX-615) so I could have thought about deleting 
it as well. Btw that code segment is never used for any of my test images, I 
just tested this.

So as a start, I removed that code in rev 1579148.

However...:
The comment says "the shading is used as pattern colorspace in combination with 
a fill-, stroke- or showText-operator". I remember that there are a few images 
that have never been rendered correctly. One is a text with a shading pattern, 
the other one a line with a shading pattern. I wonder if we will need the 
height for these pages.....

> Shading PaintContexts should not depend on the page height
> ----------------------------------------------------------
>
>                 Key: PDFBOX-1991
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-1991
>             Project: PDFBox
>          Issue Type: Improvement
>          Components: Rendering
>    Affects Versions: 2.0.0
>            Reporter: John Hewson
>            Priority: Minor
>
> I'd like to remove the page height parameter from PDPattern as soon as 
> possible because of doubts over its safety (i.e. the current stream being 
> processed may be a pattern or a form, not a page). Before I do that we need 
> to remove its only use, which is...
> The page height is passed to all shading PaintContext subclasses but it is 
> only used in GouraudShadingContext. However, all other drawing in PDFBox is 
> done using the native PDF y-axis which is flipped via a call to 
> Graphics2D#scale(0, -1) but the following code in GouraudShadingContext flips 
> the y-axis:
> v.point = new Point.Double(v.point.getX(), pageHeight + xform.getTranslateY() 
> - v.point.getY());
> So it seems like this could be removed and the y-axis inversion done 
> elsewhere with either a Matrix, AffineTransform or Grpahics2D#scale.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to