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
- WebSysDisplayNameAttribute.cs
- KnownAssemblyEntry.cs
- EmissiveMaterial.cs
- OleDbConnection.cs
- keycontainerpermission.cs
- MetadataAssemblyHelper.cs
- SingleAnimationUsingKeyFrames.cs
- AnonymousIdentificationSection.cs
- TextRangeBase.cs
- ManagementPath.cs
- WindowsListView.cs
- PlatformNotSupportedException.cs
- ContentPosition.cs
- _LocalDataStore.cs
- TabControlEvent.cs
- RecognizedAudio.cs
- PropertyInformation.cs
- metadatamappinghashervisitor.cs
- ValidationError.cs
- SpeakProgressEventArgs.cs
- ControlTemplate.cs
- FontResourceCache.cs
- ControlPropertyNameConverter.cs
- Comparer.cs
- EnumValAlphaComparer.cs
- XamlFigureLengthSerializer.cs
- MTConfigUtil.cs
- FormatterServicesNoSerializableCheck.cs
- ThemeInfoAttribute.cs
- InputDevice.cs
- FolderBrowserDialogDesigner.cs
- PipelineModuleStepContainer.cs
- Soap12FormatExtensions.cs
- WinEventTracker.cs
- SoapAttributes.cs
- TdsValueSetter.cs
- MappingException.cs
- UnsafePeerToPeerMethods.cs
- NavigationPropertyEmitter.cs
- FixUpCollection.cs
- MergablePropertyAttribute.cs
- ObjectDisposedException.cs
- UIPropertyMetadata.cs
- DetailsViewUpdatedEventArgs.cs
- StringPropertyBuilder.cs
- DesignerVerbCollection.cs
- BadImageFormatException.cs
- ObjectItemCollection.cs
- RegistryKey.cs
- NamespaceQuery.cs
- ZipIOExtraFieldZip64Element.cs
- DataMemberConverter.cs
- UriTemplateEquivalenceComparer.cs
- X509ScopedServiceCertificateElementCollection.cs
- TimeSpanMinutesConverter.cs
- ValueConversionAttribute.cs
- BezierSegment.cs
- smtpconnection.cs
- _NegoState.cs
- SessionConnectionReader.cs
- SolidBrush.cs
- Binding.cs
- HtmlShimManager.cs
- LinkLabelLinkClickedEvent.cs
- DbConnectionInternal.cs
- StateMachineDesignerPaint.cs
- FontFamily.cs
- ObjectMemberMapping.cs
- BindingWorker.cs
- PeerMessageDispatcher.cs
- RadioButton.cs
- WebBrowserBase.cs
- ColorEditor.cs
- URLString.cs
- CompositeActivityMarkupSerializer.cs
- ScrollPattern.cs
- QueryCursorEventArgs.cs
- glyphs.cs
- DataGridViewDataErrorEventArgs.cs
- ClientCredentials.cs
- MenuAdapter.cs
- SqlServices.cs
- RowToParametersTransformer.cs
- ZoneIdentityPermission.cs
- Menu.cs
- GetUserPreferenceRequest.cs
- TraceSection.cs
- NullEntityWrapper.cs
- XmlValueConverter.cs
- Rotation3D.cs
- PerformanceCounterManager.cs
- ToolZone.cs
- RefreshEventArgs.cs
- RowUpdatingEventArgs.cs
- HotSpotCollection.cs
- ProviderConnectionPointCollection.cs
- CallbackValidator.cs
- SymDocumentType.cs
- FtpCachePolicyElement.cs
- InfoCardRSAPKCS1KeyExchangeDeformatter.cs