sheet1.setRepeatingColumns(CellRangeAddress.valueOf("A:C"));
// Set the rows to repeat from row 0 to 2 on the second sheet.
sheet2.setRepeatingRows(CellRangeAddress.valueOf("1:3"));
- // Set the the repeating rows and columns on the third sheet.
+ // Set the repeating rows and columns on the third sheet.
CellRangeAddress cra = CellRangeAddress.valueOf("D1:E2");
sheet3.setRepeatingColumns(cra);
sheet3.setRepeatingRows(cra);
* <p>
* The following example demonstrates a slightly different way to insert an
* image into cell A1 and to ensure that it occupies the whole of the cell. This
- * is accomplished by specifying the the images bottom right hand corner should be
+ * is accomplished by specifying the images bottom right hand corner should be
* aligned with the bottom right hand corner of the cell. It is also a case
* where the image will not increase in size if the user increases the size of
* the enclosing cell - irrespective of the anchors type - but it will reduce in
*
* @version 1.00 5th August 2009.
* 2.00 26th February 2010.
- * Ported to make use of the the SS usermodel classes.
+ * Ported to make use of the SS usermodel classes.
* Ability to reuse the Drawing Patriarch so that multiple images
* can be inserted without unintentionally erasing earlier images.
* Check on image type added; i.e. jpg, jpeg or png.
// Set the columns to repeat from column 0 to 2 on the first sheet
sheet1.setRepeatingColumns(CellRangeAddress.valueOf("A:C"));
- // Set the the repeating rows and columns on the second sheet.
+ // Set the repeating rows and columns on the second sheet.
CellRangeAddress cra = CellRangeAddress.valueOf("E2:F3");
sheet2.setRepeatingColumns(cra);
sheet2.setRepeatingRows(cra);
this.throwExceptionIfReadOnly();
- // You shouldn't save the the same file, do a close instead
+ // You shouldn't save the same file, do a close instead
if(targetFile.exists() &&
targetFile.getAbsolutePath().equals(this.originalPackagePath)) {
throw new InvalidOperationException(
/**
* Puts <code>fmt</code> in the numberFormats map if the format is not
- * already in the the number format style table.
+ * already in the number format style table.
* Does nothing if <code>fmt</code> is already in number format style table.
*
* @param fmt the number format to add to number format style table
/**
* Puts {@code fmt} in the numberFormats map if the format is not
- * already in the the number format style table.
+ * already in the number format style table.
* Does nothing if {@code fmt} is already in number format style table.
*
* @param fmt the number format to add to number format style table
* If the "compress" flag is set to <code>true</code> then the temporary XML is gzipped.
* </p>
* <p>
- * Please note the the "compress" option may cause performance penalty.
+ * Please note the "compress" option may cause performance penalty.
* </p>
* <p>
* Setting this option only affects compression for subsequent <code>createSheet()</code>
/**
*
- * High level representation of the the possible formatting information for the contents of the cells on a sheet in a
+ * High level representation of the possible formatting information for the contents of the cells on a sheet in a
* SpreadsheetML document.
*
* @see org.apache.poi.xssf.usermodel.XSSFWorkbook#createCellStyle()
assertEquals("arg", arg.getValue());
// The external FunctionPtg is the last Ptg added to the stack
- // During formula evaluation, this Ptg pops off the the appropriate number of
+ // During formula evaluation, this Ptg pops off the appropriate number of
// arguments (getNumberOfOperands()) and pushes the result on the stack
AbstractFunctionPtg tfunc = (AbstractFunctionPtg) ptg[2];
assertTrue(tfunc.isExternalFunction());
import org.apache.poi.util.LittleEndian;
/**
- * Together the the EscherOptRecord this record defines some of the basic
+ * Together the EscherOptRecord this record defines some of the basic
* properties of a shape.
*/
public class EscherSpRecord extends EscherRecord {
private static final byte[] NO_BYTES = new byte[0];
- /** The data for this record not including the the 8 byte header */
+ /** The data for this record not including the 8 byte header */
private byte[] thedata = NO_BYTES;
private final List<EscherRecord> _childRecords = new ArrayList<>();
/**
* Checks whether this section is equal to another object. The result is
- * {@code false} if one of the the following conditions holds:
+ * {@code false} if one of the following conditions holds:
*
* <ul>
*
}
/**
- * @return the the Vertical position of the dialog
+ * @return the Vertical position of the dialog
*/
public int getVerticalPos() {
return field_3_vert_pos;
* fill its data with the default values
*/
public NoteStructureSubRecord() {
- //all we know is that the the length of <code>NoteStructureSubRecord</code> is always 22 bytes
+ //all we know is that the length of <code>NoteStructureSubRecord</code> is always 22 bytes
reserved = new byte[ENCODED_SIZE];
}
* {@link SharedFormulaRecord} does not exist). Normally this would leave no way of determining
* the {@link Ptg} tokens for the formula. However as it turns out in these
* cases, Excel encodes the unshared {@link Ptg} tokens in the right place (inside the {@link
- * FormulaRecord}). So the the only thing that needs to be done is to ignore the erroneous
+ * FormulaRecord}). So the only thing that needs to be done is to ignore the erroneous
* shared formula flag.<br>
*
* This method may also be used for setting breakpoints to help diagnose issues regarding the
*
* @return the SHRFMLA, TABLE or ARRAY record for the formula cell, if it is the first cell of
* a table or array region. {@code null} if the formula cell is not shared/array/table,
- * or if the specified formula is not the the first in the group.
+ * or if the specified formula is not the first in the group.
*/
public SharedValueRecordBase getRecordForFirstCell(FormulaRecordAggregate agg) {
CellReference firstCell = agg.getFormulaRecord().getFormula().getExpReference();
* {@code blockKey: IV = H(KeySalt + blockKey)}</li>
* <li>If a blockKey is not provided, let IV be equal to the following value:<br>
* {@code KeySalt:IV = KeySalt}</li>
- * <li>If the number of bytes in the value of IV is less than the the value of the blockSize attribute
+ * <li>If the number of bytes in the value of IV is less than the value of the blockSize attribute
* corresponding to the cipherAlgorithm attribute, pad the array of bytes by appending 0x36 until
* the array is blockSize bytes. If the array of bytes is larger than blockSize bytes, truncate the
* array to blockSize bytes.</li>
* Set the start block for this instance
*
* @param index index into the array of BigBlock instances making
- * up the the filesystem
+ * up the filesystem
*/
void setStartBlock(final int index);
* constructor for the path of a document that is not in the root of the POIFSFileSystem
*
* @param components the Strings making up the path to a document.
- * The Strings must be ordered as they appear in the directory hierarchy of the the document.
+ * The Strings must be ordered as they appear in the directory hierarchy of the document.
* The first string must be the name of a directory in the root of the POIFSFileSystem, and
* every Nth (for N > 1) string thereafter must be the name of a directory in the directory
* identified by the (N-1)th string.<p>
/**
* Sometimes the offset record in the dirstream is incorrect, but the macro can still be found.
- * This will try to find the the first RLEDecompressing stream that starts with "Attribute".
+ * This will try to find the first RLEDecompressing stream that starts with "Attribute".
* This relies on some, er, heuristics, admittedly.
*
* @param is full module inputstream to read
* Set the start block for this instance
*
* @param index index into the array of BigBlock instances making
- * up the the filesystem
+ * up the filesystem
*/
public void setStartBlock(final int index) {
_header_block.setPropertyStart(index);
*/
public enum PresetColor {
// the order of this enum can be found in the definition of .net System.Drawing.KnownColor enumeration
- // or by running the the program in the linked documentation
+ // or by running the program in the linked documentation
// default colors for theme-depending colors taken from ... (last post):
// https://social.technet.microsoft.com/Forums/windows/en-US/ac76cc56-6ff2-4778-b260-8141d7170a3b/windows-7-highlight-text-color-or-selected-text-color-in-aero
/**
* The metadata of PNG and JPEG can contain the width of a pixel in millimeters.
- * Return the the "effective" dpi calculated as <code>25.4/HorizontalPixelSize</code>
+ * Return the "effective" dpi calculated as <code>25.4/HorizontalPixelSize</code>
* and <code>25.4/VerticalPixelSize</code>. Where 25.4 is the number of mm in inch.
*
* @return array of two elements: <code>{horizontalDpi, verticalDpi}</code>.
// TODO - what about values between (10<sup>14</sup>-0.5) and (10<sup>14</sup>-0.05) ?
/**
* The minimum value in 'Base-10 normalised form'.<br>
- * When {@link #_binaryExponent} == 46 this is the the minimum {@link #_frac} value
+ * When {@link #_binaryExponent} == 46 this is the minimum {@link #_frac} value
* (10<sup>14</sup>-0.05) * 2^17
* <br>
* Values between (10<sup>14</sup>-0.05) and 10<sup>14</sup> will be represented as '1'
assertEquals("arg", arg.getValue());
// The external FunctionPtg is the last Ptg added to the stack
- // During formula evaluation, this Ptg pops off the the appropriate number of
+ // During formula evaluation, this Ptg pops off the appropriate number of
// arguments (getNumberOfOperands()) and pushes the result on the stack
AbstractFunctionPtg tfunc = (AbstractFunctionPtg) ptg[2]; //FuncVarPtg
assertTrue(tfunc.isExternalFunction());
while (it.hasNext()) {
HSSFCell cell = (HSSFCell) it.next();
log(formatter.formatCellValue(cell));
- // in some locales the the decimal delimiter is a comma, not a dot
+ // in some locales the decimal delimiter is a comma, not a dot
char decimalSeparator = DecimalFormatSymbols.getInstance(LocaleUtil.getUserLocale()).getDecimalSeparator();
assertEquals("12345678" + decimalSeparator + "9", formatter.formatCellValue(cell));
}
* </pre>
*
* This caused trouble for anything that requires {@link Name#getRefersToFormula()}
- * It is easy enough to re-create the the same data (by not setting the formula). Excel
+ * It is easy enough to re-create the same data (by not setting the formula). Excel
* seems to gracefully remove this uninitialized name record. It would be nice if POI
* could do the same, but that would involve adjusting subsequent name indexes across
* all formulas. <p>