String imgFilename = objDir.getPath() + File.separator + rcImgMd.getTechnicalMetadata().getFilename(); File imgFile = new File(imgFilename); if (!imgFile.exists() || !imgFile.isFile()) {
rcImageMetadata.loadTextSegmentMetadata(); List<RcTextSegmentMetadata> rcTxtSegMdList = rcImageMetadata.getTextSegmentMetadata(); ListIterator<RcTextSegmentMetadata> rcTxtSegMdLit = rcTxtSegMdList.listIterator(); Field pgSeqField = new Field("pg_seq", Integer.toString(rcImageMetadata.getSequence()), Field.Store.YES, Field.Index.NOT_ANALYZED, Field.TermVector.NO); Field pgNameField = new Field("pg_name", rcImageMetadata.getPageName().trim(), Field.Store.YES, Field.Index.NOT_ANALYZED, Field.TermVector.NO); Field pgTxtField = new Field("body", pgTxt.toString(), Field.Store.YES, Field.Index.ANALYZED, Field.TermVector.WITH_POSITIONS_OFFSETS); Field pgTxtLocsField = new Field("wordlocations", pgTxtLocs.toString(), Field.Store.YES, Field.Index.NO, Field.TermVector.NO); rcImageMetadata.clearTextSegmentMetadata();
rcImgMd.loadTextSegmentMetadata(); List<RcTextSegmentMetadata> rcTxtSegMdList = rcImgMd.getTextSegmentMetadata(); servletOutputStreamWriter.close(); servletOutputStream.close(); rcImgMd.clearTextSegmentMetadata();
imgFile = new File(rcObjDir.getPath() + File.separator + rcImgMdList.get(r.getPageIndex()).getTechnicalMetadata().getFilename()); canvas.put("label", new JSONArray().put(rcImgMd.getPageName())); canvas.put("width", dim.width); canvas.put("height", dim.height);
RcCompoundImageObjectMetadata rcObjMd = (RcCompoundImageObjectMetadata) rcImageMetadata.getParentObjectMetadata(); File rcTiffFile = new File(destinationDirectory.getPath() + File.separator + StringUtils.padl(Integer.toString(rcImageMetadata.getSequence()), 8, '0') + ".tif"); if (rcImageMetadata.getTechnicalMetadata() == null) { rcImageMetadata.setTechnicalMetadata(new RcImageTechnicalMetadata(rcImageMetadata)); rcImageMetadata.getTechnicalMetadata().setFilename(rcTiffFile.getName()); rcImageMetadata.setTextSegmentMetadata(RcAlto.asTextSegmentMetadata(alto, rcImage)); rcImageMetadata.setTechnicalMetadata(RcJaiUtils.getRcImageTechnicalMetadata(rcTiffFile)); rcImageMetadata.setTextSegmentMetadata(rcTxtSegMdLst); rcImageMetadata.setTechnicalMetadata(RcJaiUtils.getRcImageTechnicalMetadata(rcTiffFile)); if (rcImageMetadata.getTextSegmentMetadata() != null && rcImageMetadata.getTextSegmentMetadata().size() > 0) { alto = RcAlto.asAlto(rcImageMetadata.getTextSegmentMetadata(), rcImage, rcObjMd, rcImageMetadata); rcObjMd.getAltoFileMetadataMap().put(rcImageMetadata.getSequence(), new RcAltoFileMetadata(rcObjMd, altoOutputFile));
for (int i = 0; i < rcImgMdList.size(); i++) { if (pgSeq.equals(rcImgMdList.get(i).getSequence())) { File imgFile = new File(objDir.getPath() + File.separator + rcImgMd.getTechnicalMetadata().getFilename()); if (!imgFile.exists()) { rcPdfMetadata.setTitle(rcObjMd.getTitle() + " - Page " + rcImgMd.getPageName());
for (RcImageMetadata rcImgMd : rcImgMdList) { if (pgSeq == rcImgMd.getSequence()) { String imgFilename = objDir.getPath() + File.separator + rcImgMd.getTechnicalMetadata().getFilename(); File imgFile = new File(imgFilename); if (!imgFile.exists() || !imgFile.isFile()) {
rcImgMd = new RcImageMetadata(rcObjectMetadata, i + 1, Integer.toString(i + 1)); rcImgMd.setTechnicalMetadata(rcImgTechMd); rcImgMd.setPageName(RcMetadataCreationTool.getDefaultPageName(config, i, dataFiles.get(i))); rcImgMd = new RcImageMetadata(rcObjectMetadata, i + 1, Integer.toString(i + 1)); rcImgMd.setTechnicalMetadata(rcImgTechMd); rcImgMd.setPageName(RcMetadataCreationTool.getDefaultPageName(config, i, dataFiles.get(i))); rcImgMd = new RcImageMetadata(rcObjectMetadata, i + 1, Integer.toString(i + 1)); rcImgMd.setTechnicalMetadata(rcImgTechMd); rcImgMd.setPageName(RcMetadataCreationTool.getDefaultPageName(config, i, dataFiles.get(i))); rcImgMd = new RcImageMetadata(rcObjectMetadata, i + 1, Integer.toString(i + 1)); rcImgMd.setTechnicalMetadata(rcImgTechMd); rcImgMd.setPageName(RcMetadataCreationTool.getDefaultPageName(config, i, dataFiles.get(i))); rcImgMd = new RcImageMetadata(rcObjectMetadata, i + 1, Integer.toString(i + 1)); rcImgMd.setTechnicalMetadata(rcImgTechMd); rcImgMd.setPageName(RcMetadataCreationTool.getDefaultPageName(config, i, dataFiles.get(i)));
rcImgMdList.add(new RcImageMetadata(rcObjMd, pageIndex, Integer.toString(pageIndex))); rcImgMdList.add(new RcImageMetadata(rcObjMd, pageIndex, Integer.toString(pageIndex))); rcImgMd = new RcImageMetadata(rcObjMd, pageIndex, Integer.toString(pageIndex)); rcImgMdList.add(new RcImageMetadata(rcObjMd, pageIndex, Integer.toString(pageIndex))); rcImgMdList.add(new RcImageMetadata(rcObjMd, pageIndex, Integer.toString(pageIndex)));
rcImgMd.loadTextSegmentMetadata(); rcTxtSegMdLst = new ArrayList<RcTextSegmentMetadata>(rcImgMd.getTextSegmentMetadata()); rcImgMd.clearTextSegmentMetadata();
if (curSourceRcImageMetadata.getSequence() <= 0) throw new RcDataConversionException(curSourceMetadataFile.getPath() + " specifies a page sequence of " + curSourceRcImageMetadata.getSequence() + "\". Page sequences must be greater than zero."); curSourceImageFile = new File(curSourceObjectDirectoryPath + curSourceRcImageMetadata.getTechnicalMetadata().getFilename());
private RcImageLock getImage(HttpServletRequest request, RcObjectMetadata rcObjMd, RcImageMetadata rcImgMd) throws RcMetadataException, IOException { // Get session data HttpSession session = request.getSession(); RcWebSessionData rcWebSessionData = (RcWebSessionData) session.getAttribute(RcWebConstants.RC_WEB_SESSION_DATA_SESSION_ATTRIBUTE); if (rcWebSessionData == null) { rcWebSessionData = new RcWebSessionData(); session.setAttribute(RcWebConstants.RC_WEB_SESSION_DATA_SESSION_ATTRIBUTE, rcWebSessionData); } // Get image file RcFileSystemDataSourceMetadata rcFsDsMd = rcObjMd.getParentFileSystemDataSourceMetadata(); File objDir = rcFsDsMd.getDirectory(rcObjMd); File imgFile = new File(objDir + File.separator + rcImgMd.getTechnicalMetadata().getFilename()); // Get image from cache RcImage rcImg = null; RcImageLock rcImgLock = null; synchronized (rcWebSessionData.rcImageCacheLock) { rcImg = rcWebSessionData.getRcImageCacheEntry(imgFile.getPath()); if (rcImg == null) { rcImg = RcImageIo.decode(imgFile, 0); rcWebSessionData.addRcImageCacheEntry(imgFile.getPath(), rcImg); } rcImgLock = new RcImageLock(rcImg); } return rcImgLock; }
curFile = new File(curObjectDirectoryName + curRcImageMetadata.getTechnicalMetadata().getFilename()); if (!curChecksum.equals(curRcImageMetadata.getTechnicalMetadata().getSha1Checksum().toLowerCase())) { curErrors.add(curFile.getPath() + ": original checksum: " + curRcImageMetadata.getTechnicalMetadata().getSha1Checksum().toLowerCase() + ", current checksum: " + curChecksum + ".");
observer.outputStatusMessage(" Error indexing page " + rcObjMd.getId() + "/" + rcImgMd.getTechnicalMetadata().getFilename() + " - " + ex.getMessage() + "\n", Color.RED);
observer.outputStatusMessage(" Error indexing page " + rcObjMd.getId() + "/" + rcImgMd.getTechnicalMetadata().getFilename() + " - " + ex.getMessage() + "\n", Color.RED);