Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / System / Windows / Documents / XamlRtfConverter.cs / 1 / XamlRtfConverter.cs
//---------------------------------------------------------------------------- // // File: XamlRtfConverter.cs // // Copyright (C) Microsoft Corporation. All rights reserved. // // Description: Xaml-Rtf Converter. // //--------------------------------------------------------------------------- using System.IO; using System.Text; namespace System.Windows.Documents { ////// XamlRtfConverter is a static class that convert from/to rtf content to/from xaml content. /// internal class XamlRtfConverter { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors ////// create new instance of XamlRtfConverter that convert the content between xaml and rtf. /// internal XamlRtfConverter() { } #endregion Constructors // ---------------------------------------------------------------------- // // Internal Methods // // --------------------------------------------------------------------- #region Internal Methods ////// Converts an xaml content to rtf content. /// /// /// The source xaml text content to be converted into Rtf content. /// ////// Well-formed representing rtf equivalent string for the source xaml content. /// internal string ConvertXamlToRtf(string xamlContent) { // Check the parameter validation if (xamlContent == null) { throw new ArgumentNullException("xamlContent"); } string rtfContent = string.Empty; if (xamlContent != string.Empty) { // Creating the converter that process the content data from Xaml to Rtf XamlToRtfWriter xamlToRtfWriter = new XamlToRtfWriter(xamlContent); // Set WpfPayload package that contained the image for the specified Xaml if (WpfPayload != null) { xamlToRtfWriter.WpfPayload = WpfPayload; } // Process the converting from xaml to rtf xamlToRtfWriter.Process(); // Set rtf content that representing resulting from Xaml to Rtf converting. rtfContent = xamlToRtfWriter.Output; } return rtfContent; } ////// Converts an rtf content to xaml content. /// /// /// The source rtf content that to be converted into xaml content. /// ////// Well-formed xml representing XAML equivalent content for the input rtf content string. /// internal string ConvertRtfToXaml(string rtfContent) { // Check the parameter validation if (rtfContent == null) { throw new ArgumentNullException("rtfContent"); } // xaml content to be converted from rtf string xamlContent = string.Empty; if (rtfContent != string.Empty) { // Create RtfToXamlReader instance for converting the content // from rtf to xaml and set ForceParagraph RtfToXamlReader rtfToXamlReader = new RtfToXamlReader(rtfContent); rtfToXamlReader.ForceParagraph = ForceParagraph; // Set WpfPayload package that contained the image for the specified Xaml if (WpfPayload != null) { rtfToXamlReader.WpfPayload = WpfPayload; } //Process the converting from rtf to xaml rtfToXamlReader.Process(); // Set Xaml content string that representing resulting Rtf-Xaml converting xamlContent = rtfToXamlReader.Output; } return xamlContent; } #endregion Internal Methods // ---------------------------------------------------------------------- // // Internal Properties // // ---------------------------------------------------------------------- #region Internal Properties // ForceParagraph property indicates whether ForcePagraph for RtfToXamlReader. internal bool ForceParagraph { get { return _forceParagraph; } set { _forceParagraph = value; } } // WpfPayload package property for getting or placing image data for Xaml content internal WpfPayload WpfPayload { get { return _wpfPayload; } set { _wpfPayload = value; } } #endregion Internal Properties // --------------------------------------------------------------------- // // Internal Fields // // ---------------------------------------------------------------------- #region Internal Fields // Rtf encoding codepage that is 1252 ANSI internal const int RtfCodePage = 1252; #endregion Internal Fields // --------------------------------------------------------------------- // // Private Fields // // --------------------------------------------------------------------- #region Private Fields // Flag that indicate the forcing paragragh for RtfToXamlReader private bool _forceParagraph; // The output WpfPayload package for placing image data into it private WpfPayload _wpfPayload; #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
- BindStream.cs
- CharacterString.cs
- Drawing.cs
- ProxyWebPartConnectionCollection.cs
- SqlDependency.cs
- DataStreams.cs
- Operators.cs
- Accessible.cs
- DataTableMappingCollection.cs
- InternalConfigHost.cs
- FacetEnabledSchemaElement.cs
- SelectQueryOperator.cs
- ThreadStaticAttribute.cs
- PropertyChangeTracker.cs
- UpdatePanelTrigger.cs
- SerializerDescriptor.cs
- OdbcEnvironment.cs
- DrawingBrush.cs
- FrameworkElement.cs
- BindStream.cs
- DataPager.cs
- GPRECTF.cs
- RotateTransform.cs
- SqlConnectionPoolProviderInfo.cs
- MasterPage.cs
- WebAdminConfigurationHelper.cs
- DesignerForm.cs
- HyperlinkAutomationPeer.cs
- WmlCalendarAdapter.cs
- StorageEntitySetMapping.cs
- SpellerHighlightLayer.cs
- WebRequestModuleElementCollection.cs
- MenuScrollingVisibilityConverter.cs
- ChangeInterceptorAttribute.cs
- BaseTemplateCodeDomTreeGenerator.cs
- CompositeCollectionView.cs
- ResourceSetExpression.cs
- WmlFormAdapter.cs
- XsltLoader.cs
- HMACSHA384.cs
- RichTextBoxContextMenu.cs
- SimpleBitVector32.cs
- Converter.cs
- DPAPIProtectedConfigurationProvider.cs
- pingexception.cs
- DataGridColumn.cs
- x509utils.cs
- XsltCompileContext.cs
- PeerUnsafeNativeCryptMethods.cs
- ThaiBuddhistCalendar.cs
- DictionarySectionHandler.cs
- RangeValueProviderWrapper.cs
- ConstraintEnumerator.cs
- ConstraintManager.cs
- TriState.cs
- AsyncStreamReader.cs
- GenerateScriptTypeAttribute.cs
- DesignerLoader.cs
- InfoCardMetadataExchangeClient.cs
- xdrvalidator.cs
- SecurityContextTokenCache.cs
- FileRecordSequence.cs
- ExpressionPrinter.cs
- GeometryCombineModeValidation.cs
- XmlEncApr2001.cs
- AbstractExpressions.cs
- UserInitiatedRoutedEventPermission.cs
- XPathArrayIterator.cs
- SqlBooleanizer.cs
- OrderedEnumerableRowCollection.cs
- Mappings.cs
- SignatureDescription.cs
- FrameworkPropertyMetadata.cs
- prompt.cs
- GAC.cs
- PathSegment.cs
- IteratorFilter.cs
- SchemaTableOptionalColumn.cs
- Literal.cs
- DataGridViewCellStyle.cs
- SectionInput.cs
- AnimationLayer.cs
- Int16KeyFrameCollection.cs
- AdapterDictionary.cs
- ToolStripOverflowButton.cs
- EncryptedHeader.cs
- MetadataItem.cs
- SqlMethodAttribute.cs
- ICspAsymmetricAlgorithm.cs
- DbMetaDataColumnNames.cs
- Opcode.cs
- XmlSchemaNotation.cs
- DataServiceKeyAttribute.cs
- PngBitmapEncoder.cs
- TextDecoration.cs
- Identity.cs
- CodeMethodReturnStatement.cs
- PageCodeDomTreeGenerator.cs
- PageContent.cs
- sqlnorm.cs