Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CommonUI / System / Drawing / Advanced / FontCollection.cs / 1305376 / 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; using System.Runtime.Versioning; ////// /// 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 { [ResourceExposure(ResourceScope.Process)] [ResourceConsumption(ResourceScope.Process)] 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
- ErrorsHelper.cs
- JoinElimination.cs
- CustomCategoryAttribute.cs
- DirectoryInfo.cs
- EntityDataSourceView.cs
- XPathParser.cs
- Size3DValueSerializer.cs
- FileCodeGroup.cs
- HorizontalAlignConverter.cs
- ReferenceSchema.cs
- MaskedTextBox.cs
- Timer.cs
- BitVec.cs
- DetailsViewUpdatedEventArgs.cs
- RemotingConfigParser.cs
- SmtpNtlmAuthenticationModule.cs
- infer.cs
- HostedElements.cs
- ToolStripItemClickedEventArgs.cs
- TextElementCollection.cs
- SemaphoreSecurity.cs
- SiteMapProvider.cs
- FixedHighlight.cs
- DataGridViewTextBoxCell.cs
- MultipleViewPattern.cs
- XmlSchemaSet.cs
- UnionCodeGroup.cs
- webproxy.cs
- SamlConstants.cs
- ManipulationDeltaEventArgs.cs
- HwndHost.cs
- xml.cs
- SqlConnectionPoolProviderInfo.cs
- DbMetaDataColumnNames.cs
- ActionMismatchAddressingException.cs
- VSWCFServiceContractGenerator.cs
- WebPartConnectionsCancelEventArgs.cs
- PackUriHelper.cs
- EventManager.cs
- Sql8ExpressionRewriter.cs
- Bold.cs
- DeclaredTypeElementCollection.cs
- RectConverter.cs
- ResourceExpressionBuilder.cs
- FormViewRow.cs
- baseaxisquery.cs
- TrackingStringDictionary.cs
- ProtocolsConfiguration.cs
- XmlILAnnotation.cs
- SplineKeyFrames.cs
- SqlClientWrapperSmiStreamChars.cs
- IDataContractSurrogate.cs
- ContainerFilterService.cs
- AxisAngleRotation3D.cs
- LineSegment.cs
- PeerNameRecord.cs
- XPathParser.cs
- ToolStripDesigner.cs
- TypeExtension.cs
- CalendarDesigner.cs
- CrossAppDomainChannel.cs
- Stylesheet.cs
- XsltException.cs
- TargetControlTypeCache.cs
- bindurihelper.cs
- ElementNotAvailableException.cs
- CompositeScriptReferenceEventArgs.cs
- PageThemeBuildProvider.cs
- DataBindingExpressionBuilder.cs
- x509utils.cs
- StorageSetMapping.cs
- IsolatedStorageException.cs
- WCFBuildProvider.cs
- AnonymousIdentificationModule.cs
- SkewTransform.cs
- EventHandlerService.cs
- TargetException.cs
- TableCell.cs
- Command.cs
- GetWinFXPath.cs
- RemotingAttributes.cs
- BooleanProjectedSlot.cs
- BuilderInfo.cs
- Point4D.cs
- ReverseComparer.cs
- AnnotationResourceChangedEventArgs.cs
- TextSegment.cs
- XPathQueryGenerator.cs
- ErrorEventArgs.cs
- SystemWebExtensionsSectionGroup.cs
- TextHintingModeValidation.cs
- DataGridClipboardHelper.cs
- ObjectSet.cs
- HtmlInputImage.cs
- AuthenticationModuleElementCollection.cs
- ConsumerConnectionPoint.cs
- CopyOnWriteList.cs
- CommandValueSerializer.cs
- HijriCalendar.cs
- XmlQualifiedNameTest.cs