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
- DeferrableContentConverter.cs
- MsmqOutputMessage.cs
- RewritingProcessor.cs
- DateTimeValueSerializerContext.cs
- DataGridViewCheckBoxCell.cs
- TypeValidationEventArgs.cs
- ObservableCollection.cs
- SQLInt64Storage.cs
- ComplexTypeEmitter.cs
- ObjectViewQueryResultData.cs
- SqlInternalConnectionSmi.cs
- ExtendedProtectionPolicyElement.cs
- TreeBuilder.cs
- ContentPosition.cs
- SyntaxCheck.cs
- _ListenerAsyncResult.cs
- WebSysDescriptionAttribute.cs
- SimpleTypeResolver.cs
- TextTreeInsertUndoUnit.cs
- ArrayList.cs
- NullReferenceException.cs
- DbQueryCommandTree.cs
- ObjectDataProvider.cs
- ErrorFormatter.cs
- FilterElement.cs
- WebControlsSection.cs
- BamlResourceContent.cs
- TargetParameterCountException.cs
- AsymmetricKeyExchangeFormatter.cs
- CounterSampleCalculator.cs
- ToggleButton.cs
- ADConnectionHelper.cs
- versioninfo.cs
- SmiEventSink.cs
- ObjectPersistData.cs
- DataSourceXmlElementAttribute.cs
- OracleSqlParser.cs
- Soap12ProtocolReflector.cs
- XsltArgumentList.cs
- XmlSerializerAssemblyAttribute.cs
- XmlSchemaException.cs
- UriSection.cs
- PhysicalOps.cs
- TextEditorSpelling.cs
- FloatSumAggregationOperator.cs
- CapacityStreamGeometryContext.cs
- DesignerValidationSummaryAdapter.cs
- TransformedBitmap.cs
- EventHandlersDesigner.cs
- DbExpressionRules.cs
- ToolStripControlHost.cs
- ContainsRowNumberChecker.cs
- ToolStripPanelCell.cs
- PanelDesigner.cs
- PreProcessInputEventArgs.cs
- ListItemCollection.cs
- Propagator.JoinPropagator.SubstitutingCloneVisitor.cs
- SortQueryOperator.cs
- EntityDescriptor.cs
- FrameworkContentElement.cs
- SmtpNtlmAuthenticationModule.cs
- StaticExtension.cs
- UrlPath.cs
- NoneExcludedImageIndexConverter.cs
- SoapTypeAttribute.cs
- IntersectQueryOperator.cs
- XPathNodeIterator.cs
- DbUpdateCommandTree.cs
- RenderContext.cs
- MultipleViewProviderWrapper.cs
- AutomationPropertyInfo.cs
- RelatedEnd.cs
- DisplayClaim.cs
- EntityDataSourceUtil.cs
- Duration.cs
- NamespaceEmitter.cs
- StringPropertyBuilder.cs
- StrongNameMembershipCondition.cs
- Utils.cs
- SmtpNtlmAuthenticationModule.cs
- TreeNode.cs
- sqlpipe.cs
- OracleMonthSpan.cs
- Button.cs
- SqlCacheDependencyDatabaseCollection.cs
- WizardStepCollectionEditor.cs
- PolicyImporterElementCollection.cs
- SpellCheck.cs
- Converter.cs
- ObjectDataSourceView.cs
- DynamicRouteExpression.cs
- ColorPalette.cs
- XsdDateTime.cs
- input.cs
- TagMapCollection.cs
- SpecularMaterial.cs
- Barrier.cs
- DataRow.cs
- CompilerError.cs
- JsonGlobals.cs