Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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. // Copyright (c) Microsoft Corporation. All rights reserved./// 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
- NotifyParentPropertyAttribute.cs
- MsmqIntegrationInputMessage.cs
- CompareValidator.cs
- Vars.cs
- glyphs.cs
- RepeaterItemCollection.cs
- ArgumentNullException.cs
- WindowsSolidBrush.cs
- InputLanguageEventArgs.cs
- ActivityInterfaces.cs
- DPTypeDescriptorContext.cs
- WebPartVerb.cs
- EntityContainerEntitySet.cs
- HashRepartitionStream.cs
- RequestQueryParser.cs
- CancellableEnumerable.cs
- ZipIOLocalFileHeader.cs
- Page.cs
- SqlFacetAttribute.cs
- ForeignConstraint.cs
- ApplicationBuildProvider.cs
- InputReportEventArgs.cs
- WsdlInspector.cs
- RayHitTestParameters.cs
- ConsoleTraceListener.cs
- WindowsTab.cs
- XmlSubtreeReader.cs
- Encoding.cs
- QueryCacheManager.cs
- _Win32.cs
- CompletionBookmark.cs
- SetIterators.cs
- HotSpotCollection.cs
- LogAppendAsyncResult.cs
- ExpressionCopier.cs
- HttpTransportBindingElement.cs
- ClusterUtils.cs
- ByteStack.cs
- InvariantComparer.cs
- JsonWriter.cs
- RecommendedAsConfigurableAttribute.cs
- WebServiceClientProxyGenerator.cs
- CoTaskMemSafeHandle.cs
- DateTimeConverter.cs
- EntityFrameworkVersions.cs
- MetadataCollection.cs
- KeyInfo.cs
- MessageHeaderDescriptionCollection.cs
- MsmqOutputMessage.cs
- TraceHwndHost.cs
- ConfigurationValue.cs
- BamlTreeUpdater.cs
- CompiledQueryCacheKey.cs
- DirectionalAction.cs
- UnmanagedMemoryStream.cs
- DesignSurfaceEvent.cs
- PropertyDescriptorCollection.cs
- StaticTextPointer.cs
- DataGridViewButtonCell.cs
- OutOfMemoryException.cs
- ListParaClient.cs
- Roles.cs
- SQLBinary.cs
- PathStreamGeometryContext.cs
- WsdlContractConversionContext.cs
- HashCodeCombiner.cs
- DispatcherHooks.cs
- CredentialCache.cs
- DataGridItemEventArgs.cs
- RecognizeCompletedEventArgs.cs
- CodeDomLoader.cs
- BulletedListEventArgs.cs
- Viewport3DVisual.cs
- FontDriver.cs
- EntityDataSourceViewSchema.cs
- HotCommands.cs
- CqlLexerHelpers.cs
- Block.cs
- BoolExpressionVisitors.cs
- PropertyItemInternal.cs
- _LazyAsyncResult.cs
- FormatPage.cs
- ItemMap.cs
- ObjectItemCollection.cs
- InstancePersistenceCommandException.cs
- XPathParser.cs
- XomlCompilerError.cs
- XsltConvert.cs
- Point3DAnimation.cs
- ServerIdentity.cs
- TabRenderer.cs
- SelectionList.cs
- SelfIssuedAuthRSAPKCS1SignatureFormatter.cs
- DispatcherProcessingDisabled.cs
- MediaElementAutomationPeer.cs
- ControlDesignerState.cs
- XmlElement.cs
- ArrangedElement.cs
- Setter.cs
- StyleCollection.cs