123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289 |
- /* ====================================================================
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ==================================================================== */
-
- package org.apache.poi.ss.usermodel;
-
-
- import org.apache.poi.util.Removal;
-
- public interface Font {
- // TODO: refactor and unify Font & FontFormatting in POI 5.0.0
- // TODO: refactor the constants to enums in POI 5.0.0
-
- /**
- * normal type of black color.
- */
- short COLOR_NORMAL = 0x7fff;
-
- /**
- * Dark Red color
- */
- short COLOR_RED = 0xa;
-
- /**
- * no type offsetting (not super or subscript)
- */
- short SS_NONE = 0;
-
- /**
- * superscript
- */
- short SS_SUPER = 1;
-
- /**
- * subscript
- */
- short SS_SUB = 2;
-
- /**
- * not underlined
- */
- byte U_NONE = 0;
-
- /**
- * single (normal) underline
- */
- byte U_SINGLE = 1;
-
- /**
- * double underlined
- */
- byte U_DOUBLE = 2;
-
- /**
- * accounting style single underline
- */
- byte U_SINGLE_ACCOUNTING = 0x21;
-
- /**
- * accounting style double underline
- */
- byte U_DOUBLE_ACCOUNTING = 0x22;
-
- /**
- * ANSI character set
- */
- byte ANSI_CHARSET = 0;
-
- /**
- * Default character set.
- */
- byte DEFAULT_CHARSET = 1;
-
- /**
- * Symbol character set
- */
- byte SYMBOL_CHARSET = 2;
-
- /**
- * Font height is handled in points and 1/20th of points so
- * this is the constant used to convert between those two units.
- */
- int TWIPS_PER_POINT = 20;
-
- /**
- * set the name for the font (i.e. Arial)
- * @param name String representing the name of the font to use
- */
-
- void setFontName(String name);
-
- /**
- * get the name for the font (i.e. Arial)
- * @return String representing the name of the font to use
- */
-
- String getFontName();
-
- /**
- * set the font height in unit's of 1/20th of a point. Maybe you might want to
- * use the setFontHeightInPoints which matches to the familiar 10, 12, 14 etc..
- * @param height height in 1/20ths of a point
- * @see #setFontHeightInPoints(short)
- */
-
- void setFontHeight(short height);
-
- /**
- * set the font height
- * @param height height in the familiar unit of measure - points
- * @see #setFontHeight(short)
- */
-
- void setFontHeightInPoints(short height);
-
- /**
- * Get the font height in unit's of 1/20th of a point.
- * <p>
- * For many users, the related {@link #getFontHeightInPoints()}
- * will be more helpful, as that returns font heights in the
- * more familiar points units, eg 10, 12, 14.
-
- * @return short - height in 1/20ths of a point
- * @see #getFontHeightInPoints()
- */
- short getFontHeight();
-
- /**
- * Get the font height in points.
- * <p>
- * This will return the same font height that is shown in Excel,
- * such as 10 or 14 or 28.
- * @return short - height in the familiar unit of measure - points
- * @see #getFontHeight()
- */
- short getFontHeightInPoints();
-
- /**
- * set whether to use italics or not
- * @param italic italics or not
- */
-
- void setItalic(boolean italic);
-
- /**
- * get whether to use italics or not
- * @return italics or not
- */
-
- boolean getItalic();
-
- /**
- * set whether to use a strikeout horizontal line through the text or not
- * @param strikeout or not
- */
-
- void setStrikeout(boolean strikeout);
-
- /**
- * get whether to use a strikeout horizontal line through the text or not
- * @return strikeout or not
- */
-
- boolean getStrikeout();
-
- /**
- * set the color for the font
- * @param color to use
- * @see #COLOR_NORMAL Note: Use this rather than HSSFColor.AUTOMATIC for default font color
- * @see #COLOR_RED
- */
-
- void setColor(short color);
-
- /**
- * get the color for the font
- * @return color to use
- * @see #COLOR_NORMAL
- * @see #COLOR_RED
- * @see org.apache.poi.hssf.usermodel.HSSFPalette#getColor(short)
- */
- short getColor();
-
- /**
- * set normal,super or subscript.
- * @param offset type to use (none,super,sub)
- * @see #SS_NONE
- * @see #SS_SUPER
- * @see #SS_SUB
- */
-
- void setTypeOffset(short offset);
-
- /**
- * get normal,super or subscript.
- * @return offset type to use (none,super,sub)
- * @see #SS_NONE
- * @see #SS_SUPER
- * @see #SS_SUB
- */
-
- short getTypeOffset();
-
- /**
- * set type of text underlining to use
- * @param underline type
- * @see #U_NONE
- * @see #U_SINGLE
- * @see #U_DOUBLE
- * @see #U_SINGLE_ACCOUNTING
- * @see #U_DOUBLE_ACCOUNTING
- */
-
- void setUnderline(byte underline);
-
- /**
- * get type of text underlining to use
- * @return underlining type
- * @see #U_NONE
- * @see #U_SINGLE
- * @see #U_DOUBLE
- * @see #U_SINGLE_ACCOUNTING
- * @see #U_DOUBLE_ACCOUNTING
- */
-
- byte getUnderline();
-
- /**
- * get character-set to use.
- * @return character-set
- * @see #ANSI_CHARSET
- * @see #DEFAULT_CHARSET
- * @see #SYMBOL_CHARSET
- */
- int getCharSet();
-
- /**
- * set character-set to use.
- * @see #ANSI_CHARSET
- * @see #DEFAULT_CHARSET
- * @see #SYMBOL_CHARSET
- */
- void setCharSet(byte charset);
- /**
- * set character-set to use.
- * @see #ANSI_CHARSET
- * @see #DEFAULT_CHARSET
- * @see #SYMBOL_CHARSET
- */
- void setCharSet(int charset);
-
- /**
- * get the index within the XSSFWorkbook (sequence within the collection of Font objects)
- *
- * @return unique index number of the underlying record this Font represents (probably you don't care
- * unless you're comparing which one is which)
- * @since 5.0.0 (used to return a short)
- */
- int getIndex();
-
- /**
- * get the index within the XSSFWorkbook (sequence within the collection of Font objects)
- *
- * @deprecated use {@link #getIndex()} instead
- * @return unique index number of the underlying record this Font represents (probably you don't care
- * unless you're comparing which one is which)
- * @since 4.0.0
- */
- @Deprecated
- @Removal(version = "6.0.0")
- int getIndexAsInt();
-
- void setBold(boolean bold);
-
- boolean getBold();
- }
|