Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / CommonUI / System / Drawing / Advanced / FontCollection.cs / 2 / 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
- SoapIncludeAttribute.cs
- RepeatEnumerable.cs
- WebServiceData.cs
- InputBinding.cs
- FunctionCommandText.cs
- TypeElement.cs
- Triangle.cs
- GlyphingCache.cs
- MarkupExtensionReturnTypeAttribute.cs
- ContextBase.cs
- SmiContextFactory.cs
- ControlTemplate.cs
- HandlerFactoryWrapper.cs
- BamlRecords.cs
- CompilerError.cs
- GridViewSortEventArgs.cs
- SmtpNtlmAuthenticationModule.cs
- TypedColumnHandler.cs
- Substitution.cs
- RangeValidator.cs
- CssClassPropertyAttribute.cs
- CopyCodeAction.cs
- MethodAccessException.cs
- QilTypeChecker.cs
- BindMarkupExtensionSerializer.cs
- DebuggerService.cs
- BypassElementCollection.cs
- CalendarDay.cs
- GeneratedContractType.cs
- QuestionEventArgs.cs
- Rect3DValueSerializer.cs
- IdnMapping.cs
- SelfSignedCertificate.cs
- X509WindowsSecurityToken.cs
- RC2.cs
- BlurBitmapEffect.cs
- SQLDateTime.cs
- TraceSection.cs
- ProcessHostConfigUtils.cs
- MulticastNotSupportedException.cs
- WindowsGrip.cs
- StructuralCache.cs
- DataViewSettingCollection.cs
- MethodBuilderInstantiation.cs
- SimpleMailWebEventProvider.cs
- KeyInterop.cs
- PasswordPropertyTextAttribute.cs
- ManagementDateTime.cs
- PassportAuthentication.cs
- TreeViewAutomationPeer.cs
- CultureInfo.cs
- MediaContextNotificationWindow.cs
- CompositionAdorner.cs
- XamlToRtfWriter.cs
- NativeCppClassAttribute.cs
- ObjectDataSourceEventArgs.cs
- PaperSource.cs
- PropertyIDSet.cs
- DiscoveryDocumentReference.cs
- PointCollectionConverter.cs
- IncrementalReadDecoders.cs
- IUnknownConstantAttribute.cs
- PlatformCulture.cs
- GenericAuthenticationEventArgs.cs
- DBBindings.cs
- SafeHandle.cs
- BitmapEffectInput.cs
- DeviceContext.cs
- AutoResizedEvent.cs
- pingexception.cs
- WorkflowOwnerAsyncResult.cs
- SingleAnimationUsingKeyFrames.cs
- DbMetaDataFactory.cs
- Directory.cs
- _AutoWebProxyScriptHelper.cs
- DetailsViewAutoFormat.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- UrlPath.cs
- StructuralObject.cs
- DelegatingTypeDescriptionProvider.cs
- LazyTextWriterCreator.cs
- ProcessInfo.cs
- OwnerDrawPropertyBag.cs
- MenuStrip.cs
- HighlightComponent.cs
- OneToOneMappingSerializer.cs
- Expander.cs
- DetailsViewUpdatedEventArgs.cs
- TextPointerBase.cs
- XsdValidatingReader.cs
- HtmlControlDesigner.cs
- documentation.cs
- TextRunCacheImp.cs
- MouseActionValueSerializer.cs
- XPathDocumentIterator.cs
- DataGridItemCollection.cs
- BitmapDecoder.cs
- CollectionConverter.cs
- PermissionSet.cs
- UnknownWrapper.cs