Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / CommonUI / System / Drawing / Advanced / FontCollection.cs / 1 / FontCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Drawing.Text { using System.Diagnostics; using System; using System.Drawing; using System.Drawing.Internal; using System.Runtime.InteropServices; using System.ComponentModel; using Microsoft.Win32; ////// /// When inherited, enumerates the FontFamily /// objects in a collection of fonts. /// public abstract class FontCollection : IDisposable { internal IntPtr nativeFontCollection; internal FontCollection() { nativeFontCollection = IntPtr.Zero; } ////// /// Disposes of this public void Dispose() { Dispose(true); GC.SuppressFinalize(this); } ////// protected virtual void Dispose(bool disposing) { // nothing... } /// /// /// public FontFamily[] Families { get { int numSought = 0; int status = SafeNativeMethods.Gdip.GdipGetFontCollectionFamilyCount(new HandleRef(this, nativeFontCollection), out numSought); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); IntPtr[] gpfamilies = new IntPtr[numSought]; int numFound = 0; status = SafeNativeMethods.Gdip.GdipGetFontCollectionFamilyList(new HandleRef(this, nativeFontCollection), numSought, gpfamilies, out numFound); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); Debug.Assert(numSought == numFound, "GDI+ can't give a straight answer about how many fonts there are"); FontFamily[] families = new FontFamily[numFound]; for (int f = 0; f < numFound; f++) { IntPtr native; SafeNativeMethods.Gdip.GdipCloneFontFamily(new HandleRef(null, (IntPtr)gpfamilies[f]), out native); families[f] = new FontFamily(native); } return families; } } /** * Object cleanup */ ////// Gets the array of ////// objects associated with this . /// /// /// ~FontCollection() { Dispose(false); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ ///// Allows an object to free resources before the object is /// reclaimed by the Garbage Collector ( ///). /// // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Drawing.Text { using System.Diagnostics; using System; using System.Drawing; using System.Drawing.Internal; using System.Runtime.InteropServices; using System.ComponentModel; using Microsoft.Win32; ////// /// When inherited, enumerates the FontFamily /// objects in a collection of fonts. /// public abstract class FontCollection : IDisposable { internal IntPtr nativeFontCollection; internal FontCollection() { nativeFontCollection = IntPtr.Zero; } ////// /// Disposes of this public void Dispose() { Dispose(true); GC.SuppressFinalize(this); } ////// protected virtual void Dispose(bool disposing) { // nothing... } /// /// /// public FontFamily[] Families { get { int numSought = 0; int status = SafeNativeMethods.Gdip.GdipGetFontCollectionFamilyCount(new HandleRef(this, nativeFontCollection), out numSought); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); IntPtr[] gpfamilies = new IntPtr[numSought]; int numFound = 0; status = SafeNativeMethods.Gdip.GdipGetFontCollectionFamilyList(new HandleRef(this, nativeFontCollection), numSought, gpfamilies, out numFound); if (status != SafeNativeMethods.Gdip.Ok) throw SafeNativeMethods.Gdip.StatusException(status); Debug.Assert(numSought == numFound, "GDI+ can't give a straight answer about how many fonts there are"); FontFamily[] families = new FontFamily[numFound]; for (int f = 0; f < numFound; f++) { IntPtr native; SafeNativeMethods.Gdip.GdipCloneFontFamily(new HandleRef(null, (IntPtr)gpfamilies[f]), out native); families[f] = new FontFamily(native); } return families; } } /** * Object cleanup */ ////// Gets the array of ////// objects associated with this . /// /// /// ~FontCollection() { Dispose(false); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Allows an object to free resources before the object is /// reclaimed by the Garbage Collector ( ///). ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Debugger.cs
- EncodingNLS.cs
- SymLanguageType.cs
- XmlSerializableReader.cs
- XmlObjectSerializerWriteContextComplex.cs
- RectKeyFrameCollection.cs
- SettingsPropertyNotFoundException.cs
- PointConverter.cs
- NodeCounter.cs
- SecurityRuntime.cs
- ItemsChangedEventArgs.cs
- ManipulationPivot.cs
- SessionStateUtil.cs
- mda.cs
- AlignmentXValidation.cs
- SessionEndedEventArgs.cs
- odbcmetadatafactory.cs
- ThreadLocal.cs
- ErrorView.xaml.cs
- __TransparentProxy.cs
- Transform.cs
- DelegatingHeader.cs
- FtpRequestCacheValidator.cs
- ComboBox.cs
- XmlCDATASection.cs
- GrammarBuilderPhrase.cs
- ParenthesizePropertyNameAttribute.cs
- StringConcat.cs
- UnsafePeerToPeerMethods.cs
- ServiceDescriptionData.cs
- TabRenderer.cs
- IndentTextWriter.cs
- ProfileInfo.cs
- XmlAttribute.cs
- SqlLiftWhereClauses.cs
- DbgUtil.cs
- DynamicMetaObjectBinder.cs
- DaylightTime.cs
- UInt32.cs
- StrokeNodeOperations.cs
- BehaviorEditorPart.cs
- TextUtf8RawTextWriter.cs
- CompressionTransform.cs
- PowerStatus.cs
- TableLayout.cs
- _AuthenticationState.cs
- PersonalizationStateInfo.cs
- ContextMenuStrip.cs
- ManipulationLogic.cs
- GetChildSubtree.cs
- xmlformatgeneratorstatics.cs
- DataGridViewRowEventArgs.cs
- DiagnosticsConfigurationHandler.cs
- NavigationPropertySingletonExpression.cs
- CellQuery.cs
- ConfigXmlAttribute.cs
- Expressions.cs
- DeclarativeCatalogPart.cs
- ReverseInheritProperty.cs
- EditorZoneDesigner.cs
- MarkupCompilePass2.cs
- BaseTemplateCodeDomTreeGenerator.cs
- QilChoice.cs
- EntityDataSourceSelectedEventArgs.cs
- XmlExpressionDumper.cs
- PropertyNames.cs
- XPathConvert.cs
- XPathSelectionIterator.cs
- CompilerLocalReference.cs
- SqlCommand.cs
- SqlDataSourceCache.cs
- CharacterMetricsDictionary.cs
- FileSecurity.cs
- TypeUtils.cs
- Int32Animation.cs
- TextRunCache.cs
- PersonalizationState.cs
- BidirectionalDictionary.cs
- VerticalAlignConverter.cs
- Error.cs
- PowerStatus.cs
- WebPartDescriptionCollection.cs
- NamespaceMapping.cs
- DockAndAnchorLayout.cs
- ErrorRuntimeConfig.cs
- XD.cs
- RowsCopiedEventArgs.cs
- AccessDataSource.cs
- InstanceKeyNotReadyException.cs
- SByte.cs
- FieldBuilder.cs
- PasswordTextNavigator.cs
- MessageHeaderInfoTraceRecord.cs
- XmlTypeAttribute.cs
- DisposableCollectionWrapper.cs
- Model3D.cs
- EUCJPEncoding.cs
- ProxyWebPartConnectionCollection.cs
- BinHexDecoder.cs
- SR.cs