Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Core / CSharp / System / Windows / Media / textformatting / TextRunTypographyProperties.cs / 1 / TextRunTypographyProperties.cs
//------------------------------------------------------------------------ // // Microsoft Windows Client Platform // Copyright (C) Microsoft Corporation // // File: TextRunTypographyProperties.cs // // Contents: Text run Typography properties // // Spec: http://team/sites/Avalon/Specs/Text%20Formatting%20API.doc // // Created: 1-7-2005 Sergey Malkin (SergeyM) // //----------------------------------------------------------------------- using System; using System.Windows; using MS.Internal.Shaping; namespace System.Windows.Media.TextFormatting { ////// Text run typography properties /// /// Client set properties to generate set of features /// that will be processed by OpenType layout engine. /// /// For details see OpenType font specification at /// http://www.microsoft.com/typography/ /// /// public abstract class TextRunTypographyProperties { #region Public typography properties ////// Common ligatures assisting with text readability. /// Examples: fi, fl ligatures /// public abstract bool StandardLigatures { get; } ////// Ligature forms depending on surrounding context /// public abstract bool ContextualLigatures { get; } ////// Additional ligatures to assist with text readability /// Examples: Qu, Th /// public abstract bool DiscretionaryLigatures { get; } ////// Ligatures used in historical typography /// Examples: ct, st /// public abstract bool HistoricalLigatures { get; } ////// Custom forms defined by surrounding context /// Examples: multiple medial forms in Urdu Nastaliq fonts /// public abstract bool ContextualAlternates { get; } ////// Forms commonly used in the past /// Examples: long s, old Fraktur k /// public abstract bool HistoricalForms { get; } ////// Feature adjusting spacing between charactersto enchance word shape /// public abstract bool Kerning { get; } ////// Feature adjusting inter-glyph spacing to provide better readability for all-`capital text /// public abstract bool CapitalSpacing { get; } ////// Feature adjusting punctuation types of characters to the case of the surrounding glyphs /// public abstract bool CaseSensitiveForms { get; } ////// Font specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet1 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet2 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet3 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet4 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet5 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet6 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet7 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet8 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet9 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet10 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet11 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet12 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet13 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet14 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet15 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet16 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet17 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet18 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet19 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet20 { get; } ////// Substitute nominal zero with slashed zero. /// public abstract bool SlashedZero { get; } ////// Substitute regular greek forms with forms used in mathematical notation. /// public abstract bool MathematicalGreek { get; } ////// Replace standard forms in Japaneese fonts with preferred typographic forms /// public abstract bool EastAsianExpertForms { get; } ////// Render different types of typographic variations. Include Normal, Subscript, Superscript, /// Inferior, Ordinal and Ruby. /// public abstract FontVariants Variants { get; } ////// Select set of `capital forms from Normal, SmallCaps, AllSmallCaps, /// PetiteCaps, AllPetiteCaps, Unicase and Titling. /// public abstract FontCapitals ----s { get; } ////// Feature selecting special fractional forms of nominator, denominator and slash. /// public abstract FontFraction Fraction { get; } ////// Select set of glyphs to render alternate numeral forms from Normal, OldStyle and Lining /// public abstract FontNumeralStyle NumeralStyle { get; } ////// Select glyph set for different numeral aligning options from Default, Proportional and Tabular /// public abstract FontNumeralAlignment NumeralAlignment { get; } ////// Select from different width styles for Latin characters in East Asian fonts. /// public abstract FontEastAsianWidths EastAsianWidths { get; } ////// Select glyphs forms specific for particular writing system and language. /// public abstract FontEastAsianLanguage EastAsianLanguage { get; } ////// Select glyph forms having swashes by specified index. /// Examples: Q with tail extended under following letter /// public abstract int StandardSwashes { get; } ////// Select swash forms of glyphs by specified index and based on surrounding characters. /// Examples: d with flourish occupying space above following ea. /// public abstract int ContextualSwashes { get; } ////// Select alternate form of glyphs by specified index. /// Examples: multiple forms of ampersand. /// public abstract int StylisticAlternates { get; } ////// Forms commonly used in notation. /// Examples: characters placed in circles, parentheses /// public abstract int AnnotationAlternates { get; } #endregion Public typography properties ////// Should be called every time any property changes it's value /// protected void OnPropertiesChanged() { _features = null; } ////// Returns cached feature array. /// internal void GetCachedFeatureSet(out Feature[] features, out int featureCount) { features = _features; featureCount = _featureCount; } ////// Set cached feature array. /// internal void SetCachedFeatureSet(Feature[] features, int featureCount) { _features = features; _featureCount = featureCount; } private Feature[] _features; private int _featureCount; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------ // // Microsoft Windows Client Platform // Copyright (C) Microsoft Corporation // // File: TextRunTypographyProperties.cs // // Contents: Text run Typography properties // // Spec: http://team/sites/Avalon/Specs/Text%20Formatting%20API.doc // // Created: 1-7-2005 Sergey Malkin (SergeyM) // //----------------------------------------------------------------------- using System; using System.Windows; using MS.Internal.Shaping; namespace System.Windows.Media.TextFormatting { ////// Text run typography properties /// /// Client set properties to generate set of features /// that will be processed by OpenType layout engine. /// /// For details see OpenType font specification at /// http://www.microsoft.com/typography/ /// /// public abstract class TextRunTypographyProperties { #region Public typography properties ////// Common ligatures assisting with text readability. /// Examples: fi, fl ligatures /// public abstract bool StandardLigatures { get; } ////// Ligature forms depending on surrounding context /// public abstract bool ContextualLigatures { get; } ////// Additional ligatures to assist with text readability /// Examples: Qu, Th /// public abstract bool DiscretionaryLigatures { get; } ////// Ligatures used in historical typography /// Examples: ct, st /// public abstract bool HistoricalLigatures { get; } ////// Custom forms defined by surrounding context /// Examples: multiple medial forms in Urdu Nastaliq fonts /// public abstract bool ContextualAlternates { get; } ////// Forms commonly used in the past /// Examples: long s, old Fraktur k /// public abstract bool HistoricalForms { get; } ////// Feature adjusting spacing between charactersto enchance word shape /// public abstract bool Kerning { get; } ////// Feature adjusting inter-glyph spacing to provide better readability for all-`capital text /// public abstract bool CapitalSpacing { get; } ////// Feature adjusting punctuation types of characters to the case of the surrounding glyphs /// public abstract bool CaseSensitiveForms { get; } ////// Font specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet1 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet2 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet3 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet4 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet5 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet6 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet7 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet8 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet9 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet10 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet11 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet12 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet13 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet14 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet15 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet16 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet17 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet18 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet19 { get; } ////// Font-specific set of glyph forms designed to work with each other. /// public abstract bool StylisticSet20 { get; } ////// Substitute nominal zero with slashed zero. /// public abstract bool SlashedZero { get; } ////// Substitute regular greek forms with forms used in mathematical notation. /// public abstract bool MathematicalGreek { get; } ////// Replace standard forms in Japaneese fonts with preferred typographic forms /// public abstract bool EastAsianExpertForms { get; } ////// Render different types of typographic variations. Include Normal, Subscript, Superscript, /// Inferior, Ordinal and Ruby. /// public abstract FontVariants Variants { get; } ////// Select set of `capital forms from Normal, SmallCaps, AllSmallCaps, /// PetiteCaps, AllPetiteCaps, Unicase and Titling. /// public abstract FontCapitals ----s { get; } ////// Feature selecting special fractional forms of nominator, denominator and slash. /// public abstract FontFraction Fraction { get; } ////// Select set of glyphs to render alternate numeral forms from Normal, OldStyle and Lining /// public abstract FontNumeralStyle NumeralStyle { get; } ////// Select glyph set for different numeral aligning options from Default, Proportional and Tabular /// public abstract FontNumeralAlignment NumeralAlignment { get; } ////// Select from different width styles for Latin characters in East Asian fonts. /// public abstract FontEastAsianWidths EastAsianWidths { get; } ////// Select glyphs forms specific for particular writing system and language. /// public abstract FontEastAsianLanguage EastAsianLanguage { get; } ////// Select glyph forms having swashes by specified index. /// Examples: Q with tail extended under following letter /// public abstract int StandardSwashes { get; } ////// Select swash forms of glyphs by specified index and based on surrounding characters. /// Examples: d with flourish occupying space above following ea. /// public abstract int ContextualSwashes { get; } ////// Select alternate form of glyphs by specified index. /// Examples: multiple forms of ampersand. /// public abstract int StylisticAlternates { get; } ////// Forms commonly used in notation. /// Examples: characters placed in circles, parentheses /// public abstract int AnnotationAlternates { get; } #endregion Public typography properties ////// Should be called every time any property changes it's value /// protected void OnPropertiesChanged() { _features = null; } ////// Returns cached feature array. /// internal void GetCachedFeatureSet(out Feature[] features, out int featureCount) { features = _features; featureCount = _featureCount; } ////// Set cached feature array. /// internal void SetCachedFeatureSet(Feature[] features, int featureCount) { _features = features; _featureCount = featureCount; } private Feature[] _features; private int _featureCount; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlSchemaType.cs
- XmlWellformedWriter.cs
- _SslStream.cs
- DropDownHolder.cs
- COSERVERINFO.cs
- WindowPattern.cs
- CommandDevice.cs
- OpCodes.cs
- PackUriHelper.cs
- RuleElement.cs
- WebPartDisplayMode.cs
- Size3DConverter.cs
- SimpleExpression.cs
- _ListenerResponseStream.cs
- DataColumn.cs
- SortQuery.cs
- BitmapCache.cs
- StatusBarItem.cs
- RecordsAffectedEventArgs.cs
- SecurityHeader.cs
- FileStream.cs
- FunctionDetailsReader.cs
- WebPartAuthorizationEventArgs.cs
- ResourceContainer.cs
- StreamGeometryContext.cs
- Executor.cs
- PlatformCulture.cs
- ParamArrayAttribute.cs
- SiteMapNodeItem.cs
- ModelItemDictionaryImpl.cs
- PagedDataSource.cs
- KeyTimeConverter.cs
- VisualTreeUtils.cs
- HwndHostAutomationPeer.cs
- AspCompat.cs
- EntityTypeBase.cs
- ProcessHostServerConfig.cs
- DynamicDataExtensions.cs
- RequestCachePolicy.cs
- ImageSourceValueSerializer.cs
- Converter.cs
- DataGridBoolColumn.cs
- XmlSchemaSimpleContentExtension.cs
- _KerberosClient.cs
- XamlVector3DCollectionSerializer.cs
- Invariant.cs
- Pair.cs
- XmlWriterDelegator.cs
- SspiHelper.cs
- OwnerDrawPropertyBag.cs
- hresults.cs
- SchemaImporterExtension.cs
- TimelineCollection.cs
- XamlSerializerUtil.cs
- SimpleType.cs
- SplitContainer.cs
- PieceNameHelper.cs
- Normalization.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- TargetParameterCountException.cs
- WindowsSolidBrush.cs
- TdsParserStateObject.cs
- CssTextWriter.cs
- TextTreeInsertUndoUnit.cs
- TextViewBase.cs
- ScriptManager.cs
- IdentityManager.cs
- sortedlist.cs
- PagePropertiesChangingEventArgs.cs
- ResolveNameEventArgs.cs
- ProcessHostFactoryHelper.cs
- _LocalDataStoreMgr.cs
- DataFormat.cs
- MediaTimeline.cs
- JavaScriptSerializer.cs
- XmlDataLoader.cs
- AssertSection.cs
- RenderContext.cs
- ChangeTracker.cs
- ScalarOps.cs
- PriorityChain.cs
- MD5CryptoServiceProvider.cs
- Attribute.cs
- DocumentViewer.cs
- AmbiguousMatchException.cs
- SynchronizedPool.cs
- PageParser.cs
- SpecularMaterial.cs
- KeyboardNavigation.cs
- WmiPutTraceRecord.cs
- SystemWebCachingSectionGroup.cs
- XmlConverter.cs
- XmlMtomReader.cs
- ByteAnimationBase.cs
- UserControlParser.cs
- SystemInformation.cs
- OutputCacheSection.cs
- Base64Encoder.cs
- OpCellTreeNode.cs
- CommandValueSerializer.cs