blob: 1c4e1a6bd9ca8f7e7d1cdf36d3b84c6d26ffab03 [file] [log] [blame]
////////////////////////////////////////////////////////////////////////////////
//
// 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 flashx.textLayout.formats
{
/**
* Defines values for setting the <code>leadingModel</code> property
* of the <code>TextLayoutFormat</code> class, composed of valid combinations of leading basis and leading direction.
* Leading basis describes which baselines determine the leading (or <code>lineHeight</code>) of lines in a paragraph.
* Leading direction specifies whether the <code>lineHeight</code> property refers to the distance of a line's
* baseline from that of the line before it or the line after it.
* <p>
* <img src="../../../images/textLayout_baselines.jpg" alt="baselines" border="0"/>
* <img src="../../../images/textLayout_LD1.jpg" alt="leadingDirection_1" border="0"/>
* <img src="../../../images/textLayout_LD2.jpg" alt="leadingDirection_2" border="0"/>
* <img src="../../../images/textLayout_LD3.jpg" alt="leadingDirection_3" border="0"/>
* </p>
* @playerversion Flash 10
* @playerversion AIR 1.5
* @langversion 3.0
*
* @see TextLayoutFormat#leadingModel
* @see TextLayoutFormat#lineHeight
* @see flash.text.TextField
* @see flash.text.engine.TextLine
*/
public final class LeadingModel
{
/** Specifies that leading basis is ROMAN and leading direction is UP.
* In other words, <code>lineHeight</code> refers to the distance of a line's Roman baseline from the
* previous line's Roman baseline.
*
* @playerversion Flash 10
* @playerversion AIR 1.5
* @langversion 3.0
*/
public static const ROMAN_UP:String = "romanUp";
/** Specifies that leading basis is IDEOGRAPHIC_TOP and leading direction is UP.
* In other words, <code>lineHeight</code> refers to the distance of a line's ideographic top
* baseline from the previous line's ideographic top baseline.
*
* @playerversion Flash 10
* @playerversion AIR 1.5
* @langversion 3.0
*/
public static const IDEOGRAPHIC_TOP_UP:String = "ideographicTopUp";
/** Specifies that leading basis is IDEOGRAPHIC_CENTER and leading direction is UP.
* In other words, <code>lineHeight</code> refers to the distance of a line's ideographic center
* baseline from the previous line's ideographic center baseline.
*
* @playerversion Flash 10
* @playerversion AIR 1.5
* @langversion 3.0
*/
public static const IDEOGRAPHIC_CENTER_UP:String = "ideographicCenterUp";
/** Specifies that leading basis is IDEOGRAPHIC_TOP and leading direction is DOWN.
* In other words, <code>lineHeight</code> refers to the distance of a line's ideographic top baseline
* from the next line's ideographic top baseline.
*
* @playerversion Flash 10
* @playerversion AIR 1.5
* @langversion 3.0
*/
public static const IDEOGRAPHIC_TOP_DOWN:String = "ideographicTopDown";
/** Specifies that leading basis is IDEOGRAPHIC_CENTER and leading direction is down.
* In other words, <code>lineHeight</code> refers to the distance of a line's ideographic center
* baseline from the next line's ideographic center baseline.
*
* @playerversion Flash 10
* @playerversion AIR 1.5
* @langversion 3.0
*/
public static const IDEOGRAPHIC_CENTER_DOWN:String = "ideographicCenterDown";
/** Specifies that leading basis is ASCENT/DESCENT and leading direction is UP.
* In other words, <code>lineHeight</code> refers to the distance of a line's ascent baseline from the
* previous line's descent baseline.
*
* @playerversion Flash 10
* @playerversion AIR 1.5
* @langversion 3.0
*/
public static const ASCENT_DESCENT_UP:String = "ascentDescentUp";
/** Specifies that leading model is chosen automatically based on the paragraph's <code>locale</code> property.
* For Japanese and Chinese, it is IDEOGRAPHIC_TOP_DOWN and for all others it is ROMAN_UP.
*
* @playerversion Flash 10
* @playerversion AIR 1.5
* @langversion 3.0
*
* #IDEOGRAPHIC_TOP_DOWN
* #ROMAN_UP
*/
public static const AUTO:String = "auto";
/** Specifies a leading model that approximates the line spacing behavior of <code>TextField</code>.
* It is similar to <code>ASCENT_DESCENT_UP</code> in that <code>lineHeight</code> refers to the
* distance of a line's ascent baseline from the previous line's descent baseline. However, baseline
* positions approximate those determined by <code>TextField</code>, rather than using metrics
* offered by <code>TextLine</code>.
*
* @playerversion Flash 10
* @playerversion AIR 1.5
* @langversion 3.0
*/
public static const APPROXIMATE_TEXT_FIELD:String = "approximateTextField";
/** Specifies a leading model based on the CSS inline formatting model, which involves stacking <i>line boxes</i> contiguously.
* A <i>line box</i> is defined as the bounding box around <i>inline boxes</i> for all leaf elements on the text line, after they have been aligned
* using <code>baselineShift</code>, <code>dominantBaseline</code>, <code>alignmentBaseline</code> etc. For a span, the <i>inline box</i>
* is obtained by applying leading equally above and below the text content such that its height equals <code>lineHeight</code>.
* For an inline graphic, <code>lineHeight</code> is ignored; the <i>inline box</i> is derived from its specified dimensions and padding values.
* Also, <code>firstBaselineOffset</code> is ignored with this leading model.
*
* <p>For more information, see <a href='http://blogs.adobe.com/tlf/2010/11/box-leading-model.html'>Box leading model</a>.</p>
*
* @playerversion Flash 10
* @playerversion AIR 1.5
* @langversion 3.0
*/
public static const BOX:String = "box";
}
}