[ 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.251E-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]] * [[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. > 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.251E-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)