Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- XamlSerializerUtil.cs
- Panel.cs
- ExternalDataExchangeClient.cs
- CodeChecksumPragma.cs
- GetFileNameResult.cs
- ClientRoleProvider.cs
- SafeHandles.cs
- FileReservationCollection.cs
- TimeSpan.cs
- DragStartedEventArgs.cs
- PageContentAsyncResult.cs
- TimeoutStream.cs
- ObservableCollection.cs
- ConfigXmlComment.cs
- SettingsPropertyNotFoundException.cs
- PanelStyle.cs
- ElementNotEnabledException.cs
- StickyNoteContentControl.cs
- ProcessThread.cs
- ToolBar.cs
- PeerNameRecord.cs
- COM2ICategorizePropertiesHandler.cs
- HttpResponseWrapper.cs
- DynamicPropertyHolder.cs
- OutputCacheProfileCollection.cs
- MergeFailedEvent.cs
- RegistrationServices.cs
- ServiceModelReg.cs
- RijndaelManagedTransform.cs
- dataSvcMapFileLoader.cs
- Point4D.cs
- SequenceFullException.cs
- XmlElement.cs
- AsyncDataRequest.cs
- AddingNewEventArgs.cs
- FormViewModeEventArgs.cs
- AssociationEndMember.cs
- PassportIdentity.cs
- FontNameConverter.cs
- PolicyLevel.cs
- WorkingDirectoryEditor.cs
- ServiceNameElement.cs
- ReadOnlyDataSource.cs
- ListBoxAutomationPeer.cs
- SecurityTokenValidationException.cs
- NetworkInformationPermission.cs
- MenuRenderer.cs
- RC2.cs
- Selection.cs
- Mappings.cs
- Typography.cs
- FunctionNode.cs
- CellTreeNode.cs
- DataRowComparer.cs
- WaveHeader.cs
- SqlProcedureAttribute.cs
- FramingChannels.cs
- HttpSessionStateBase.cs
- TextElement.cs
- HttpHandlerAction.cs
- AutomationPeer.cs
- PersistenceTypeAttribute.cs
- MiniConstructorInfo.cs
- ICollection.cs
- PropertySourceInfo.cs
- FormParameter.cs
- DataTableNameHandler.cs
- BaseServiceProvider.cs
- StorageRoot.cs
- _ListenerResponseStream.cs
- EdmItemCollection.cs
- AuthenticationModuleElement.cs
- PauseStoryboard.cs
- ContextDataSourceView.cs
- ContentPlaceHolder.cs
- TextRange.cs
- EntityDataSourceWrapperCollection.cs
- InputScopeManager.cs
- SecureConversationServiceElement.cs
- Base64Decoder.cs
- DnsPermission.cs
- Missing.cs
- PathGradientBrush.cs
- ValidationEventArgs.cs
- RepeatInfo.cs
- InternalConfigSettingsFactory.cs
- _BufferOffsetSize.cs
- NavigationExpr.cs
- SequentialOutput.cs
- MinMaxParagraphWidth.cs
- DataSourceExpression.cs
- CompiledIdentityConstraint.cs
- CustomCredentialPolicy.cs
- InputScopeAttribute.cs
- SegmentTree.cs
- NullToBooleanConverter.cs
- TypefaceMetricsCache.cs
- SafeThreadHandle.cs
- TextDecoration.cs
- DefaultProxySection.cs