aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/pdfbox/util/operator/Concatenate.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/pdfbox/util/operator/Concatenate.java')
-rw-r--r--src/main/java/org/pdfbox/util/operator/Concatenate.java106
1 files changed, 0 insertions, 106 deletions
diff --git a/src/main/java/org/pdfbox/util/operator/Concatenate.java b/src/main/java/org/pdfbox/util/operator/Concatenate.java
deleted file mode 100644
index 7fc986c..0000000
--- a/src/main/java/org/pdfbox/util/operator/Concatenate.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/**
- * Copyright (c) 2004, www.pdfbox.org
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- * 1. Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- * 3. Neither the name of pdfbox; nor the names of its
- * contributors may be used to endorse or promote products derived from this
- * software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
- * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * http://www.pdfbox.org
- *
- */
-package org.pdfbox.util.operator;
-
-import java.util.List;
-import org.pdfbox.cos.COSNumber;
-import org.apache.log4j.Logger;
-import org.pdfbox.util.Matrix;
-import org.pdfbox.util.PDFOperator;
-
-/**
- *
- * <p>Titre : PDFEngine Modification.</p>
- * <p>Description : Structal modification of the PDFEngine class :
-* the long sequence of conditions in processOperator is remplaced by
-* this strategy pattern</p>
- * <p>Copyright : Copyright (c) 2004</p>
- * <p>Société : DBGS</p>
- * @author Huault : huault@free.fr
- * @version $Revision: 1.3 $
- */
-
-public class Concatenate extends OperatorProcessor
-{
-
- private static final Logger LOG = Logger.getLogger(Concatenate.class);
-
- /**
- * process : cm : Concatenate matrix to current transformation matrix.
- * @param operator The operator that is being executed.
- * @param arguments List
- */
- public void process(PDFOperator operator, List arguments)
- {
-
- //concatenate matrix to current transformation matrix
- COSNumber a = (COSNumber) arguments.get(0);
- COSNumber b = (COSNumber) arguments.get(1);
- COSNumber c = (COSNumber) arguments.get(2);
- COSNumber d = (COSNumber) arguments.get(3);
- COSNumber e = (COSNumber) arguments.get(4);
- COSNumber f = (COSNumber) arguments.get(5);
-
- if( LOG.isDebugEnabled() )
- {
- LOG.debug("<cm " +
- "a=\"" + a.floatValue() + "\" " +
- "b=\"" + b.floatValue() + "\" " +
- "c=\"" + c.floatValue() + "\" " +
- "d=\"" + d.floatValue() + "\" " +
- "e=\"" + e.floatValue() + "\" " +
- "f=\"" + f.floatValue() + "\" > " +
- this.toString() + " from " + context.toString());
- }
-
- Matrix newMatrix = new Matrix();
- newMatrix.setValue(0, 0, a.floatValue());
- newMatrix.setValue(0, 1, b.floatValue());
- newMatrix.setValue(1, 0, c.floatValue());
- newMatrix.setValue(1, 1, d.floatValue());
- newMatrix.setValue(2, 0, e.floatValue());
- newMatrix.setValue(2, 1, f.floatValue());
-
- // wprinz: BUG Fix:
- // In PDF, matrices have to be multiplied from left to right
- // (the new matrix is left, the old one(s) are right)
-
- Matrix old_ctm = context.getGraphicsState().getCurrentTransformationMatrix();
- Matrix matrix_to_concat = newMatrix;
- Matrix new_ctm = matrix_to_concat.multiply(old_ctm);
- context.getGraphicsState().setCurrentTransformationMatrix(
- new_ctm );
-
- // :wprinz
-
- }
-
-}