⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fontrecord.java

📁 Office格式转换代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
    public void setUnderline(byte u)    {        field_6_underline = u;    }    /**     * set the font family (TODO)     *     * @param f family     */    public void setFamily(byte f)    {        field_7_family = f;    }    /**     * set the character set     *     * @param charset - characterset     */    public void setCharset(byte charset)    {        field_8_charset = charset;    }    /**     * set the length of the fontname string     *     * @param len  length of the font name     * @see #setFontName(String)     */    public void setFontNameLength(byte len)    {        field_10_font_name_len = len;    }    /**     * set the name of the font     *     * @param fn - name of the font (i.e. "Arial")     */    public void setFontName(String fn)    {        field_11_font_name = fn;    }    /**     * gets the height of the font in 1/20th point units     *     * @return fontheight (in points/20)     */    public short getFontHeight()    {        return field_1_font_height;    }    /**     * get the font attributes (see individual bit getters that reference this method)     *     * @return attribute - the bitmask     */    public short getAttributes()    {        return field_2_attributes;    }    /**     * get whether the font is to be italics or not     *     * @return italics - whether the font is italics or not     * @see #getAttributes()     */    public boolean isItalic()    {        return italic.isSet(field_2_attributes);    }    /**     * get whether the font is to be stricken out or not     *     * @return strike - whether the font is stricken out or not     * @see #getAttributes()     */    public boolean isStruckout()    {        return strikeout.isSet(field_2_attributes);    }    /**     * whether to use the mac outline font style thing (mac only) - Some mac person     * should comment this instead of me doing it (since I have no idea)     *     * @return mac - whether to do that mac font outline thing or not     * @see #getAttributes()     */    public boolean isMacoutlined()    {        return macoutline.isSet(field_2_attributes);    }    /**     * whether to use the mac shado font style thing (mac only) - Some mac person     * should comment this instead of me doing it (since I have no idea)     *     * @return mac - whether to do that mac font shadow thing or not     * @see #getAttributes()     */    public boolean isMacshadowed()    {        return macshadow.isSet(field_2_attributes);    }    /**     * get the font's color palette index     *     * @return cpi - font color index     */    public short getColorPaletteIndex()    {        return field_3_color_palette_index;    }    /**     * get the bold weight for this font (100-1000dec or 0x64-0x3e8).  Default is     * 0x190 for normal and 0x2bc for bold     *     * @return bw - a number between 100-1000 for the fonts "boldness"     */    public short getBoldWeight()    {        return field_4_bold_weight;    }    /**     * get the type of super or subscript for the font     *     * @return super or subscript option     * @see #SS_NONE     * @see #SS_SUPER     * @see #SS_SUB     */    public short getSuperSubScript()    {        return field_5_super_sub_script;    }    /**     * get the type of underlining for the font     *     * @return super or subscript option     *     * @see #U_NONE     * @see #U_SINGLE     * @see #U_DOUBLE     * @see #U_SINGLE_ACCOUNTING     * @see #U_DOUBLE_ACCOUNTING     */    public byte getUnderline()    {        return field_6_underline;    }    /**     * get the font family (TODO)     *     * @return family     */    public byte getFamily()    {        return field_7_family;    }    /**     * get the character set     *     * @return charset - characterset     */    public byte getCharset()    {        return field_8_charset;    }    /**     * get the length of the fontname string     *     * @return length of the font name     * @see #getFontName()     */    public byte getFontNameLength()    {        return field_10_font_name_len;    }    /**     * get the name of the font     *     * @return fn - name of the font (i.e. "Arial")     */    public String getFontName()    {        return field_11_font_name;    }    public String toString()    {        StringBuffer buffer = new StringBuffer();        buffer.append("[FONT]\n");        buffer.append("    .fontheight      = ")            .append(Integer.toHexString(getFontHeight())).append("\n");        buffer.append("    .attributes      = ")            .append(Integer.toHexString(getAttributes())).append("\n");        buffer.append("         .italic     = ").append(isItalic())            .append("\n");        buffer.append("         .strikout   = ").append(isStruckout())            .append("\n");        buffer.append("         .macoutlined= ").append(isMacoutlined())            .append("\n");        buffer.append("         .macshadowed= ").append(isMacshadowed())            .append("\n");        buffer.append("    .colorpalette    = ")            .append(Integer.toHexString(getColorPaletteIndex())).append("\n");        buffer.append("    .boldweight      = ")            .append(Integer.toHexString(getBoldWeight())).append("\n");        buffer.append("    .supersubscript  = ")            .append(Integer.toHexString(getSuperSubScript())).append("\n");        buffer.append("    .underline       = ")            .append(Integer.toHexString(getUnderline())).append("\n");        buffer.append("    .family          = ")            .append(Integer.toHexString(getFamily())).append("\n");        buffer.append("    .charset         = ")            .append(Integer.toHexString(getCharset())).append("\n");        buffer.append("    .namelength      = ")            .append(Integer.toHexString(getFontNameLength())).append("\n");        buffer.append("    .fontname        = ").append(getFontName())            .append("\n");        buffer.append("[/FONT]\n");        return buffer.toString();    }    public int serialize(int offset, byte [] data)    {        int realflen = getFontNameLength() * 2;        LittleEndian.putShort(data, 0 + offset, sid);        LittleEndian.putShort(            data, 2 + offset,            ( short ) (15 + realflen                       + 1));   // 19 - 4 (sid/len) + font name length = datasize        // undocumented single byte (1)        LittleEndian.putShort(data, 4 + offset, getFontHeight());        LittleEndian.putShort(data, 6 + offset, getAttributes());        LittleEndian.putShort(data, 8 + offset, getColorPaletteIndex());        LittleEndian.putShort(data, 10 + offset, getBoldWeight());        LittleEndian.putShort(data, 12 + offset, getSuperSubScript());        data[ 14 + offset ] = getUnderline();        data[ 15 + offset ] = getFamily();        data[ 16 + offset ] = getCharset();        data[ 17 + offset ] = (( byte ) 0);        data[ 18 + offset ] = getFontNameLength();        data[ 19 + offset ] = ( byte ) 1;        if (getFontName() != null) {           StringUtil.putUncompressedUnicode(getFontName(), data, 20 + offset);        }        return getRecordSize();    }    public int getRecordSize()    {        return (getFontNameLength() * 2) + 20;    }    public short getSid()    {        return this.sid;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -