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
- RawStylusInputCustomData.cs
- SweepDirectionValidation.cs
- ConfigXmlWhitespace.cs
- CustomPopupPlacement.cs
- EtwTrackingBehaviorElement.cs
- WinEventTracker.cs
- UseManagedPresentationBindingElement.cs
- FileIOPermission.cs
- Gdiplus.cs
- ResXResourceSet.cs
- RadioButtonAutomationPeer.cs
- GridSplitterAutomationPeer.cs
- VoiceChangeEventArgs.cs
- GridView.cs
- MultiBinding.cs
- AutomationEvent.cs
- BeginStoryboard.cs
- SecurityCriticalDataForSet.cs
- CryptoKeySecurity.cs
- Queue.cs
- RightsManagementEncryptedStream.cs
- SmiEventSink_Default.cs
- BaseCodeDomTreeGenerator.cs
- XMLSyntaxException.cs
- ContentFileHelper.cs
- IdentityReference.cs
- WsatServiceAddress.cs
- PackageStore.cs
- ScrollChrome.cs
- SystemIcons.cs
- TextTreeInsertElementUndoUnit.cs
- OleDbRowUpdatedEvent.cs
- XamlPointCollectionSerializer.cs
- ProfileEventArgs.cs
- SemanticBasicElement.cs
- SqlDataSourceAdvancedOptionsForm.cs
- FlowLayoutSettings.cs
- ForceCopyBuildProvider.cs
- DataBoundLiteralControl.cs
- PathData.cs
- SQLBoolean.cs
- GridItemCollection.cs
- SmiRecordBuffer.cs
- TriState.cs
- QuaternionAnimationUsingKeyFrames.cs
- StickyNoteAnnotations.cs
- BinaryReader.cs
- ModelTreeManager.cs
- DataPagerFieldCommandEventArgs.cs
- ShaperBuffers.cs
- PrintEvent.cs
- BindingContext.cs
- Vector3D.cs
- EntityConnectionStringBuilder.cs
- CodeCatchClause.cs
- SqlFunctionAttribute.cs
- DefinitionBase.cs
- IIS7WorkerRequest.cs
- UserValidatedEventArgs.cs
- MinMaxParagraphWidth.cs
- GenericRootAutomationPeer.cs
- CompositeCollection.cs
- CqlBlock.cs
- WebPartConnectionsEventArgs.cs
- ASCIIEncoding.cs
- ObjectSpanRewriter.cs
- WindowsAuthenticationModule.cs
- IdlingCommunicationPool.cs
- AppearanceEditorPart.cs
- CompModSwitches.cs
- ValueTypeFieldReference.cs
- MenuItemStyleCollection.cs
- AssemblyBuilder.cs
- FilteredDataSetHelper.cs
- OperatingSystem.cs
- AssemblyAttributes.cs
- WebSysDisplayNameAttribute.cs
- FixedBufferAttribute.cs
- ContentDisposition.cs
- GridEntryCollection.cs
- WebConfigurationHostFileChange.cs
- HttpCachePolicy.cs
- Shared.cs
- MulticastDelegate.cs
- CategoryNameCollection.cs
- RoutedEventHandlerInfo.cs
- CopyOnWriteList.cs
- WebPartConnectionsDisconnectVerb.cs
- XmlSiteMapProvider.cs
- _Rfc2616CacheValidators.cs
- _BaseOverlappedAsyncResult.cs
- Parsers.cs
- Process.cs
- UrlPath.cs
- Animatable.cs
- OleServicesContext.cs
- _MultipleConnectAsync.cs
- Constraint.cs
- Int32RectValueSerializer.cs
- BufferedReadStream.cs