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
- Point4DValueSerializer.cs
- UncommonField.cs
- ConvertEvent.cs
- PeerDefaultCustomResolverClient.cs
- WebDisplayNameAttribute.cs
- IPPacketInformation.cs
- BufferedWebEventProvider.cs
- Activation.cs
- AutomationPropertyInfo.cs
- WebServiceHostFactory.cs
- PersistNameAttribute.cs
- UnsafeNativeMethodsMilCoreApi.cs
- SelectionPattern.cs
- TableRowsCollectionEditor.cs
- TextElementEnumerator.cs
- BezierSegment.cs
- WebServiceTypeData.cs
- DeflateEmulationStream.cs
- LinqDataSource.cs
- DirectoryInfo.cs
- DataGridCaption.cs
- SchemaEntity.cs
- NullableDoubleAverageAggregationOperator.cs
- ColumnClickEvent.cs
- StringUtil.cs
- ImageBrush.cs
- IgnoreFileBuildProvider.cs
- Version.cs
- ResourceReferenceExpression.cs
- AssemblyCollection.cs
- WebBrowserBase.cs
- SingleAnimation.cs
- EnumType.cs
- InteropBitmapSource.cs
- WasHostedComPlusFactory.cs
- ReturnEventArgs.cs
- Win32Exception.cs
- WebPartConnectionsEventArgs.cs
- PriorityBinding.cs
- ResourceReader.cs
- MouseEventArgs.cs
- GuidelineCollection.cs
- HostedImpersonationContext.cs
- Set.cs
- ShutDownListener.cs
- CmsInterop.cs
- HttpRuntimeSection.cs
- PackWebRequestFactory.cs
- EncoderNLS.cs
- TPLETWProvider.cs
- PointAnimationClockResource.cs
- Vector3DAnimationUsingKeyFrames.cs
- XmlDictionary.cs
- Formatter.cs
- DockPattern.cs
- Collection.cs
- ExpressionEditorAttribute.cs
- SizeChangedInfo.cs
- UserInitiatedNavigationPermission.cs
- XmlnsPrefixAttribute.cs
- QilIterator.cs
- Nodes.cs
- Int32Animation.cs
- SerialPort.cs
- SignatureHelper.cs
- ObfuscateAssemblyAttribute.cs
- EdmSchemaError.cs
- FileResponseElement.cs
- CodeCastExpression.cs
- RelationshipWrapper.cs
- DataTableCollection.cs
- NumericPagerField.cs
- HelpInfo.cs
- FontUnitConverter.cs
- EntityConnectionStringBuilderItem.cs
- CompModSwitches.cs
- Win32SafeHandles.cs
- WebPartZoneBase.cs
- SqlConnectionPoolProviderInfo.cs
- ClientRoleProvider.cs
- TCEAdapterGenerator.cs
- AuthenticationManager.cs
- WebColorConverter.cs
- NavigateEvent.cs
- ParsedAttributeCollection.cs
- FontWeights.cs
- ReadOnlyDictionary.cs
- OleDbParameter.cs
- GetPageCompletedEventArgs.cs
- DbConnectionStringBuilder.cs
- TextElementEnumerator.cs
- Viewport2DVisual3D.cs
- XhtmlConformanceSection.cs
- EntityParameterCollection.cs
- ConstraintEnumerator.cs
- ArrayConverter.cs
- ValidationSummary.cs
- QueryableDataSourceView.cs
- PrePrepareMethodAttribute.cs
- XmlCharType.cs