From 24e216097400a50c765ccf3ff3094ba93dae15d4 Mon Sep 17 00:00:00 2001 From: Maxim Date: Tue, 20 Feb 2024 11:44:37 +0300 Subject: [PATCH] =?UTF-8?q?WCAG.=20Fix=20=D0=A1TM=20matrix=20of=20XForm?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/verapdf/gf/model/factory/chunks/ChunkParser.java | 4 +++- .../main/java/org/verapdf/gf/model/factory/chunks/Matrix.java | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/wcag-validation/src/main/java/org/verapdf/gf/model/factory/chunks/ChunkParser.java b/wcag-validation/src/main/java/org/verapdf/gf/model/factory/chunks/ChunkParser.java index 50c349f4a..bc57b685c 100644 --- a/wcag-validation/src/main/java/org/verapdf/gf/model/factory/chunks/ChunkParser.java +++ b/wcag-validation/src/main/java/org/verapdf/gf/model/factory/chunks/ChunkParser.java @@ -460,7 +460,9 @@ public void parseChunk(Operator rawOperator, List arguments) { key = parentObjectKey; markedContent = parentMarkedContent; } - GFSAXForm xForm = new GFSAXForm((PDXForm)xObject, resourceHandler, graphicsState, pageNumber, + GraphicsState xFormGraphicsState = graphicsState.clone(); + xFormGraphicsState.setCTM(xFormGraphicsState.getCTM().multiply(new Matrix(((PDXForm)xObject).getMatrix()))); + GFSAXForm xForm = new GFSAXForm((PDXForm)xObject, resourceHandler, xFormGraphicsState, pageNumber, key, markedContent); artifacts.addAll(xForm.getArtifacts()); } diff --git a/wcag-validation/src/main/java/org/verapdf/gf/model/factory/chunks/Matrix.java b/wcag-validation/src/main/java/org/verapdf/gf/model/factory/chunks/Matrix.java index 3e2f6d182..22f05b1f4 100644 --- a/wcag-validation/src/main/java/org/verapdf/gf/model/factory/chunks/Matrix.java +++ b/wcag-validation/src/main/java/org/verapdf/gf/model/factory/chunks/Matrix.java @@ -41,7 +41,7 @@ public Matrix() { matrixArray = new double[] {1, 0, 0, 1, 0, 0}; } - private Matrix(double[] src) { + public Matrix(double[] src) { matrixArray = src; }