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
- ConfigurationManagerHelper.cs
- HttpSysSettings.cs
- Attachment.cs
- ViewKeyConstraint.cs
- InlineObject.cs
- externdll.cs
- ConversionHelper.cs
- Utils.cs
- StylusDevice.cs
- XPathNavigatorKeyComparer.cs
- MdImport.cs
- WriterOutput.cs
- TextRunCache.cs
- ManagementDateTime.cs
- COM2ExtendedTypeConverter.cs
- FileNotFoundException.cs
- DisposableCollectionWrapper.cs
- StorageMappingItemLoader.cs
- MarshalDirectiveException.cs
- CompositeCollectionView.cs
- SQLBinaryStorage.cs
- SeekableMessageNavigator.cs
- HandleScope.cs
- ParameterToken.cs
- Message.cs
- InvokeWebServiceDesigner.cs
- InnerItemCollectionView.cs
- HtmlEmptyTagControlBuilder.cs
- Accessors.cs
- IDispatchConstantAttribute.cs
- InputEventArgs.cs
- XamlReaderConstants.cs
- HeaderedItemsControl.cs
- Help.cs
- TcpClientSocketManager.cs
- webproxy.cs
- Lock.cs
- SharedPersonalizationStateInfo.cs
- DbProviderFactoriesConfigurationHandler.cs
- IPEndPoint.cs
- DmlSqlGenerator.cs
- FillBehavior.cs
- CacheChildrenQuery.cs
- EntityDataSourceWrapperCollection.cs
- QilChoice.cs
- DataBindingHandlerAttribute.cs
- AnnotationHighlightLayer.cs
- CodeStatement.cs
- OdbcDataReader.cs
- ColorBlend.cs
- EventDescriptor.cs
- MimeFormReflector.cs
- Inline.cs
- WinEventHandler.cs
- DefaultValueTypeConverter.cs
- EdmItemCollection.cs
- DbConnectionStringCommon.cs
- DbProviderSpecificTypePropertyAttribute.cs
- SymmetricKeyWrap.cs
- Part.cs
- CachedPathData.cs
- SystemIcmpV6Statistics.cs
- MarkupProperty.cs
- SqlCharStream.cs
- AvtEvent.cs
- NotFiniteNumberException.cs
- DecimalConstantAttribute.cs
- DataGridSortCommandEventArgs.cs
- NodeInfo.cs
- FilterQuery.cs
- AnimatedTypeHelpers.cs
- MaskedTextBoxDesigner.cs
- userdatakeys.cs
- StylusPointPropertyId.cs
- HyperLinkDesigner.cs
- GregorianCalendar.cs
- AggregateNode.cs
- WindowsFont.cs
- InputLanguageSource.cs
- ToolStripTextBox.cs
- ConfigViewGenerator.cs
- DesignerTextWriter.cs
- XmlNamespaceDeclarationsAttribute.cs
- SectionInput.cs
- ConfigurationValue.cs
- BackEase.cs
- SparseMemoryStream.cs
- UpdateTranslator.cs
- Compress.cs
- WindowsGraphicsWrapper.cs
- ServiceModelDictionary.cs
- COM2Enum.cs
- EntityDescriptor.cs
- DataSetSchema.cs
- ProfileSettingsCollection.cs
- Page.cs
- SecondaryIndexList.cs
- PlainXmlWriter.cs
- BigInt.cs
- prompt.cs