Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / MS / Internal / IO / Packaging / fixedPageContentExtractor.cs / 1305600 / fixedPageContentExtractor.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // Given a DOM node for a fixed page, enumerates its text content. // // History: // 05/11/2004: JohnLarc: Initial implementation //--------------------------------------------------------------------------- using System; using System.Xml; namespace MS.Internal.IO.Packaging { ////// Implements a sequence of (textContent, precedingDelimiter) pairs for /// a fixed page node. /// internal class FixedPageContentExtractor { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors ////// Initialize a FixedPageContentExtractor from a DOM node. /// internal FixedPageContentExtractor(XmlNode fixedPage) { _fixedPageInfo = new XmlFixedPageInfo(fixedPage); _nextGlyphRun = 0; } #endregion Constructors //------------------------------------------------------ // // Internal Methods // //----------------------------------------------------- #region Internal Methods ////// Return the content of the next glyph run, with a boolean indication /// whether it is separated by a space form the preceding glyph run. /// internal string NextGlyphContent(out bool inline, out uint lcid) { // Right now, we use the simplest possible heuristic for // spacing glyph runs: All pairs of adjacent glyph runs are assumed // to be separated by a word break. inline = false; lcid = 0; // End of page? if (_nextGlyphRun >= _fixedPageInfo.GlyphRunCount) { return null; } // Retrieve inline, lcid and return value from the next glyph run info. GlyphRunInfo glyphRunInfo = _fixedPageInfo.GlyphRunAtPosition(_nextGlyphRun); lcid = glyphRunInfo.LanguageID; // Point to the next glyph run for the next call and return. ++_nextGlyphRun; return glyphRunInfo.UnicodeString; } #endregion Internal Methods //------------------------------------------------------ // // Internal Properties // //------------------------------------------------------ #region Internal Properties ////// Indicates whether no more content can be returned. /// internal bool AtEndOfPage { get { return _nextGlyphRun >= _fixedPageInfo.GlyphRunCount; } } #endregion Internal Properties //----------------------------------------------------- // // Private Fields // //------------------------------------------------------ #region Private Fields private XmlFixedPageInfo _fixedPageInfo; private int _nextGlyphRun; #endregion Private Fields } } // 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
- EntityDataSourceWrapper.cs
- BamlResourceSerializer.cs
- FormsAuthenticationCredentials.cs
- XmlRootAttribute.cs
- SystemColors.cs
- ParameterCollection.cs
- DbMetaDataColumnNames.cs
- _NestedSingleAsyncResult.cs
- HitTestWithPointDrawingContextWalker.cs
- RedistVersionInfo.cs
- ListViewInsertionMark.cs
- sitestring.cs
- HealthMonitoringSectionHelper.cs
- WindowInteractionStateTracker.cs
- CheckBoxBaseAdapter.cs
- TextUtf8RawTextWriter.cs
- XmlSchemaAll.cs
- DeadCharTextComposition.cs
- CodeValidator.cs
- SecurityPolicySection.cs
- X509Chain.cs
- GeneralTransform.cs
- DoubleUtil.cs
- XmlExceptionHelper.cs
- HostVisual.cs
- MaterialCollection.cs
- InvokePattern.cs
- AdornerDecorator.cs
- AssemblyContextControlItem.cs
- DataControlField.cs
- LoginView.cs
- SqlException.cs
- SectionVisual.cs
- SplashScreenNativeMethods.cs
- HttpCapabilitiesEvaluator.cs
- DoWorkEventArgs.cs
- DataKeyArray.cs
- OpenTypeCommon.cs
- RedBlackList.cs
- MobileUserControlDesigner.cs
- ReadOnlyHierarchicalDataSourceView.cs
- AutoScrollHelper.cs
- PersistenceProviderDirectory.cs
- WebBrowsableAttribute.cs
- PrimitiveXmlSerializers.cs
- OdbcParameter.cs
- FocusManager.cs
- DateTimeSerializationSection.cs
- LinqDataSourceContextEventArgs.cs
- GroupPartitionExpr.cs
- UpdatePanel.cs
- hresults.cs
- DataStreamFromComStream.cs
- MimePart.cs
- SelfIssuedSamlTokenFactory.cs
- ByteKeyFrameCollection.cs
- TrustSection.cs
- selecteditemcollection.cs
- SmiEventStream.cs
- OleDbConnectionInternal.cs
- ToolStripContextMenu.cs
- TextBounds.cs
- KernelTypeValidation.cs
- ClientBuildManagerTypeDescriptionProviderBridge.cs
- CheckPair.cs
- ApplicationId.cs
- ConfigXmlSignificantWhitespace.cs
- Pair.cs
- QuadraticBezierSegment.cs
- GroupItemAutomationPeer.cs
- InterleavedZipPartStream.cs
- ProfileBuildProvider.cs
- HighContrastHelper.cs
- Error.cs
- controlskin.cs
- SpeakInfo.cs
- ProfileBuildProvider.cs
- HttpWebRequestElement.cs
- XmlDataSourceDesigner.cs
- Literal.cs
- XmlSerializableServices.cs
- SamlSubjectStatement.cs
- ImageIndexConverter.cs
- UserPreferenceChangingEventArgs.cs
- SpellerError.cs
- ReadOnlyDataSourceView.cs
- HttpFileCollection.cs
- CodeTypeMember.cs
- FormParameter.cs
- FileAuthorizationModule.cs
- FormViewUpdatedEventArgs.cs
- fixedPageContentExtractor.cs
- WindowsIdentity.cs
- VBIdentifierNameEditor.cs
- DataGridCommandEventArgs.cs
- MarkupExtensionParser.cs
- StylesEditorDialog.cs
- WebConvert.cs
- LayeredChannelListener.cs
- SafeFileHandle.cs