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
- LocalizableAttribute.cs
- CompilerState.cs
- DataGridViewImageCell.cs
- X509CertificateTrustedIssuerElement.cs
- CachedPathData.cs
- ExecutorLocksHeldException.cs
- GeneralTransform3DCollection.cs
- StatusBarDrawItemEvent.cs
- SecurityContextTokenValidationException.cs
- ResumeStoryboard.cs
- NativeStructs.cs
- DoubleIndependentAnimationStorage.cs
- shaperfactory.cs
- ExecutorLocksHeldException.cs
- VBIdentifierDesigner.xaml.cs
- WebPartEventArgs.cs
- IndexObject.cs
- FixedDocument.cs
- DragStartedEventArgs.cs
- bidPrivateBase.cs
- ContextMenuService.cs
- BuildProvidersCompiler.cs
- DataGridViewRowPostPaintEventArgs.cs
- IMembershipProvider.cs
- baseshape.cs
- _OverlappedAsyncResult.cs
- OptimizedTemplateContent.cs
- ConnectionProviderAttribute.cs
- StringBuilder.cs
- OAVariantLib.cs
- BufferBuilder.cs
- ChangeDirector.cs
- EdmProperty.cs
- DetailsViewInsertEventArgs.cs
- HttpAsyncResult.cs
- SchemaTableOptionalColumn.cs
- CollectionViewSource.cs
- AddInControllerImpl.cs
- XPathConvert.cs
- OdbcParameterCollection.cs
- Html32TextWriter.cs
- Pen.cs
- DesignerCommandAdapter.cs
- ExplicitDiscriminatorMap.cs
- SimpleTypeResolver.cs
- FileRecordSequence.cs
- ImageBrush.cs
- ListChangedEventArgs.cs
- SafeUserTokenHandle.cs
- DataControlFieldHeaderCell.cs
- ContainerUtilities.cs
- TableItemStyle.cs
- HttpCacheParams.cs
- EntityTypeBase.cs
- ConnectionStringsExpressionBuilder.cs
- AnnotationComponentChooser.cs
- TemplateBindingExpressionConverter.cs
- EventBuilder.cs
- ComboBox.cs
- ObjectTypeMapping.cs
- ManagedWndProcTracker.cs
- ResourceContainer.cs
- Form.cs
- PeerNameRecord.cs
- DBSchemaRow.cs
- XmlDataSourceNodeDescriptor.cs
- BezierSegment.cs
- ToolStripDropDownClosingEventArgs.cs
- Int64AnimationUsingKeyFrames.cs
- InternalConfigSettingsFactory.cs
- BuildProvider.cs
- LeaseManager.cs
- BaseProcessor.cs
- UnsafeNetInfoNativeMethods.cs
- _ConnectOverlappedAsyncResult.cs
- CollectionViewGroupRoot.cs
- UInt64.cs
- ProxyElement.cs
- MaskedTextBox.cs
- ScriptMethodAttribute.cs
- CollectionViewGroupRoot.cs
- SimpleMailWebEventProvider.cs
- CodeTypeReferenceSerializer.cs
- ColumnResult.cs
- HTMLTextWriter.cs
- RbTree.cs
- XmlSerializerAssemblyAttribute.cs
- TextBlock.cs
- RuleProcessor.cs
- XmlSchemaAttributeGroup.cs
- RouteParameter.cs
- ClientBuildManager.cs
- RegionData.cs
- NetDataContractSerializer.cs
- SingleObjectCollection.cs
- UInt32Converter.cs
- ReflectionServiceProvider.cs
- Crc32.cs
- Style.cs
- DataGridRowClipboardEventArgs.cs