Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / CommonUI / System / Drawing / Printing / PrinterUnitConvert.cs / 1 / PrinterUnitConvert.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Drawing.Printing { using System.Runtime.InteropServices; using System.Diagnostics; using System; using System.Drawing; using System.ComponentModel; using Microsoft.Win32; ////// /// public sealed class PrinterUnitConvert { private PrinterUnitConvert() { } ////// Specifies a series of conversion methods that are /// useful when interoperating with the raw Win32 printing API. /// This class cannot be inherited. /// ////// /// public static double Convert(double value, PrinterUnit fromUnit, PrinterUnit toUnit) { double fromUnitsPerDisplay = UnitsPerDisplay(fromUnit); double toUnitsPerDisplay = UnitsPerDisplay(toUnit); return value * toUnitsPerDisplay / fromUnitsPerDisplay; } ////// Converts the value, in fromUnit units, to toUnit units. /// ////// /// public static int Convert(int value, PrinterUnit fromUnit, PrinterUnit toUnit) { return(int) Math.Round(Convert((double)value, fromUnit, toUnit)); } ////// Converts the value, in fromUnit units, to toUnit units. /// ////// /// public static Point Convert(Point value, PrinterUnit fromUnit, PrinterUnit toUnit) { return new Point( Convert(value.X, fromUnit, toUnit), Convert(value.Y, fromUnit, toUnit) ); } ////// Converts the value, in fromUnit units, to toUnit units. /// ////// /// public static Size Convert(Size value, PrinterUnit fromUnit, PrinterUnit toUnit) { return new Size( Convert(value.Width, fromUnit, toUnit), Convert(value.Height, fromUnit, toUnit) ); } ////// Converts the value, in fromUnit units, to toUnit units. /// ////// /// public static Rectangle Convert(Rectangle value, PrinterUnit fromUnit, PrinterUnit toUnit) { return new Rectangle( Convert(value.X, fromUnit, toUnit), Convert(value.Y, fromUnit, toUnit), Convert(value.Width, fromUnit, toUnit), Convert(value.Height, fromUnit, toUnit) ); } ////// Converts the value, in fromUnit units, to toUnit units. /// ////// /// public static Margins Convert(Margins value, PrinterUnit fromUnit, PrinterUnit toUnit) { Margins result = new Margins(); result.Left = Convert(value.Left, fromUnit, toUnit); result.Right = Convert(value.Right, fromUnit, toUnit); result.Top = Convert(value.Top, fromUnit, toUnit); result.Bottom = Convert(value.Bottom, fromUnit, toUnit); return result; } private static double UnitsPerDisplay(PrinterUnit unit) { double result; switch (unit) { case PrinterUnit.Display: result = 1.0; break; case PrinterUnit.ThousandthsOfAnInch: result = 10.0; break; case PrinterUnit.HundredthsOfAMillimeter: result = 25.4; break; case PrinterUnit.TenthsOfAMillimeter: result = 2.54; break; default: Debug.Fail("Unknown PrinterUnit " + unit); result = 1.0; break; } return result; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved./// Converts the value, in fromUnit units, to toUnit units. /// ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DictionaryContent.cs
- XPathEmptyIterator.cs
- AppDomainGrammarProxy.cs
- WebHttpBehavior.cs
- SqlDependencyUtils.cs
- ItemList.cs
- TableLayoutColumnStyleCollection.cs
- X509Certificate.cs
- SchemaImporter.cs
- PropertyEmitter.cs
- EntityDataSourceContainerNameItem.cs
- SqlXmlStorage.cs
- WebAdminConfigurationHelper.cs
- TextViewDesigner.cs
- VariantWrapper.cs
- WeakHashtable.cs
- SqlNamer.cs
- PointAnimationBase.cs
- odbcmetadatafactory.cs
- DataGridDetailsPresenter.cs
- Profiler.cs
- Journal.cs
- AppDomainUnloadedException.cs
- CryptoApi.cs
- AuthenticatingEventArgs.cs
- DWriteFactory.cs
- NotImplementedException.cs
- TranslateTransform.cs
- Processor.cs
- CapabilitiesUse.cs
- Size.cs
- SiteMapNodeItemEventArgs.cs
- future.cs
- Typography.cs
- HandledMouseEvent.cs
- DrawingAttributeSerializer.cs
- HandlerMappingMemo.cs
- ToolStripSystemRenderer.cs
- WebServiceTypeData.cs
- ExpressionNode.cs
- Pool.cs
- SubMenuStyle.cs
- EventLogTraceListener.cs
- HandleTable.cs
- XmlNamespaceMapping.cs
- ManagedIStream.cs
- SortedSetDebugView.cs
- MetadataSection.cs
- StylusLogic.cs
- RuleSetDialog.Designer.cs
- MLangCodePageEncoding.cs
- EventListenerClientSide.cs
- CodeIdentifier.cs
- OleDbConnection.cs
- SerializerWriterEventHandlers.cs
- IteratorDescriptor.cs
- DynamicDataRoute.cs
- ReachPageContentCollectionSerializerAsync.cs
- XmlAtomicValue.cs
- BamlResourceSerializer.cs
- Rotation3D.cs
- AsyncCompletedEventArgs.cs
- ParsedRoute.cs
- UnsafeNativeMethods.cs
- RuleConditionDialog.cs
- TransportChannelFactory.cs
- SmtpMail.cs
- TemplateParser.cs
- ApplyImportsAction.cs
- HtmlLiteralTextAdapter.cs
- DataTemplate.cs
- WebBrowserUriTypeConverter.cs
- NavigationCommands.cs
- TextPatternIdentifiers.cs
- CookielessHelper.cs
- MenuItemCollection.cs
- DataViewManagerListItemTypeDescriptor.cs
- COM2PictureConverter.cs
- LongMinMaxAggregationOperator.cs
- ElementUtil.cs
- SchemaConstraints.cs
- XmlNodeComparer.cs
- MasterPageCodeDomTreeGenerator.cs
- TypeConverterHelper.cs
- SmtpTransport.cs
- ManifestSignedXml.cs
- DataRelationCollection.cs
- ObjectListCommandsPage.cs
- WebScriptMetadataInstanceContextProvider.cs
- WebEvents.cs
- EnumerableRowCollection.cs
- RegexNode.cs
- SimpleMailWebEventProvider.cs
- RuleProcessor.cs
- ISFTagAndGuidCache.cs
- DataServiceExpressionVisitor.cs
- SaveCardRequest.cs
- LoadGrammarCompletedEventArgs.cs
- DesignerAttribute.cs
- BitmapEffectInputConnector.cs