/** * */ package at.gv.egiz.pdfas.impl.api; import at.gv.egiz.pdfas.api.sign.pos.SignaturePositioning; import at.gv.egiz.pdfas.api.sign.pos.axis.AbsoluteAxisAlgorithm; import at.gv.egiz.pdfas.api.sign.pos.axis.AutoAxisAlgorithm; import at.gv.egiz.pdfas.api.sign.pos.axis.AxisAlgorithm; import at.gv.egiz.pdfas.api.sign.pos.page.AbsolutePageAlgorithm; import at.gv.egiz.pdfas.api.sign.pos.page.AutoPageAlgorithm; import at.gv.egiz.pdfas.api.sign.pos.page.NewPageAlgorithm; import at.gv.egiz.pdfas.api.sign.pos.page.PageAlgorithm; import at.knowcenter.wag.egov.egiz.PdfAS; import at.knowcenter.wag.egov.egiz.exceptions.PDFDocumentException; import at.knowcenter.wag.egov.egiz.pdf.TablePos; /** * @author wprinz * */ public final class PosHelper { /** * Hidden default constructor. */ private PosHelper() { // empty block } public static TablePos formTablePos(SignaturePositioning signaturePositioning) throws PDFDocumentException { if (signaturePositioning == null) { return null; } String positioningString = formPositioningString(signaturePositioning); TablePos pos = PdfAS.parsePositionFromPosString(positioningString); return pos; } protected static String formPositioningString(SignaturePositioning sp) { String x_algo = formAxisAlgoString(sp.getXAlgorithm()); String y_algo = formAxisAlgoString(sp.getYAlgorithm()); String w_algo = formAxisAlgoString(sp.getWidthAlgorithm()); String p_algo = formPageAlgoString(sp.getPageAlgorithm()); String positioning = "x:" + x_algo + ";y:" + y_algo + ";w:" + w_algo + ";p:" + p_algo + ";f:" + sp.getFooterLine(); return positioning; } protected static String formAxisAlgoString(AxisAlgorithm algorithm) { if (algorithm instanceof AutoAxisAlgorithm) { return "auto"; } AbsoluteAxisAlgorithm aaa = (AbsoluteAxisAlgorithm) algorithm; return Float.toString(aaa.getAbsoluteValue()); } protected static String formPageAlgoString(PageAlgorithm algorithm) { if (algorithm instanceof AutoPageAlgorithm) { return "auto"; } if (algorithm instanceof NewPageAlgorithm) { return "new"; } AbsolutePageAlgorithm apa = (AbsolutePageAlgorithm) algorithm; return Integer.toString(apa.getPage()); } }