| /* |
| * |
| * 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.flex.swf.tags; |
| |
| import org.apache.flex.swf.TagType; |
| |
| /** |
| * Represents a <code>DefineFontInfo</code> tag in a SWF file. |
| * <p> |
| * The DefineFontInfo tag defines a mapping from a glyph font (defined with |
| * DefineFont) to a device font. It provides a font name and style to pass to |
| * the playback platform's text engine, and a table of character codes that |
| * identifies the character represented by each glyph in the corresponding |
| * DefineFont tag, allowing the glyph indices of a DefineText tag to be |
| * converted to character strings. |
| * <p> |
| * The presence of a DefineFontInfo tag does not force a glyph font to become a |
| * device font; it merely makes the option available. The actual choice between |
| * glyph and device usage is made according to the value of device font (see the |
| * introduction) or the value of UseOutlines in a DefineEditText tag. If a |
| * device font is unavailable on a playback platform, Flash Player will fall |
| * back to glyph text. |
| */ |
| public class DefineFontInfoTag extends Tag implements ICharacterReferrer, IFontInfo |
| { |
| /** |
| * Constructor. |
| */ |
| public DefineFontInfoTag() |
| { |
| super(TagType.DefineFontInfo); |
| } |
| |
| /** |
| * Protected constructor for use by subclasses with other tag types. |
| */ |
| protected DefineFontInfoTag(TagType tagType) |
| { |
| super(tagType); |
| } |
| |
| private ICharacterTag fontTag; |
| private String fontName; |
| private int fontFlagsReserved; |
| private boolean fontFlagsSmallText; |
| private boolean fontFlagsShiftJIS; |
| private boolean fontFlagsANSI; |
| private boolean fontFlagsItalic; |
| private boolean fontFlagsBold; |
| private boolean fontFlagsWideCodes; |
| private int[] codeTable; |
| |
| /** |
| * Get the Font tag this information is for. |
| */ |
| @Override |
| public Iterable<ICharacterTag> getReferences() |
| { |
| assert fontTag != null; |
| return CharacterIterableFactory.from(fontTag); |
| } |
| |
| @Override |
| public ICharacterTag getFontTag() |
| { |
| return fontTag; |
| } |
| |
| @Override |
| public void setFontTag(ICharacterTag fontTag) |
| { |
| this.fontTag = fontTag; |
| } |
| |
| @Override |
| public String getFontName() |
| { |
| return fontName; |
| } |
| |
| @Override |
| public void setFontName(String fontName) |
| { |
| this.fontName = fontName; |
| } |
| |
| @Override |
| public int getFontFlagsReserved() |
| { |
| return fontFlagsReserved; |
| } |
| |
| @Override |
| public void setFontFlagsReserved(int fontFlagsReserved) |
| { |
| this.fontFlagsReserved = fontFlagsReserved; |
| } |
| |
| @Override |
| public boolean isFontFlagsSmallText() |
| { |
| return fontFlagsSmallText; |
| } |
| |
| @Override |
| public void setFontFlagsSmallText(boolean fontFlagsSmallText) |
| { |
| this.fontFlagsSmallText = fontFlagsSmallText; |
| } |
| |
| @Override |
| public boolean isFontFlagsShiftJIS() |
| { |
| return fontFlagsShiftJIS; |
| } |
| |
| @Override |
| public void setFontFlagsShiftJIS(boolean fontFlagsShiftJIS) |
| { |
| this.fontFlagsShiftJIS = fontFlagsShiftJIS; |
| } |
| |
| @Override |
| public boolean isFontFlagsANSI() |
| { |
| return fontFlagsANSI; |
| } |
| |
| @Override |
| public void setFontFlagsANSI(boolean fontFlagsANSI) |
| { |
| this.fontFlagsANSI = fontFlagsANSI; |
| } |
| |
| @Override |
| public boolean isFontFlagsItalic() |
| { |
| return fontFlagsItalic; |
| } |
| |
| @Override |
| public void setFontFlagsItalic(boolean fontFlagsItalic) |
| { |
| this.fontFlagsItalic = fontFlagsItalic; |
| } |
| |
| @Override |
| public boolean isFontFlagsBold() |
| { |
| return fontFlagsBold; |
| } |
| |
| @Override |
| public void setFontFlagsBold(boolean fontFlagsBold) |
| { |
| this.fontFlagsBold = fontFlagsBold; |
| } |
| |
| @Override |
| public boolean isFontFlagsWideCodes() |
| { |
| return fontFlagsWideCodes; |
| } |
| |
| @Override |
| public void setFontFlagsWideCodes(boolean fontFlagsWideCodes) |
| { |
| this.fontFlagsWideCodes = fontFlagsWideCodes; |
| } |
| |
| @Override |
| public int[] getCodeTable() |
| { |
| return codeTable; |
| } |
| |
| @Override |
| public void setCodeTable(int[] codeTable) |
| { |
| this.codeTable = codeTable; |
| } |
| } |