Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CommonUI / System / Drawing / Printing / PrinterUnitConvert.cs / 1407647 / 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.DoubleLeft = Convert(value.DoubleLeft, fromUnit, toUnit); result.DoubleRight = Convert(value.DoubleRight, fromUnit, toUnit); result.DoubleTop = Convert(value.DoubleTop, fromUnit, toUnit); result.DoubleBottom = Convert(value.DoubleBottom, 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
- ConfigurationErrorsException.cs
- ValueUnavailableException.cs
- NavigatorOutput.cs
- CacheMode.cs
- CompositeCollectionView.cs
- HttpEncoderUtility.cs
- LiteralLink.cs
- ViewEventArgs.cs
- ImmutableCollection.cs
- WindowsListViewGroupHelper.cs
- ObjectListCommandsPage.cs
- SpotLight.cs
- ManagementEventWatcher.cs
- ConnectionPoint.cs
- FloaterBaseParagraph.cs
- HttpUnhandledOperationInvoker.cs
- TextEditorMouse.cs
- PersonalizationEntry.cs
- HasCopySemanticsAttribute.cs
- Set.cs
- BasicExpandProvider.cs
- X509Utils.cs
- TripleDESCryptoServiceProvider.cs
- SQLBytesStorage.cs
- InvalidDataException.cs
- CharacterHit.cs
- WizardForm.cs
- SafeNativeMethodsMilCoreApi.cs
- FormsAuthenticationUser.cs
- CharEnumerator.cs
- NewItemsContextMenuStrip.cs
- DigitShape.cs
- DependencyPropertyValueSerializer.cs
- PersonalizationProviderCollection.cs
- BaseAutoFormat.cs
- DeviceContext.cs
- AnnotationObservableCollection.cs
- WS2007HttpBinding.cs
- EntityDescriptor.cs
- TextElementEnumerator.cs
- ExtendedProtectionPolicy.cs
- ButtonBaseAdapter.cs
- ArglessEventHandlerProxy.cs
- EventLogLink.cs
- SelfIssuedAuthRSACryptoProvider.cs
- ArrayConverter.cs
- HttpResponseInternalWrapper.cs
- FontCollection.cs
- MarshalDirectiveException.cs
- QueryAccessibilityHelpEvent.cs
- DataSourceView.cs
- SqlWorkflowPersistenceService.cs
- QuaternionValueSerializer.cs
- X509RawDataKeyIdentifierClause.cs
- Preprocessor.cs
- ResourceKey.cs
- EditorZoneBase.cs
- TimeoutValidationAttribute.cs
- BitConverter.cs
- NTAccount.cs
- ListViewInsertEventArgs.cs
- ISAPIWorkerRequest.cs
- SqlStream.cs
- DictionaryContent.cs
- SecurityUniqueId.cs
- SqlFlattener.cs
- ComPlusDiagnosticTraceSchemas.cs
- MobileControl.cs
- OleDbStruct.cs
- SystemKeyConverter.cs
- RequestCachePolicyConverter.cs
- DependencyPropertyChangedEventArgs.cs
- SmtpLoginAuthenticationModule.cs
- ExtensionQuery.cs
- EditorPartCollection.cs
- DataView.cs
- TextRunCache.cs
- Thumb.cs
- ImageAnimator.cs
- InputGestureCollection.cs
- LoginName.cs
- EventWaitHandle.cs
- Rule.cs
- TreeViewCancelEvent.cs
- SafePointer.cs
- SelectorAutomationPeer.cs
- WmlPageAdapter.cs
- GenerateHelper.cs
- SystemWebCachingSectionGroup.cs
- TypeBrowser.xaml.cs
- EmptyEnumerator.cs
- Configuration.cs
- InstanceDataCollectionCollection.cs
- CodeTypeMember.cs
- Command.cs
- DisposableCollectionWrapper.cs
- ConnectorMovedEventArgs.cs
- recordstatescratchpad.cs
- X509CertificateStore.cs
- FlowDocumentPage.cs