Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / CommonUI / System / Drawing / Advanced / FontCollection.cs / 1 / FontCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /*************************************************************************\ * * Copyright (c) 1998-1999, Microsoft Corp. All Rights Reserved. * * Module Name: * * font.cs * * Abstract: * * COM+ wrapper for GDI+ font objects * * Revision History: * * 3/16/2000 [...] * Created it. * \**************************************************************************/ 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. // Copyright (c) Microsoft Corporation. All rights reserved./// 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
- FragmentQueryKB.cs
- NavigationPropertyEmitter.cs
- SafeCancelMibChangeNotify.cs
- TextChange.cs
- TextDpi.cs
- HyperLink.cs
- ColorConvertedBitmap.cs
- HostSecurityManager.cs
- SharedPersonalizationStateInfo.cs
- HttpCachePolicy.cs
- SafeNativeMethods.cs
- RSACryptoServiceProvider.cs
- TableCellCollection.cs
- CodeParameterDeclarationExpressionCollection.cs
- WindowsToolbar.cs
- HMACSHA384.cs
- ExternalException.cs
- FillErrorEventArgs.cs
- XmlDomTextWriter.cs
- QuotedStringWriteStateInfo.cs
- UInt64.cs
- PreloadHost.cs
- HandleCollector.cs
- COM2Enum.cs
- WindowsProgressbar.cs
- BindingMemberInfo.cs
- TableCellAutomationPeer.cs
- TriggerAction.cs
- RubberbandSelector.cs
- CheckBoxStandardAdapter.cs
- PolicyValidationException.cs
- XmlValidatingReader.cs
- PublishLicense.cs
- ImpersonationContext.cs
- HttpContextWrapper.cs
- XPathCompileException.cs
- SelectionPattern.cs
- MonitoringDescriptionAttribute.cs
- StateManagedCollection.cs
- ListDictionaryInternal.cs
- ReferenceAssemblyAttribute.cs
- RadioButton.cs
- TagPrefixAttribute.cs
- StylusLogic.cs
- UxThemeWrapper.cs
- Stream.cs
- CultureSpecificStringDictionary.cs
- ThrowHelper.cs
- AppDomainManager.cs
- XDeferredAxisSource.cs
- ViewLoader.cs
- QilVisitor.cs
- SamlAction.cs
- XPathNodePointer.cs
- ValidatedControlConverter.cs
- SoapObjectInfo.cs
- CodeAccessSecurityEngine.cs
- FontConverter.cs
- MobileFormsAuthentication.cs
- FileVersionInfo.cs
- ConnectionManagementSection.cs
- EllipticalNodeOperations.cs
- UdpTransportSettingsElement.cs
- ValidatorCollection.cs
- SoapAttributes.cs
- XPathAncestorIterator.cs
- PrintPreviewControl.cs
- SafeCancelMibChangeNotify.cs
- elementinformation.cs
- ComEventsHelper.cs
- Converter.cs
- AutoResetEvent.cs
- HttpStaticObjectsCollectionBase.cs
- UnsafeNetInfoNativeMethods.cs
- WorkflowEnvironment.cs
- RectangleHotSpot.cs
- LoginUtil.cs
- SafeFileHandle.cs
- SequenceDesigner.cs
- PolyLineSegment.cs
- DependencyPropertyValueSerializer.cs
- WindowsGraphicsWrapper.cs
- MobileCategoryAttribute.cs
- SqlWriter.cs
- BasicExpressionVisitor.cs
- NotFiniteNumberException.cs
- NotFiniteNumberException.cs
- ValueExpressions.cs
- GlyphElement.cs
- Registry.cs
- WebSysDisplayNameAttribute.cs
- BuildDependencySet.cs
- HostedTcpTransportManager.cs
- RawStylusInputReport.cs
- sqlmetadatafactory.cs
- UInt64Converter.cs
- BuilderInfo.cs
- FrameworkTextComposition.cs
- NativeCppClassAttribute.cs
- Comparer.cs