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
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ToolStripProgressBar.cs
- RegexParser.cs
- ApplicationDirectoryMembershipCondition.cs
- TransportSecurityBindingElement.cs
- SiteMapDataSourceView.cs
- ColorMap.cs
- ScrollEvent.cs
- WebPartDeleteVerb.cs
- MonitorWrapper.cs
- CachedFontFamily.cs
- XmlBufferedByteStreamReader.cs
- DataServiceExpressionVisitor.cs
- GlyphElement.cs
- ConnectionStringsSection.cs
- SspiSecurityToken.cs
- NetworkAddressChange.cs
- DataGridTable.cs
- AsymmetricSignatureDeformatter.cs
- ResourceAttributes.cs
- VariableElement.cs
- Button.cs
- Manipulation.cs
- CellPartitioner.cs
- Int32Collection.cs
- IxmlLineInfo.cs
- SqlDataRecord.cs
- GridItemPatternIdentifiers.cs
- TabRenderer.cs
- SchemaTypeEmitter.cs
- NamespaceList.cs
- IntegerValidator.cs
- AccessViolationException.cs
- DoubleLinkList.cs
- GuidConverter.cs
- MessageBox.cs
- TimeoutException.cs
- InfocardChannelParameter.cs
- ComplexLine.cs
- validationstate.cs
- AnnotationMap.cs
- AutomationPatternInfo.cs
- ReadWriteSpinLock.cs
- OdbcParameterCollection.cs
- WebConfigurationHost.cs
- StrongNameKeyPair.cs
- CellParagraph.cs
- EventBookmark.cs
- ColorBuilder.cs
- ActivityTypeDesigner.xaml.cs
- ItemCollectionEditor.cs
- LexicalChunk.cs
- ToolBarOverflowPanel.cs
- XPathAncestorIterator.cs
- TemplateField.cs
- TextRangeEditLists.cs
- MenuItemStyleCollection.cs
- WebPartDescriptionCollection.cs
- RegularExpressionValidator.cs
- SparseMemoryStream.cs
- ResizeGrip.cs
- ShapingEngine.cs
- FastEncoderWindow.cs
- Label.cs
- HashAlgorithm.cs
- BinaryReader.cs
- Image.cs
- AssemblySettingAttributes.cs
- Label.cs
- PropertyTabAttribute.cs
- SystemNetworkInterface.cs
- OdbcCommand.cs
- ToolStripDropDownButton.cs
- SQLCharsStorage.cs
- ExpandableObjectConverter.cs
- AttributeEmitter.cs
- NavigationProgressEventArgs.cs
- DBConnectionString.cs
- QilStrConcatenator.cs
- Form.cs
- Annotation.cs
- SecurityKeyIdentifier.cs
- AsmxEndpointPickerExtension.cs
- ToolboxItem.cs
- FontEmbeddingManager.cs
- AnyAllSearchOperator.cs
- IERequestCache.cs
- CollectionBase.cs
- HighContrastHelper.cs
- NameSpaceExtractor.cs
- DragCompletedEventArgs.cs
- XmlSerializableWriter.cs
- ParamArrayAttribute.cs
- RowType.cs
- FileLevelControlBuilderAttribute.cs
- TypeTypeConverter.cs
- XmlSchemaSimpleTypeList.cs
- WindowsTokenRoleProvider.cs
- Compiler.cs
- PenContexts.cs
- InvalidCastException.cs