[ 
https://issues.apache.org/jira/browse/PDFBOX-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Hewson updated PDFBOX-1960:
--------------------------------

    Description: 
I've been driven insane recently by trying to get pattern fills to render 
correctly. Patterns have their own matrix which is concatenated to the CTM and 
no matter how I applied the transformation, the results were wrong.

It turns out that {{org.apache.pdfbox.util.Matrix}} is not behaving as 
expected, here's an example from a pattern I'm working on. I performed the same 
concatenation (i.e. multiplication) using our Matrix and Java's 
AffineTransform, the results are as follows:

Java AffineTransform:
[[2.0, 0.0, 1.251E-12], [-0.0, 2.0, 1684.0]] *
[[0.6, 0.0, 302.6], [0.0, 0.6, 1091.38]] =
[[0.600014,0.0,0.0][0.0,0.6,0.0][605.21,2856.34,1.0]]

PDFBox Matrix:
[[2.0,-0.0,0.0][0.0,2.0,0.0][1.2505552E-12,1684.0,1.0]] *
[[0.3,0.0,0.0][0.0,0.300007,0.0][302.60,586.17,1.0]] =
[[0.6,0.0,0.0][0.0,0.6,0.0][302.608,1091.38,1.0]]

I suggest that we remove Matrix and replace it with AffineTransform.

  was:
I've been driven insane recently by trying to get pattern fills to render 
correctly. Patterns have their own matrix which is concatenated to the CTM and 
no matter how I applied the transformation, the results were wrong.

It turns out that {{org.apache.pdfbox.util.Matrix}} is not behaving as 
expected, here's an example from a pattern I'm working on. I performed the same 
concatenation (i.e. multiplication) using our Matrix and Java's 
AffineTransform, the results are as follows:

Java: AffineTransform[[2.0, 0.0, 1.251E-12], [-0.0, 2.0, 1684.0]] *
AffineTransform[[0.6, 0.0, 302.6], [0.0, 0.6, 1091.38]] =
[[0.600014,0.0,0.0][0.0,0.6,0.0][605.21,2856.34,1.0]]

PDFBox: [[2.0,-0.0,0.0][0.0,2.0,0.0][1.2505552E-12,1684.0,1.0]] *
[[0.3,0.0,0.0][0.0,0.300007,0.0][302.60,586.17,1.0]] =
[[0.6,0.0,0.0][0.0,0.6,0.0][302.608,1091.38,1.0]]

I suggest that we remove Matrix and replace it with AffineTransform.


> Matrix is wrong
> ---------------
>
>                 Key: PDFBOX-1960
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-1960
>             Project: PDFBox
>          Issue Type: Bug
>    Affects Versions: 1.8.4, 2.0.0
>            Reporter: John Hewson
>            Priority: Critical
>
> I've been driven insane recently by trying to get pattern fills to render 
> correctly. Patterns have their own matrix which is concatenated to the CTM 
> and no matter how I applied the transformation, the results were wrong.
> It turns out that {{org.apache.pdfbox.util.Matrix}} is not behaving as 
> expected, here's an example from a pattern I'm working on. I performed the 
> same concatenation (i.e. multiplication) using our Matrix and Java's 
> AffineTransform, the results are as follows:
> Java AffineTransform:
> [[2.0, 0.0, 1.251E-12], [-0.0, 2.0, 1684.0]] *
> [[0.6, 0.0, 302.6], [0.0, 0.6, 1091.38]] =
> [[0.600014,0.0,0.0][0.0,0.6,0.0][605.21,2856.34,1.0]]
> PDFBox Matrix:
> [[2.0,-0.0,0.0][0.0,2.0,0.0][1.2505552E-12,1684.0,1.0]] *
> [[0.3,0.0,0.0][0.0,0.300007,0.0][302.60,586.17,1.0]] =
> [[0.6,0.0,0.0][0.0,0.6,0.0][302.608,1091.38,1.0]]
> I suggest that we remove Matrix and replace it with AffineTransform.



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

Reply via email to