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
- DocumentSequence.cs
- XsltLibrary.cs
- ObjectDisposedException.cs
- WebPartChrome.cs
- Mappings.cs
- IfJoinedCondition.cs
- MonitorWrapper.cs
- QueryContinueDragEventArgs.cs
- CharEnumerator.cs
- Sql8ExpressionRewriter.cs
- PrivateFontCollection.cs
- ButtonChrome.cs
- XPathException.cs
- IndentedWriter.cs
- SynchronizationValidator.cs
- ReadOnlyObservableCollection.cs
- ProviderBase.cs
- XmlToDatasetMap.cs
- OutputWindow.cs
- RawStylusInputReport.cs
- TabControlEvent.cs
- PageContentCollection.cs
- SqlDependency.cs
- _ContextAwareResult.cs
- GridViewCellAutomationPeer.cs
- LinqDataSourceSelectEventArgs.cs
- DetailsViewCommandEventArgs.cs
- EventWaitHandleSecurity.cs
- GridItemCollection.cs
- DATA_BLOB.cs
- JsonGlobals.cs
- SoapIgnoreAttribute.cs
- ResourceReferenceKeyNotFoundException.cs
- CommonDialog.cs
- CodeMemberEvent.cs
- MetadataItemEmitter.cs
- SystemNetHelpers.cs
- AccessKeyManager.cs
- ListSurrogate.cs
- ColorConvertedBitmapExtension.cs
- XmlSchemaChoice.cs
- MappingModelBuildProvider.cs
- TypeForwardedFromAttribute.cs
- ConditionalAttribute.cs
- MenuCommand.cs
- EntityConnection.cs
- HtmlElement.cs
- Directory.cs
- DBDataPermission.cs
- ServiceOperationListItemList.cs
- Function.cs
- WebPartDisplayModeCancelEventArgs.cs
- FileDialogPermission.cs
- QueryStringParameter.cs
- LinqDataSourceInsertEventArgs.cs
- SqlIdentifier.cs
- TransformerConfigurationWizardBase.cs
- Size.cs
- LoginName.cs
- ControlCachePolicy.cs
- WaitForChangedResult.cs
- HandlerBase.cs
- TemplateEditingFrame.cs
- ParallelActivityDesigner.cs
- ProviderCommandInfoUtils.cs
- SortQuery.cs
- TextRangeBase.cs
- DrawingGroupDrawingContext.cs
- DataGridItemAutomationPeer.cs
- Timer.cs
- DocumentPageHost.cs
- NamespaceList.cs
- Point3DCollection.cs
- XslVisitor.cs
- HtmlLink.cs
- recordstatescratchpad.cs
- ToolStripPanelRenderEventArgs.cs
- MaterializeFromAtom.cs
- IODescriptionAttribute.cs
- SamlAttribute.cs
- BooleanKeyFrameCollection.cs
- SafeThreadHandle.cs
- WmlTextBoxAdapter.cs
- SelectionChangedEventArgs.cs
- EntityStoreSchemaFilterEntry.cs
- LineSegment.cs
- SpecialNameAttribute.cs
- SelectionPatternIdentifiers.cs
- DataColumnChangeEvent.cs
- ToolStripDesignerAvailabilityAttribute.cs
- PerformanceCounterLib.cs
- _LoggingObject.cs
- SeverityFilter.cs
- ServerIdentity.cs
- ScriptControl.cs
- ImageDrawing.cs
- WindowClosedEventArgs.cs
- RadioButton.cs
- XPathBinder.cs
- HashSetEqualityComparer.cs