Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- BeginStoryboard.cs
- ProfileService.cs
- LayoutEvent.cs
- SafeCryptoHandles.cs
- COM2ICategorizePropertiesHandler.cs
- SocketPermission.cs
- XmlSchemaGroup.cs
- ObfuscationAttribute.cs
- PageAdapter.cs
- CryptoKeySecurity.cs
- ScrollProperties.cs
- TriState.cs
- Cloud.cs
- listitem.cs
- TripleDESCryptoServiceProvider.cs
- XmlDocumentFragment.cs
- HttpException.cs
- DuplexSecurityProtocolFactory.cs
- EventManager.cs
- ValidationRule.cs
- TriState.cs
- HandleCollector.cs
- RequestQueryProcessor.cs
- ValidatorUtils.cs
- Menu.cs
- Exceptions.cs
- DbReferenceCollection.cs
- ConnectionManagementElement.cs
- Matrix.cs
- RepeaterItemEventArgs.cs
- FlowLayout.cs
- SemaphoreSecurity.cs
- PersonalizableAttribute.cs
- WebPartVerbsEventArgs.cs
- thaishape.cs
- PtsContext.cs
- UrlAuthFailedErrorFormatter.cs
- Inflater.cs
- SafeMILHandleMemoryPressure.cs
- DeferrableContentConverter.cs
- _SingleItemRequestCache.cs
- ObjectCloneHelper.cs
- SafeNativeMemoryHandle.cs
- CompositeActivityTypeDescriptor.cs
- Calendar.cs
- ObjectViewQueryResultData.cs
- XmlWhitespace.cs
- ValidatingCollection.cs
- TreeNode.cs
- ActivityExecutionContextCollection.cs
- EntryWrittenEventArgs.cs
- CurrentChangedEventManager.cs
- EntityContainerRelationshipSetEnd.cs
- TreeIterators.cs
- TextServicesDisplayAttributePropertyRanges.cs
- TdsParserSafeHandles.cs
- MatrixTransform.cs
- BevelBitmapEffect.cs
- SqlGenericUtil.cs
- TextBreakpoint.cs
- PerfCounterSection.cs
- ComPlusTypeValidator.cs
- TextViewBase.cs
- PlaceHolder.cs
- XmlAttributeOverrides.cs
- HttpListenerContext.cs
- ContractSearchPattern.cs
- BitmapMetadataBlob.cs
- WindowsStatic.cs
- EventLogger.cs
- ResourceAssociationTypeEnd.cs
- FontNamesConverter.cs
- IndexedEnumerable.cs
- ZipIOLocalFileBlock.cs
- ContentElement.cs
- SecurityUniqueId.cs
- DependencyPropertyAttribute.cs
- ContextActivityUtils.cs
- DataColumnCollection.cs
- LoadWorkflowByKeyAsyncResult.cs
- MatrixTransform3D.cs
- DatePickerTextBox.cs
- ValidationHelper.cs
- ToolStripItemClickedEventArgs.cs
- Baml2006ReaderFrame.cs
- DbUpdateCommandTree.cs
- DbParameterHelper.cs
- RadioButtonFlatAdapter.cs
- ChangeNode.cs
- HMACRIPEMD160.cs
- TableParaClient.cs
- coordinatorscratchpad.cs
- TransactionsSectionGroup.cs
- ThrowHelper.cs
- GridViewColumnHeader.cs
- ScalarConstant.cs
- Delegate.cs
- HashHelpers.cs
- SqlGenerator.cs
- NavigationCommands.cs