Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CommonUI / System / Drawing / Printing / PrinterUnitConvert.cs / 1407647 / 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.DoubleLeft = Convert(value.DoubleLeft, fromUnit, toUnit); result.DoubleRight = Convert(value.DoubleRight, fromUnit, toUnit); result.DoubleTop = Convert(value.DoubleTop, fromUnit, toUnit); result.DoubleBottom = Convert(value.DoubleBottom, 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
- ColumnProvider.cs
- UnsafeNetInfoNativeMethods.cs
- EventBuilder.cs
- ListDictionary.cs
- DbXmlEnabledProviderManifest.cs
- X509CertificateStore.cs
- ReflectTypeDescriptionProvider.cs
- WebConfigurationManager.cs
- ServiceErrorHandler.cs
- EmptyImpersonationContext.cs
- CFGGrammar.cs
- PropertyConverter.cs
- UnsafeNativeMethods.cs
- NativeStructs.cs
- LabelEditEvent.cs
- TrackingParameters.cs
- Quaternion.cs
- WebBrowsableAttribute.cs
- CatalogUtil.cs
- EditorZoneBase.cs
- Positioning.cs
- AsyncInvokeOperation.cs
- Module.cs
- IdentityValidationException.cs
- x509store.cs
- StyleModeStack.cs
- TemplateField.cs
- TransportContext.cs
- BatchStream.cs
- ReversePositionQuery.cs
- RegionData.cs
- ContainerCodeDomSerializer.cs
- FixUpCollection.cs
- SerializationStore.cs
- ImageField.cs
- RegionInfo.cs
- SqlUnionizer.cs
- NullExtension.cs
- BrowsableAttribute.cs
- ConfigurationSectionCollection.cs
- PathFigure.cs
- GlyphManager.cs
- InfoCardClaim.cs
- PrintEvent.cs
- GridViewDeletedEventArgs.cs
- _ScatterGatherBuffers.cs
- TreeNodeBindingCollection.cs
- SynchronizedMessageSource.cs
- ManifestResourceInfo.cs
- DataGridViewCellValidatingEventArgs.cs
- AVElementHelper.cs
- PartEditor.cs
- SettingsPropertyCollection.cs
- PolicyLevel.cs
- CodeGotoStatement.cs
- ConsoleCancelEventArgs.cs
- Listener.cs
- AuthenticationModuleElementCollection.cs
- ToolStripStatusLabel.cs
- Pen.cs
- MaskedTextBox.cs
- FlagsAttribute.cs
- MouseGesture.cs
- FileRecordSequence.cs
- RelationshipNavigation.cs
- DateTimeConstantAttribute.cs
- EventHandlingScope.cs
- NullRuntimeConfig.cs
- EllipticalNodeOperations.cs
- HtmlTableRowCollection.cs
- X509Certificate2.cs
- RemoteWebConfigurationHost.cs
- TreeBuilderBamlTranslator.cs
- Method.cs
- GeometryModel3D.cs
- _ListenerAsyncResult.cs
- ButtonChrome.cs
- StackBuilderSink.cs
- AddInActivator.cs
- BaseDataBoundControl.cs
- FtpCachePolicyElement.cs
- XPathNavigatorKeyComparer.cs
- BitmapEffectGroup.cs
- WindowsGraphics.cs
- EventMappingSettings.cs
- WindowsListViewSubItem.cs
- Lease.cs
- HMACSHA256.cs
- SelectionEditingBehavior.cs
- DSASignatureFormatter.cs
- RawKeyboardInputReport.cs
- ThemeDictionaryExtension.cs
- LocalizableAttribute.cs
- TransformedBitmap.cs
- WmlFormAdapter.cs
- ScrollEventArgs.cs
- Translator.cs
- TemplateEditingVerb.cs
- HtmlInputPassword.cs
- GridErrorDlg.cs