@Override @Internal public TextPieceTable getTextTable() { return _cft.getTextPieceTable(); }
@Deprecated public void writeTo( HWPFFileSystem sys ) throws IOException { HWPFOutputStream docStream = sys.getStream( "WordDocument" ); HWPFOutputStream tableStream = sys.getStream( "1Table" ); writeTo( docStream, tableStream ); }
protected ComplexFileTable(byte[] documentStream, byte[] tableStream, int offset, int fcMin, Charset charset) throws IOException { //skips through the prms before we reach the piece table. These contain data //for actual fast saved files List<SprmBuffer> sprmBuffers = new LinkedList<>(); while (tableStream[offset] == GRPPRL_TYPE) { offset++; int size = LittleEndian.getShort(tableStream, offset); offset += LittleEndian.SHORT_SIZE; byte[] bs = LittleEndian.getByteArray(tableStream, offset, size, MAX_RECORD_LENGTH); offset += size; SprmBuffer sprmBuffer = new SprmBuffer(bs, false, 0); sprmBuffers.add(sprmBuffer); } this._grpprls = sprmBuffers.toArray(new SprmBuffer[sprmBuffers.size()]); if (tableStream[offset] != TEXT_PIECE_TABLE_TYPE) { throw new IOException("The text piece table is corrupted"); } int pieceTableSize = LittleEndian.getInt(tableStream, ++offset); offset += LittleEndian.INT_SIZE; _tpt = newTextPieceTable(documentStream, tableStream, offset, pieceTableSize, fcMin, charset); }
ComplexFileTable cft = new ComplexFileTable(header, tableStream, complexOffset, fcMin); TextPieceTable tpt = cft.getTextPieceTable(); List textPieces = tpt.getTextPieces();
SprmBuffer[] sprmBuffers = complexFileTable.getGrpprls(); for ( TextPiece textPiece : complexFileTable.getTextPieceTable() .getTextPieces() )
_cft.writeTo(wordDocumentStream, tableStream); _fib.setLcbClx(tableStream.size() - tableOffset); tableOffset = tableStream.size(); _cbt.writeTo(wordDocumentStream, tableStream, mainOffset, _cft.getTextPieceTable()); _fib.setLcbPlcfbteChpx(tableStream.size() - tableOffset); tableOffset = tableStream.size(); _pbt.writeTo(wordDocumentStream, tableStream, _cft.getTextPieceTable()); _fib.setLcbPlcfbtePapx(tableStream.size() - tableOffset); tableOffset = tableStream.size();
StringBuffer text = new StringBuffer(); if(_fib.getFibBase().isFComplex()) { cft = new ComplexFileTable( _mainStream, _mainStream, complexTableOffset, _fib.getFibBase().getFcMin() ); tpt = cft.getTextPieceTable();
SprmBuffer[] sprmBuffers = complexFileTable.getGrpprls(); for ( TextPiece textPiece : complexFileTable.getTextPieceTable() .getTextPieces() )
_cft.writeTo(wordDocumentStream, tableStream); _fib.setLcbClx(tableStream.getOffset() - tableOffset); tableOffset = tableStream.getOffset(); _cbt.writeTo(wordDocumentStream, tableStream, fcMin, _cft.getTextPieceTable()); _fib.setLcbPlcfbteChpx(tableStream.getOffset() - tableOffset); tableOffset = tableStream.getOffset(); _pbt.writeTo(wordDocumentStream, tableStream, _cft.getTextPieceTable()); _fib.setLcbPlcfbtePapx(tableStream.getOffset() - tableOffset); tableOffset = tableStream.getOffset();
_cft = new ComplexFileTable(_mainStream, _tableStream, _fib.getFcClx(), fcMin); TextPieceTable _tpt = _cft.getTextPieceTable(); _cft = new ComplexFileTable(); _tpt = _cft.getTextPieceTable(); final TextPiece textPiece = new SinglentonTextPiece( _text ); _tpt.add( textPiece );
SprmBuffer[] sprmBuffers = complexFileTable.getGrpprls(); for ( TextPiece textPiece : complexFileTable.getTextPieceTable() .getTextPieces() )
@Internal public TextPieceTable getTextTable() { return _cft.getTextPieceTable(); }
@Deprecated public void writeTo(HWPFFileSystem sys) throws IOException { ByteArrayOutputStream docStream = sys.getStream("WordDocument"); ByteArrayOutputStream tableStream = sys.getStream("1Table"); writeTo(docStream, tableStream); }
_cft = new ComplexFileTable(_mainStream, _tableStream, _fib.getFcClx(), fcMin); TextPieceTable _tpt = _cft.getTextPieceTable(); _cft = new ComplexFileTable(); _tpt = _cft.getTextPieceTable(); final TextPiece textPiece = new SinglentonTextPiece( _text ); _tpt.add( textPiece );
SprmBuffer[] sprmBuffers = complexFileTable.getGrpprls(); for ( TextPiece textPiece : complexFileTable.getTextPieceTable() .getTextPieces() )
complexTableOffset, _fib.getFibBase().getFcMin(), guessedCharset ); tpt = (OldTextPieceTable)cft.getTextPieceTable();