Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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. //------------------------------------------------------------------------------ ///// Converts the value, in fromUnit units, to toUnit units. /// ///// 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./// 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
- CharEnumerator.cs
- Quad.cs
- Registration.cs
- SQLInt16Storage.cs
- EventManager.cs
- SqlMultiplexer.cs
- TextOnlyOutput.cs
- RawContentTypeMapper.cs
- TrustSection.cs
- StickyNote.cs
- SystemFonts.cs
- DataConnectionHelper.cs
- ResourceAssociationSetEnd.cs
- TextTrailingWordEllipsis.cs
- HostedElements.cs
- SharedUtils.cs
- WSHttpSecurity.cs
- Geometry3D.cs
- WindowsNonControl.cs
- ContextDataSourceContextData.cs
- ObjectListDesigner.cs
- RepeatButtonAutomationPeer.cs
- DataGridViewCellCollection.cs
- SingleAnimationUsingKeyFrames.cs
- RuntimeEnvironment.cs
- SharedPersonalizationStateInfo.cs
- DecoratedNameAttribute.cs
- CodeDomConfigurationHandler.cs
- CompilerGlobalScopeAttribute.cs
- RoutedEvent.cs
- Line.cs
- Helpers.cs
- Encoder.cs
- MediaContextNotificationWindow.cs
- SecureEnvironment.cs
- SessionStateSection.cs
- TabControlCancelEvent.cs
- Help.cs
- Debug.cs
- shaperfactoryquerycachekey.cs
- CodeRemoveEventStatement.cs
- TextCompositionManager.cs
- X509Utils.cs
- XPathDocumentIterator.cs
- SchemaDeclBase.cs
- InputLanguageProfileNotifySink.cs
- BooleanSwitch.cs
- SiteMapProvider.cs
- WebBrowserContainer.cs
- Model3DGroup.cs
- ETagAttribute.cs
- DataSetMappper.cs
- AddressHeader.cs
- TimeoutTimer.cs
- TrackingProfileManager.cs
- Main.cs
- PageMediaSize.cs
- DynamicScriptObject.cs
- CacheAxisQuery.cs
- MSAANativeProvider.cs
- CellParagraph.cs
- ScaleTransform3D.cs
- TreeNodeConverter.cs
- SingleObjectCollection.cs
- DataGridSortCommandEventArgs.cs
- ReadOnlyDataSource.cs
- ThreadStaticAttribute.cs
- ConstraintStruct.cs
- FragmentNavigationEventArgs.cs
- StructuralComparisons.cs
- Table.cs
- DrawingContextDrawingContextWalker.cs
- CodeConstructor.cs
- UrlPath.cs
- XPathArrayIterator.cs
- FormViewUpdatedEventArgs.cs
- ToolStripItemClickedEventArgs.cs
- TransformValueSerializer.cs
- CurrentChangedEventManager.cs
- Hyperlink.cs
- XomlSerializationHelpers.cs
- DependencyObject.cs
- Mouse.cs
- UInt64Storage.cs
- MemberHolder.cs
- SizeAnimationUsingKeyFrames.cs
- ClaimSet.cs
- ClientSettingsSection.cs
- FieldNameLookup.cs
- TypeDescriptorFilterService.cs
- SharedUtils.cs
- EmptyCollection.cs
- XmlNamespaceManager.cs
- DataServiceOperationContext.cs
- DocumentXmlWriter.cs
- ZipIOLocalFileHeader.cs
- StringTraceRecord.cs
- XmlQualifiedNameTest.cs
- IUnknownConstantAttribute.cs
- TransformGroup.cs