Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Documents / XamlRtfConverter.cs / 1305600 / 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
- PerformanceCounterPermissionEntry.cs
- XPathNodeHelper.cs
- MetadataArtifactLoaderCompositeFile.cs
- GenerateScriptTypeAttribute.cs
- HttpHandler.cs
- TextTrailingCharacterEllipsis.cs
- ErrorTableItemStyle.cs
- WebPartCloseVerb.cs
- CodeParameterDeclarationExpressionCollection.cs
- HtmlUtf8RawTextWriter.cs
- MultipartIdentifier.cs
- DBSchemaRow.cs
- XD.cs
- CodeTypeDeclarationCollection.cs
- DoubleAverageAggregationOperator.cs
- SubclassTypeValidator.cs
- SpnegoTokenProvider.cs
- DeviceSpecificChoice.cs
- FloatAverageAggregationOperator.cs
- Expr.cs
- DataServiceContext.cs
- AlphaSortedEnumConverter.cs
- WindowsListBox.cs
- UnsafeNativeMethods.cs
- DbProviderFactories.cs
- Tokenizer.cs
- LateBoundBitmapDecoder.cs
- WebAdminConfigurationHelper.cs
- Visual3D.cs
- BooleanToVisibilityConverter.cs
- StylusOverProperty.cs
- BypassElementCollection.cs
- MetadataFile.cs
- TimeSpanValidator.cs
- ReceiveReply.cs
- ellipse.cs
- SendSecurityHeaderElement.cs
- StrongTypingException.cs
- RuntimeConfigLKG.cs
- ScrollItemProviderWrapper.cs
- MediaTimeline.cs
- XmlAnyElementAttributes.cs
- ModelPropertyCollectionImpl.cs
- ColorAnimation.cs
- ViewStateModeByIdAttribute.cs
- StorageScalarPropertyMapping.cs
- CapabilitiesUse.cs
- RegisteredScript.cs
- DataServiceBuildProvider.cs
- GenerateScriptTypeAttribute.cs
- ListViewPagedDataSource.cs
- SqlGatherConsumedAliases.cs
- SettingsAttributeDictionary.cs
- DelayedRegex.cs
- QueryContext.cs
- WindowsEditBox.cs
- ContactManager.cs
- hresults.cs
- AppDomainAttributes.cs
- XmlMemberMapping.cs
- ClientSettingsProvider.cs
- HMAC.cs
- MetadataCollection.cs
- FileRecordSequenceCompletedAsyncResult.cs
- EventMap.cs
- GridViewSortEventArgs.cs
- DrawTreeNodeEventArgs.cs
- SqlBulkCopyColumnMapping.cs
- VirtualizingStackPanel.cs
- AutoResetEvent.cs
- DependencyPropertyConverter.cs
- ListSortDescriptionCollection.cs
- DownloadProgressEventArgs.cs
- NativeMethods.cs
- ProcessModelSection.cs
- HandlerWithFactory.cs
- TitleStyle.cs
- Misc.cs
- FlowLayoutSettings.cs
- DescriptionAttribute.cs
- EntityDesignerUtils.cs
- QueryableDataSource.cs
- ReadWriteObjectLock.cs
- DescendantQuery.cs
- FileUtil.cs
- FrameworkContentElement.cs
- PeerNameRecordCollection.cs
- FormViewDeletedEventArgs.cs
- XslCompiledTransform.cs
- hresults.cs
- AlignmentYValidation.cs
- ImageAutomationPeer.cs
- RIPEMD160.cs
- FloatUtil.cs
- SessionStateSection.cs
- MimeBasePart.cs
- MatrixConverter.cs
- DataKey.cs
- SortedDictionary.cs
- PagedDataSource.cs