List of usage examples for com.lowagie.text Table getDefaultCell
public Cell getDefaultCell()
From source file:ispyb.client.mx.collection.PdfRtfExporter.java
License:Open Source License
/** * set the XFR Spectra table//from w ww . j ava 2 s . co m * * @param document * @throws Exception */ private void setXfrSpectraTable(Document document) throws Exception { if (slv == null) {// if session is null, no sense to display XFRSpectra return; } document.add(new Paragraph("XRF Spectra:", FONT_TITLE)); document.add(new Paragraph(" ")); if (xfeList == null || xfeList.isEmpty()) { document.add(new Paragraph("There is no XRF spectra in this report", FONT_DOC)); } else { int NumColumnsXRF = 6; Table tableXRF = new Table(NumColumnsXRF); int headerwidthsSessionXRF[] = { 15, 15, 15, 15, 15, 25 }; // percentage int headerwidthsMXPressXRF[] = { 16, 16, 15, 15, 15, 8, 17 }; // percentage tableXRF.setWidths(headerwidthsSessionXRF); // Column crystalClass added only for IFX proposal in case of // MXPress experiment if (proposalCode.toLowerCase().equals(Constants.PROPOSAL_CODE_FX)) { tableXRF = new Table(NumColumnsXRF + 1); tableXRF.setWidths(headerwidthsMXPressXRF); } tableXRF.setWidth(100); // percentage tableXRF.setPadding(3); tableXRF.setCellsFitPage(true); tableXRF.getDefaultCell().setBorderWidth(1); tableXRF.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER); // XRF Spectra Header tableXRF.getDefaultCell().setGrayFill(GREY_FILL_HEADER); tableXRF.addCell(new Paragraph("Energy\n(keV)", FONT_DOC_BOLD)); tableXRF.addCell(new Paragraph("Exposure Time\n(s)", FONT_DOC_BOLD)); tableXRF.addCell(new Paragraph("Beam size Hor.\n(" + Constants.MICRO + "m)", FONT_DOC_BOLD)); tableXRF.addCell(new Paragraph("Beam size Ver.\n(" + Constants.MICRO + "m)", FONT_DOC_BOLD)); tableXRF.addCell(new Paragraph("Transm. Factor\n(%)", FONT_DOC_BOLD)); // Column crystalClass only for IFX proposal in case of MXPress // experiment if (proposalCode.toLowerCase().equals(Constants.PROPOSAL_CODE_FX)) tableXRF.addCell(new Paragraph("Crystal class", FONT_DOC_BOLD)); tableXRF.addCell(new Paragraph("Comments", FONT_DOC_BOLD)); tableXRF.getDefaultCell().setGrayFill(GREY_FILL_DATA); tableXRF.getDefaultCell().setBorderWidth(1); // XRF Spectra Rows Iterator<XFEFluorescenceSpectrum3VO> itES = xfeList.iterator(); while (itES.hasNext()) { XFEFluorescenceSpectrum3VO col = itES.next(); if (col.getEnergy() != null) tableXRF.addCell(new Paragraph(col.getEnergy().toString(), FONT_DOC)); else tableXRF.addCell(""); if (col.getExposureTime() != null) tableXRF.addCell(new Paragraph(col.getExposureTime().toString(), FONT_DOC)); else tableXRF.addCell(""); if (col.getBeamSizeHorizontal() != null) tableXRF.addCell(new Paragraph(col.getBeamSizeHorizontal().toString(), FONT_DOC)); else tableXRF.addCell(""); if (col.getBeamSizeVertical() != null) tableXRF.addCell(new Paragraph(col.getBeamSizeVertical().toString(), FONT_DOC)); else tableXRF.addCell(""); if (col.getBeamTransmission() != null) tableXRF.addCell(new Paragraph(col.getBeamTransmission().toString(), FONT_DOC)); else tableXRF.addCell(""); if (proposalCode.toLowerCase().equals(Constants.PROPOSAL_CODE_FX)) { // if (col.getCrystalClass()!= null) tableXRF.addCell(new // Paragraph(col.getCrystalClass().toString(), new // Font(Font.HELVETICA, 8))); // else tableXRF.addCell(""); if (col.getCrystalClass() != null) { int idCC = getCrystalClassIndex(listOfCrystalClass, col.getCrystalClass().trim().toUpperCase()); if (idCC == -1) { tableXRF.addCell(new Paragraph(col.getCrystalClass().toString(), FONT_DOC)); } else tableXRF.addCell( new Paragraph(listOfCrystalClass.get(idCC).getCrystalClassName(), FONT_DOC)); } else tableXRF.addCell(""); } tableXRF.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT); if (col.getComments() != null) tableXRF.addCell(new Paragraph(col.getComments().toString(), FONT_DOC)); else tableXRF.addCell(""); tableXRF.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER); } document.add(tableXRF); } }
From source file:ispyb.client.mx.collection.PdfRtfExporter.java
License:Open Source License
/** * set the summary - IFX proposal/*from w ww .j av a 2 s .co m*/ * * @param document * @throws Exception */ private void setSummary(Document document) throws Exception { if (proposalCode.toLowerCase().equals(Constants.PROPOSAL_CODE_FX) && name == null) { document.add(new Paragraph(" ")); document.add(new Paragraph("Summary:", FONT_TITLE)); document.add(new Paragraph(" ")); int NumColumnsCC = 2; Table tableCC = new Table(NumColumnsCC); int headerwidthsCC[] = { 30, 15 }; // percentage tableCC.setWidths(headerwidthsCC); tableCC.setWidth(50); // percentage tableCC.setPadding(3); tableCC.setCellsFitPage(true); tableCC.getDefaultCell().setBorderWidth(1); tableCC.getDefaultCell().setGrayFill(GREY_FILL_HEADER); tableCC.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER); tableCC.addCell(new Paragraph("Crystal class", FONT_DOC_BOLD)); tableCC.addCell(new Paragraph("Number of crystals", FONT_DOC_BOLD)); tableCC.getDefaultCell().setGrayFill(GREY_FILL_DATA); int nbCC = listOfCrystalClass.size(); for (int cc = 0; cc < nbCC; cc++) { if (listOfNbCrystalPerClass.get(cc) > 0) { tableCC.addCell(new Paragraph(listOfCrystalClass.get(cc).getCrystalClassName() + " (" + listOfCrystalClass.get(cc).getCrystalClassCode() + ")", FONT_DOC)); tableCC.addCell(new Paragraph(listOfNbCrystalPerClass.get(cc).toString(), FONT_DOC)); } LOG.debug("classe " + listOfCrystalClass.get(cc).getCrystalClassCode() + ": " + listOfNbCrystalPerClass.get(cc).toString()); } document.add(tableCC); // total // int nbPuckScreen = nbCrystal3; // int nbTotal = nbCrystal1 + nbCrystal2 + nbCrystalT; int nbPuckScreen = listOfNbCrystalPerClass.get(getCrystalClassIndex(listOfCrystalClass, "PS")); // nbTotal = C+CR+T+SC+SCR int nbTotal = listOfNbCrystalPerClass.get(getCrystalClassIndex(listOfCrystalClass, "C")) + listOfNbCrystalPerClass.get(getCrystalClassIndex(listOfCrystalClass, "SC")) + listOfNbCrystalPerClass.get(getCrystalClassIndex(listOfCrystalClass, "T")) + listOfNbCrystalPerClass.get(getCrystalClassIndex(listOfCrystalClass, "CR")) + listOfNbCrystalPerClass.get(getCrystalClassIndex(listOfCrystalClass, "SCR")); document.add(new Paragraph(" ")); document.add(new Paragraph("Total number of tests: " + new String(new Integer(nbTotal).toString()), FONT_DOC)); document.add(new Paragraph("Nb of puck screens: " + new String(new Integer(nbPuckScreen).toString()), FONT_DOC)); document.add(new Paragraph( "Total number of samples: " + new String(new Integer(nbTotal + (nbPuckScreen * 10)).toString()), FONT_DOC)); } }
From source file:ispyb.client.mx.collection.PdfRtfExporter.java
License:Open Source License
/** * set a table for a sessionDataObject/*from w ww .ja v a2 s . c o m*/ * * @param document * @param sessionDataObject * @param mRequest */ private void setDetailSessionObjectTable(Document document, SessionDataObjectInformation sessionDataObject, HttpServletRequest mRequest) { try { int nbCol = 6; int nbRows = 5; List<Param> listParam = sessionDataObject.getListParameters(); int idParam = 0; int nbParam = listParam.size(); nbRows = Math.max(nbRows, nbParam); boolean secondGraph = sessionDataObject.getGraph2Path() != null && !sessionDataObject.getGraph2Path().isEmpty(); if (secondGraph) nbCol += 1; Table table = new Table(nbCol); int l = 0; int[] headersWidth = new int[nbCol]; headersWidth[l++] = 10; // def headersWidth[l++] = 6; // parameters title headersWidth[l++] = 6; // parameters value headersWidth[l++] = 12; // Thumbnail headersWidth[l++] = 12; // Snapshot headersWidth[l++] = 22; // Graph if (secondGraph) headersWidth[l++] = 22; // Graph2 table.setWidths(headersWidth); table.setWidth(100); // percentage table.setPadding(1); table.setCellsFitPage(true); table.setTableFitsPage(true); table.setBorderWidth(1); table.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER); // no header // first Row // firstCell: def : date SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); String collectTime = formatter.format(sessionDataObject.getDataTime()); Cell c = getCellValue(collectTime); c.setBorderWidthBottom(0); table.addCell(c); // second Cell param setCellParam(table, listParam, idParam++, 1); // third Cell : thumbnail Cell cellThumbnail = getCellImage(sessionDataObject.getImageThumbnailPath()); cellThumbnail.setRowspan(nbRows); cellThumbnail.setBorderWidth(0); table.addCell(cellThumbnail); // 4 Cell : snapshot Cell cellSnapshot = getCellImage(sessionDataObject.getCrystalSnapshotPath()); cellSnapshot.setRowspan(nbRows); cellSnapshot.setBorderWidth(0); table.addCell(cellSnapshot); // 5 Cell : graph Cell cellGraph = getCellGraph(sessionDataObject); cellGraph.setRowspan(nbRows); cellGraph.setBorderWidth(0); table.addCell(cellGraph); // 6 Cell : graph2 if (secondGraph) { Cell cellGraph2 = getCellImage(sessionDataObject.getGraph2Path()); cellGraph2.setRowspan(nbRows); cellGraph2.setBorderWidth(0); table.addCell(cellGraph2); } // second row Cell c2 = getCellValue(sessionDataObject.getImagePrefix() + " " + sessionDataObject.getRunNumber()); c2.setBorderWidth(0); table.addCell(c2); // param2 setCellParam(table, listParam, idParam++, 1); // third row Cell c3 = getCellValue(sessionDataObject.getExperimentType()); c3.setBorderWidth(0); table.addCell(c3); // param3 setCellParam(table, listParam, idParam++, 1); // 4 row Cell c4 = getCellValue(sessionDataObject.getSampleNameProtein()); c4.setBorderWidth(0); table.addCell(c4); // param4 setCellParam(table, listParam, idParam++, 1); // 5 row Cell c5 = new Cell(); c5.setHorizontalAlignment(Element.ALIGN_LEFT); c5.add(new Paragraph(sessionDataObject.getComments(), FONT_DOC_ITALIC)); c5.setBorderWidth(0); c5.setRowspan(nbRows - 4); table.addCell(c5); // param4 setCellParam(table, listParam, idParam++, 1); for (int i = 5; i < nbRows; i++) { setCellParam(table, listParam, idParam++, 1); } // results // workflow result status if (sessionDataObject.isWorkflow()) { Cell resultCell = getWorkflowResult(sessionDataObject.getWorkflow(), mRequest); resultCell.setHorizontalAlignment(Element.ALIGN_LEFT); resultCell.setColspan(nbCol); table.addCell(resultCell); } // collect OSC if ((sessionDataObject.isDataCollection() && !sessionDataObject.getDataCollection().getDataCollectionGroupVO().getExperimentType() .equals(Constants.EXPERIMENT_TYPE_CHARACTERIZATION))) { DataCollectionExporter dcExporter = new DataCollectionExporter(df2, df3, proposalCode, proposalNumber, mRequest); DataCollection3VO dataCollection = sessionDataObject.getDataCollection(); DataCollectionInformation dcInfo = dcExporter.getDataCollectionInformation(dataCollection, getSampleRankingVO(dataCollection.getDataCollectionId()), getAutoProcRankingVO(dataCollection.getDataCollectionId())); Cell resultCell = getAutoProcResultStatus(dcInfo); resultCell.setColspan(nbCol); resultCell.setHorizontalAlignment(Element.ALIGN_LEFT); table.addCell(resultCell); document.add(table); document.add(new Paragraph(" ", VERY_SMALL_FONT)); setAutoProcResultsTable(document, dcInfo); } else if (sessionDataObject.isWorkflow() && sessionDataObject.getWorkflow().isMXPressEOIA()) { // MXPRESS // wf DataCollectionExporter dcExporter = new DataCollectionExporter(df2, df3, proposalCode, proposalNumber, mRequest); DataCollection3VO dataCollection = sessionDataObject.getListDataCollection().get(0); DataCollectionInformation dcInfo = dcExporter.getDataCollectionInformation(dataCollection, getSampleRankingVO(dataCollection.getDataCollectionId()), getAutoProcRankingVO(dataCollection.getDataCollectionId())); Cell resultCell = getAutoProcResultStatus(dcInfo); resultCell.setHorizontalAlignment(Element.ALIGN_LEFT); resultCell.setColspan(nbCol); table.addCell(resultCell); document.add(table); document.add(new Paragraph(" ", VERY_SMALL_FONT)); setAutoProcResultsTable(document, dcInfo); } else if ((sessionDataObject.isDataCollection() && sessionDataObject.getDataCollection().getDataCollectionGroupVO().getExperimentType() .equals(Constants.EXPERIMENT_TYPE_CHARACTERIZATION))) { // Characterization DataCollectionExporter dcExporter = new DataCollectionExporter(df2, df3, proposalCode, proposalNumber, mRequest); DataCollection3VO dataCollection = sessionDataObject.getDataCollection(); DataCollectionInformation dcInfo = dcExporter.getDataCollectionInformation(dataCollection, getSampleRankingVO(dataCollection.getDataCollectionId()), getAutoProcRankingVO(dataCollection.getDataCollectionId())); Cell resultCell = getCharacterizationResultStatus(dcInfo, mRequest); resultCell.setColspan(nbCol); resultCell.setHorizontalAlignment(Element.ALIGN_LEFT); table.addCell(resultCell); document.add(table); document.add(new Paragraph(" ", VERY_SMALL_FONT)); setStrategyTable2(document, dcInfo); } else { List<Param> listResults = sessionDataObject.getListResults(); if (listResults != null) { int nbResults = listResults.size(); for (int j = 0; j < nbResults; j++) { setCellParam(table, listResults, j, 2); Cell eCell = getEmptyCell(nbCol - 3); eCell.setBorderWidth(0); table.addCell(eCell); } } document.add(table); document.add(new Paragraph(" ", FONT_SPACE)); } } catch (Exception e) { e.printStackTrace(); } }
From source file:ispyb.client.mx.collection.PdfRtfExporter.java
License:Open Source License
/** * sets the date and if it is a SCREEN or a COLLECT and indexing status * /*from w w w . j a v a2 s .co m*/ * @param document * @param dcValue * @param date * @throws Exception */ private void setDataCollectionGeneralInfo(Document document, DataCollection3VO dcValue, DataCollectionInformation dcInfo) throws Exception { String collect = "Collect"; if (DataCollectionExporter.isDataCollectionScreening(dcValue)) { collect = "Screen"; } String date = dcInfo.getDataCollectionDate(); String screeningSuccess = dcInfo.getScreeningSuccess(); String screeningFailure = dcInfo.getScreeningFailure(); String screeningNotDone = dcInfo.getScreeningNotDone(); Table aTable = new Table(3); aTable.setWidth(100); // percentage aTable.setPadding(3); aTable.setCellsFitPage(true); aTable.getDefaultCell().setBorderWidth(0); aTable.setBorderWidth(0); aTable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT); aTable.addCell(new Paragraph(date, FONT_DOC)); aTable.addCell(new Paragraph(collect, FONT_DOC)); // no indexing availabe if (screeningNotDone != null && !screeningNotDone.equals("")) { aTable.addCell(new Paragraph(screeningNotDone, FONT_INDEXING_NOTDONE)); } else if (screeningFailure != null && !screeningFailure.equals("")) { // indexing // failed aTable.addCell(new Paragraph(screeningFailure, FONT_INDEXING_FAILED)); } else if (screeningSuccess != null && !screeningSuccess.equals("")) { // indexing // successful aTable.addCell(new Paragraph(screeningSuccess, FONT_INDEXING_SUCCESS)); } else { aTable.addCell(new Paragraph(" ")); } document.add(aTable); document.add(new Paragraph(" ", VERY_SMALL_FONT)); }
From source file:ispyb.client.mx.collection.PdfRtfExporter.java
License:Open Source License
/** * set the EDNA Table//w w w. j a v a 2 s . c o m * * @param document * @param dcInfo * @throws Exception */ private void setEDNATable(Document document, DataCollectionInformation dcInfo) throws Exception { if (dcInfo.getSpacegroup() != "") { int noCol = 4; Table tableEDNA = new Table(noCol); int headerEDNA[] = { 10, 10, 10, 10 }; // percentage tableEDNA.setWidths(headerEDNA); tableEDNA.setWidth(70); // percentage tableEDNA.setPadding(3); tableEDNA.setCellsFitPage(true); tableEDNA.setTableFitsPage(true); // tableEDNA.getDefaultCell().setBorderWidth(1); tableEDNA.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER); // EDNA Header tableEDNA.getDefaultCell().setBackgroundColor(BLUE_COLOR); tableEDNA.addCell(new Paragraph("Space Group", FONT_DOC_BOLD)); tableEDNA.addCell(new Paragraph("Unit Cell", FONT_DOC_BOLD)); tableEDNA.addCell(new Paragraph("Mosaicity\n(" + Constants.ANGSTROM + ")", FONT_DOC_BOLD)); tableEDNA.addCell(new Paragraph("Ranking Resolution\n(" + Constants.ANGSTROM + ")", FONT_DOC_BOLD)); tableEDNA.getDefaultCell().setBorderWidth(1); tableEDNA.getDefaultCell().setBackgroundColor(WHITE_COLOR); // EDNA data String unitCell = dcInfo.getCellA() + " (" + dcInfo.getCellAlpha() + ")\n" + dcInfo.getCellB() + " (" + dcInfo.getCellBeta() + ")\n" + dcInfo.getCellC() + " (" + dcInfo.getCellGamma() + ")"; tableEDNA.addCell(new Paragraph(dcInfo.getSpacegroup(), FONT_DOC)); tableEDNA.addCell(new Paragraph(unitCell, FONT_DOC)); tableEDNA.addCell(new Paragraph(dcInfo.getMosaicity(), FONT_DOC)); tableEDNA.addCell(new Paragraph(dcInfo.getResObserved(), FONT_DOC)); // document.add(tableEDNA); document.add(new Paragraph(" ", VERY_SMALL_FONT)); } }
From source file:ispyb.client.mx.collection.PdfRtfExporter.java
License:Open Source License
private void setEDNATable2(Document document, DataCollectionInformation dcInfo) throws Exception { if (dcInfo.getSpacegroup() != "") { int noCol = 4; Table tableEDNA = new Table(noCol); int headerEDNA[] = { 10, 10, 10, 10 }; // percentage tableEDNA.setWidths(headerEDNA); tableEDNA.setWidth(100); // percentage tableEDNA.setPadding(3);//from w w w.j av a 2s . com tableEDNA.setCellsFitPage(true); tableEDNA.setTableFitsPage(true); // tableEDNA.getDefaultCell().setBorderWidth(1); tableEDNA.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER); // EDNA Header tableEDNA.getDefaultCell().setGrayFill(GREY_FILL_HEADER); tableEDNA.addCell(new Paragraph("Space Group", FONT_DOC_BOLD)); tableEDNA.addCell(new Paragraph("Unit Cell (a, b, c, alpha, beta, gamma)", FONT_DOC_BOLD)); tableEDNA.addCell(new Paragraph("Mosaicity (" + Constants.DEGREE + ")", FONT_DOC_BOLD)); tableEDNA.addCell(new Paragraph("Ranking Resolution (" + Constants.ANGSTROM + ")", FONT_DOC_BOLD)); tableEDNA.getDefaultCell().setBorderWidth(1); tableEDNA.getDefaultCell().setBackgroundColor(WHITE_COLOR); // EDNA data String unitCell = dcInfo.getCellA() + ", " + dcInfo.getCellB() + ", " + dcInfo.getCellC() + "\n" + dcInfo.getCellAlpha() + ", " + dcInfo.getCellBeta() + ", " + dcInfo.getCellGamma(); tableEDNA.addCell(new Paragraph(dcInfo.getSpacegroup(), FONT_DOC)); tableEDNA.addCell(new Paragraph(unitCell, FONT_DOC)); tableEDNA.addCell(new Paragraph(dcInfo.getMosaicity(), FONT_DOC)); tableEDNA.addCell(new Paragraph(dcInfo.getResObserved(), FONT_DOC)); // document.add(tableEDNA); document.add(new Paragraph(" ", VERY_SMALL_FONT)); } }
From source file:ispyb.client.mx.collection.PdfRtfExporter.java
License:Open Source License
private void setImagesTable(Document document, DataCollectionInformation dcInfo) throws Exception { String imgCrystal = dcInfo.getPathjpgCrystal(); String imgDiff1 = dcInfo.getPathDiffractionImg1(); String imgDiff2 = dcInfo.getPathDiffractionImg2(); int nbCol = 0; if (imgCrystal != null && !imgCrystal.equals("")) { nbCol++;// ww w .j a va 2 s. c o m } if (imgDiff1 != null && !imgDiff1.equals("")) { nbCol++; } if (imgDiff2 != null && !imgDiff2.equals("")) { nbCol++; } if (nbCol > 0) { Table tableImage = new Table(nbCol); tableImage.setCellsFitPage(true); tableImage.setWidth(100); // percentage tableImage.getDefaultCell().setBorderWidth(0); tableImage.setBorderWidth(0); tableImage.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER); // ------------------------------------- Insert crystal image // ---------------------------- if (imgCrystal != null && !imgCrystal.equals("")) { try { Image jpgCrystal = Image.getInstance(imgCrystal); jpgCrystal.scaleAbsolute(CRYSTAL_IMAGE_WIDTH, CRYSTAL_IMAGE_HEIGHT); Cell cellCrystalImage = new Cell(jpgCrystal); cellCrystalImage.setLeading(0); cellCrystalImage.setBorderWidth(0); cellCrystalImage.setHorizontalAlignment(Element.ALIGN_CENTER); tableImage.addCell(cellCrystalImage); } catch (IOException e) { tableImage.addCell(new Paragraph(imgCrystal + " not found", FONT_DOC)); } } // --- Image 1 if (imgDiff1 != null && !imgDiff1.equals("")) { try { Image jpg1 = Image.getInstance(imgDiff1); jpg1.scaleAbsolute(DIFF_IMAGE_WIDTH, DIFF_IMAGE_HEIGHT); Cell cellDiffractionThumbnail1 = new Cell(jpg1); cellDiffractionThumbnail1.setLeading(0); cellDiffractionThumbnail1.setBorderWidth(0); cellDiffractionThumbnail1.setHorizontalAlignment(Element.ALIGN_CENTER); tableImage.addCell(cellDiffractionThumbnail1); } catch (IOException e) { tableImage.addCell(new Paragraph(imgDiff1 + " not found", FONT_DOC)); } } // --- Image 2 if (imgDiff2 != null && !imgDiff2.equals("")) { try { Image jpg2 = Image.getInstance(imgDiff2); jpg2.scaleAbsolute(DIFF_IMAGE_WIDTH, DIFF_IMAGE_HEIGHT); Cell cellDiffractionThumbnail2 = new Cell(jpg2); cellDiffractionThumbnail2.setLeading(0); cellDiffractionThumbnail2.setBorderWidth(0); cellDiffractionThumbnail2.setHorizontalAlignment(Element.ALIGN_CENTER); tableImage.addCell(cellDiffractionThumbnail2); } catch (IOException e) { tableImage.addCell(new Paragraph(imgDiff2 + " not found", FONT_DOC)); } } // document.add(tableImage); document.add(new Paragraph(" ", VERY_SMALL_FONT)); } }
From source file:ispyb.client.mx.collection.PdfRtfExporter.java
License:Open Source License
/** * set the strategy table and wedge & subwedge strategy tables * /*from ww w .j a v a 2 s .c o m*/ * @param document * @param dcInfo * @throws Exception */ private void setStrategyTable(Document document, DataCollectionInformation dcInfo) throws Exception { // ------------------------------------------- Strategy Wedge // ------------------------------------------------ List<StrategyWedgeInformation> strategyWedgeInformationList = dcInfo.getListStrategyWedgeInformation(); for (Iterator<StrategyWedgeInformation> i = strategyWedgeInformationList.iterator(); i.hasNext();) { document.add(new Paragraph(" ", VERY_SMALL_FONT)); StrategyWedgeInformation swi = i.next(); Table strategyWedgeTable = new Table(10); int headerStrategyWedge[] = { 8, 10, 10, 10, 10, 10, 10, 10, 10, 20 }; // percentage strategyWedgeTable.setWidths(headerStrategyWedge); strategyWedgeTable.setWidth(100); strategyWedgeTable.setCellsFitPage(true); strategyWedgeTable.setTableFitsPage(true); strategyWedgeTable.setPadding(0); strategyWedgeTable.getDefaultCell().setBorderWidth(0); strategyWedgeTable.setBorderWidth(0); strategyWedgeTable.getDefaultCell().setBackgroundColor(WEDGE_COLOR); strategyWedgeTable.addCell(new Paragraph("Wedge number", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Resolution\n(" + Constants.ANGSTROM + ")", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Completeness", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Multiplicity", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Total dose", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Number of Images", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Phi\n(" + Constants.DEGREE + ")", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Kappa\n(" + Constants.DEGREE + ")", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Wavelength", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Comments", FONT_DOC_BOLD)); strategyWedgeTable.getDefaultCell().setBackgroundColor(WHITE_COLOR); // rows strategyWedgeTable.addCell(new Paragraph(swi.getWedgeNumber(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getResolution(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getCompleteness(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getMultiplicity(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getDoseTotal(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getNumberOfImages(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getPhi(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getKappa(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getWavelength(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getComments(), FONT_DOC)); document.add(strategyWedgeTable); // --- strategy sub wedge if (swi.getListStrategySubWedgeInformation().size() > 0) { document.add(new Paragraph(" ", VERY_SMALL_FONT)); Table strategySubWedgeTable = new Table(12); int headerStrategySubWedge[] = { 8, 15, 10, 10, 10, 10, 10, 10, 10, 8, 8, 20 }; // percentage strategySubWedgeTable.setWidths(headerStrategySubWedge); strategySubWedgeTable.setWidth(80); strategySubWedgeTable.setCellsFitPage(true); strategySubWedgeTable.setTableFitsPage(true); strategySubWedgeTable.setPadding(0); strategySubWedgeTable.getDefaultCell().setBorderWidth(0); strategySubWedgeTable.setBorderWidth(0); strategySubWedgeTable.getDefaultCell().setBackgroundColor(SUBWEDGE_COLOR); strategySubWedgeTable.addCell(new Paragraph("Sub Wedge number", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Rotation axis", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Axis start", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Axis end", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Exposure time", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Transmission", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Oscillation Range", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Completeness", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Multiplicity", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Total dose", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Number of images", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Comments", FONT_DOC_BOLD)); strategySubWedgeTable.getDefaultCell().setBackgroundColor(WHITE_COLOR); // rows for (Iterator<StrategySubWedgeInformation> s = swi.getListStrategySubWedgeInformation() .iterator(); s.hasNext();) { StrategySubWedgeInformation sswi = s.next(); strategySubWedgeTable.addCell(new Paragraph(sswi.getSubWedgeNumber(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getRotationAxis(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getAxisStart(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getAxisEnd(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getExposureTime(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getTransmission(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getOscillationRange(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getCompleteness(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getMultiplicity(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getDoseTotal(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getNumberOfImages(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getComments(), FONT_DOC)); } document.add(strategySubWedgeTable); } } document.add(new Paragraph(" ", VERY_SMALL_FONT)); }
From source file:ispyb.client.mx.collection.PdfRtfExporter.java
License:Open Source License
/** * set the strategy table and wedge & subwedge strategy tables copy from * setStrategyTable, waiting for feedback that we can remove the old reports * and the first method// w ww . ja va 2s .c o m * * @param document * @param dcInfo * @throws Exception */ private void setStrategyTable2(Document document, DataCollectionInformation dcInfo) throws Exception { // ------------------------------------------- Strategy Wedge // ------------------------------------------------ List<StrategyWedgeInformation> strategyWedgeInformationList = dcInfo.getListStrategyWedgeInformation(); for (Iterator<StrategyWedgeInformation> i = strategyWedgeInformationList.iterator(); i.hasNext();) { document.add(new Paragraph(" ", VERY_SMALL_FONT)); StrategyWedgeInformation swi = i.next(); Table strategyWedgeTable = new Table(10); int headerStrategyWedge[] = { 8, 10, 10, 10, 10, 10, 10, 10, 10, 20 }; // percentage strategyWedgeTable.setWidths(headerStrategyWedge); strategyWedgeTable.setWidth(100); strategyWedgeTable.setCellsFitPage(true); strategyWedgeTable.setTableFitsPage(true); strategyWedgeTable.setPadding(1); strategyWedgeTable.getDefaultCell().setBorderWidth(1); strategyWedgeTable.setBorderWidth(1); strategyWedgeTable.getDefaultCell().setBackgroundColor(LIGHT_GREY_COLOR); strategyWedgeTable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER); strategyWedgeTable.addCell(new Paragraph("Wedge number", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Resolution (" + Constants.ANGSTROM + ")", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Completeness", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Multiplicity", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Total dose", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Number of Images", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Phi (" + Constants.DEGREE + ")", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Kappa (" + Constants.DEGREE + ")", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Wavelength", FONT_DOC_BOLD)); strategyWedgeTable.addCell(new Paragraph("Comments", FONT_DOC_BOLD)); strategyWedgeTable.getDefaultCell().setBackgroundColor(WHITE_COLOR); // rows strategyWedgeTable.addCell(new Paragraph(swi.getWedgeNumber(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getResolution(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getCompleteness(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getMultiplicity(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getDoseTotal(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getNumberOfImages(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getPhi(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getKappa(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getWavelength(), FONT_DOC)); strategyWedgeTable.addCell(new Paragraph(swi.getComments(), FONT_DOC)); document.add(strategyWedgeTable); // --- strategy sub wedge if (swi.getListStrategySubWedgeInformation().size() > 0) { document.add(new Paragraph(" ", VERY_SMALL_FONT)); Table strategySubWedgeTable = new Table(12); int headerStrategySubWedge[] = { 8, 15, 10, 10, 10, 10, 10, 10, 10, 8, 8, 20 }; // percentage strategySubWedgeTable.setWidths(headerStrategySubWedge); strategySubWedgeTable.setWidth(97); strategySubWedgeTable.setCellsFitPage(true); strategySubWedgeTable.setTableFitsPage(true); strategySubWedgeTable.setPadding(1); strategySubWedgeTable.getDefaultCell().setBorderWidth(1); strategySubWedgeTable.setBorderWidth(1); strategySubWedgeTable.getDefaultCell().setBackgroundColor(LIGHT_GREY_COLOR); strategySubWedgeTable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER); strategySubWedgeTable.addCell(new Paragraph("Sub Wedge number", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Rotation axis", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Axis start", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Axis end", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Exposure time", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Transmission", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Oscillation Range", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Completeness", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Multiplicity", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Total dose", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Number of images", FONT_DOC_BOLD)); strategySubWedgeTable.addCell(new Paragraph("Comments", FONT_DOC_BOLD)); strategySubWedgeTable.getDefaultCell().setBackgroundColor(WHITE_COLOR); // rows for (Iterator<StrategySubWedgeInformation> s = swi.getListStrategySubWedgeInformation() .iterator(); s.hasNext();) { StrategySubWedgeInformation sswi = s.next(); strategySubWedgeTable.addCell(new Paragraph(sswi.getSubWedgeNumber(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getRotationAxis(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getAxisStart(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getAxisEnd(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getExposureTime(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getTransmission(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getOscillationRange(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getCompleteness(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getMultiplicity(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getDoseTotal(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getNumberOfImages(), FONT_DOC)); strategySubWedgeTable.addCell(new Paragraph(sswi.getComments(), FONT_DOC)); } document.add(strategySubWedgeTable); } } document.add(new Paragraph(" ", VERY_SMALL_FONT)); }
From source file:ispyb.client.mx.collection.PdfRtfExporter.java
License:Open Source License
private void setRankingTable(Document document, DataCollectionInformation dcInfo) throws Exception { SampleRankingVO rankingVO = dcInfo.getSampleRankingVO(); if (rankingVO == null) { return;// w w w.j a v a2s . c om } DecimalFormat decimalFormat1 = (DecimalFormat) NumberFormat.getInstance(Locale.US); decimalFormat1.applyPattern("0"); DecimalFormat decimalFormat2 = (DecimalFormat) NumberFormat.getInstance(Locale.US); decimalFormat2.applyPattern("0.00"); Table aTable = new Table(6); // aTable.setWidth(100); // percentage aTable.setPadding(3); aTable.setCellsFitPage(true); aTable.getDefaultCell().setBorderWidth(1); aTable.setBorderWidth(1); aTable.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER); // header aTable.getDefaultCell().setGrayFill(GREY_FILL_HEADER); aTable.addCell(new Paragraph("Ranking Resolution\n(" + Constants.ANGSTROM + ")", FONT_DOC_BOLD)); aTable.addCell(new Paragraph("Exposure Time\n(s)", FONT_DOC_BOLD)); aTable.addCell(new Paragraph("Mosaicity\n(" + Constants.DEGREE + ")", FONT_DOC_BOLD)); aTable.addCell(new Paragraph("Number of spots", FONT_DOC_BOLD)); aTable.addCell(new Paragraph("Number of images", FONT_DOC_BOLD)); aTable.addCell(new Paragraph("Total", FONT_DOC_BOLD)); aTable.getDefaultCell().setBackgroundColor(WHITE_COLOR); // row String rankRes = "#" + decimalFormat1.format(rankingVO.getTheoreticalResolutionRank()); if (rankingVO.getTheoreticalResolutionValue() != null && !Double.isNaN(rankingVO.getTheoreticalResolutionValue())) { rankRes += " " + decimalFormat2.format(rankingVO.getTheoreticalResolutionValue()); } String rankExp = "#" + decimalFormat1.format(rankingVO.getTotalExposureTimeRank()); if (rankingVO.getTotalExposureTimeValue() != null && !Double.isNaN(rankingVO.getTotalExposureTimeValue())) { rankExp += " " + decimalFormat2.format(rankingVO.getTotalExposureTimeValue()); } String rankMos = "#" + decimalFormat1.format(rankingVO.getMosaicityRank()); if (rankingVO.getMosaicityValue() != null && !Double.isNaN(rankingVO.getMosaicityValue())) { rankMos += " " + decimalFormat2.format(rankingVO.getMosaicityValue()); } String rankSpot = "#" + decimalFormat1.format(rankingVO.getNumberOfSpotsIndexedRank()); if (rankingVO.getNumberOfSpotsIndexedValue() != null && !Double.isNaN(rankingVO.getNumberOfSpotsIndexedValue())) { rankSpot += " " + decimalFormat1.format(rankingVO.getNumberOfSpotsIndexedValue()); } String rankImages = "#" + decimalFormat1.format(rankingVO.getNumberOfImagesRank()); if (rankingVO.getNumberOfImagesValue() != null && !Double.isNaN(rankingVO.getNumberOfImagesValue())) { rankImages += " " + decimalFormat1.format(rankingVO.getNumberOfImagesValue()); } String rankTotal = "#" + decimalFormat1.format(rankingVO.getTotalRank()); if (rankingVO.getTotalScore() != null && !Double.isNaN(rankingVO.getTotalScore())) { rankTotal += " " + decimalFormat1.format(rankingVO.getTotalScore()) + " %"; } // ... rank res if (rankingVO.getTheoreticalResolutionRank() == 1) { aTable.getDefaultCell().setBackgroundColor(GREEN_COLOR_RANK); } else if (rankingVO.getTheoreticalResolutionValue() == null || Double.isNaN(rankingVO.getTheoreticalResolutionValue())) { aTable.getDefaultCell().setBackgroundColor(NULL_COLOR_RANK); } else { aTable.getDefaultCell().setBackgroundColor(WHITE_COLOR); } aTable.addCell(new Paragraph(rankRes, FONT_DOC)); // ... exp. time if (rankingVO.getTotalExposureTimeRank() == 1) { aTable.getDefaultCell().setBackgroundColor(GREEN_COLOR_RANK); } else if (rankingVO.getTotalExposureTimeValue() == null || Double.isNaN(rankingVO.getTotalExposureTimeValue())) { aTable.getDefaultCell().setBackgroundColor(NULL_COLOR_RANK); } else { aTable.getDefaultCell().setBackgroundColor(WHITE_COLOR); } aTable.addCell(new Paragraph(rankExp, FONT_DOC)); // ... mosaicity if (rankingVO.getMosaicityRank() == 1) { aTable.getDefaultCell().setBackgroundColor(GREEN_COLOR_RANK); } else if (rankingVO.getMosaicityValue() == null || Double.isNaN(rankingVO.getMosaicityValue())) { aTable.getDefaultCell().setBackgroundColor(NULL_COLOR_RANK); } else { aTable.getDefaultCell().setBackgroundColor(WHITE_COLOR); } aTable.addCell(new Paragraph(rankMos, FONT_DOC)); // ... number of spots if (rankingVO.getNumberOfSpotsIndexedRank() == 1) { aTable.getDefaultCell().setBackgroundColor(GREEN_COLOR_RANK); } else if (rankingVO.getNumberOfSpotsIndexedValue() == null || Double.isNaN(rankingVO.getNumberOfSpotsIndexedValue())) { aTable.getDefaultCell().setBackgroundColor(NULL_COLOR_RANK); } else { aTable.getDefaultCell().setBackgroundColor(WHITE_COLOR); } aTable.addCell(new Paragraph(rankSpot, FONT_DOC)); // ... number of images if (rankingVO.getNumberOfImagesRank() == 1) { aTable.getDefaultCell().setBackgroundColor(GREEN_COLOR_RANK); } else if (rankingVO.getNumberOfImagesValue() == null || Double.isNaN(rankingVO.getNumberOfImagesValue())) { aTable.getDefaultCell().setBackgroundColor(NULL_COLOR_RANK); } else { aTable.getDefaultCell().setBackgroundColor(WHITE_COLOR); } aTable.addCell(new Paragraph(rankImages, FONT_DOC)); // ... total if (rankingVO.getTotalRank() == 1) { aTable.getDefaultCell().setBackgroundColor(GREEN_COLOR_RANK); } else if (rankingVO.getTotalScore() == null || Double.isNaN(rankingVO.getTotalScore())) { aTable.getDefaultCell().setBackgroundColor(NULL_COLOR_RANK); } else { aTable.getDefaultCell().setBackgroundColor(WHITE_COLOR); } aTable.addCell(new Paragraph(rankTotal, FONT_DOC)); // document.add(aTable); document.add(new Paragraph(" ", VERY_SMALL_FONT)); }