Code:
/ DotNET / DotNET / 8.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
- StoreContentChangedEventArgs.cs
- FileDocument.cs
- XslTransformFileEditor.cs
- EventHandlersStore.cs
- GridViewRow.cs
- CreateUserErrorEventArgs.cs
- BufferedStream.cs
- PropertyEmitterBase.cs
- RequestCachingSection.cs
- SyndicationDeserializer.cs
- httpserverutility.cs
- ScrollPattern.cs
- OLEDB_Enum.cs
- FileDetails.cs
- SqlBuilder.cs
- TextFormatterHost.cs
- DetailsViewInsertEventArgs.cs
- StreamGeometry.cs
- EventlogProvider.cs
- WorkItem.cs
- TemplateInstanceAttribute.cs
- NavigationFailedEventArgs.cs
- CngAlgorithm.cs
- XmlNavigatorFilter.cs
- DocumentPageViewAutomationPeer.cs
- path.cs
- DelegateTypeInfo.cs
- BeginEvent.cs
- Closure.cs
- InputMethodStateChangeEventArgs.cs
- CachedFontFamily.cs
- DiscoveryClientChannelFactory.cs
- ProviderCollection.cs
- AnimationClock.cs
- CompoundFileDeflateTransform.cs
- XmlSchemaRedefine.cs
- SessionParameter.cs
- LoginName.cs
- BaseDataBoundControlDesigner.cs
- DataGridSortCommandEventArgs.cs
- ManagedWndProcTracker.cs
- ValueType.cs
- SqlTopReducer.cs
- DefaultTextStoreTextComposition.cs
- DesignTimeTemplateParser.cs
- OleStrCAMarshaler.cs
- SizeF.cs
- DataRecordInfo.cs
- sqlnorm.cs
- LogPolicy.cs
- PasswordBoxAutomationPeer.cs
- AnnotationHighlightLayer.cs
- SqlUnionizer.cs
- Compensate.cs
- ObjectTypeMapping.cs
- XmlSchemaSimpleContentRestriction.cs
- NotSupportedException.cs
- ToolStripHighContrastRenderer.cs
- COM2ColorConverter.cs
- ControlParser.cs
- DBCommand.cs
- OrderByQueryOptionExpression.cs
- XamlReaderConstants.cs
- Calendar.cs
- ApplicationFileParser.cs
- TrackingConditionCollection.cs
- _DigestClient.cs
- RotationValidation.cs
- validationstate.cs
- Storyboard.cs
- ZipIOModeEnforcingStream.cs
- SQLResource.cs
- XmlnsDictionary.cs
- DependencyObjectProvider.cs
- RegexStringValidator.cs
- LocalBuilder.cs
- NamedElement.cs
- RegexCharClass.cs
- EventProxy.cs
- CriticalFinalizerObject.cs
- ActionFrame.cs
- TreeViewBindingsEditor.cs
- StyleXamlTreeBuilder.cs
- ExpressionTextBoxAutomationPeer.cs
- TransactionScope.cs
- Int32Collection.cs
- FragmentNavigationEventArgs.cs
- CommentGlyph.cs
- OleDbWrapper.cs
- bidPrivateBase.cs
- ContextInformation.cs
- MenuCommand.cs
- InvalidEnumArgumentException.cs
- StorageEntitySetMapping.cs
- SqlDataSourceCommandEventArgs.cs
- SkipQueryOptionExpression.cs
- BinaryConverter.cs
- TablePattern.cs
- StringSource.cs
- FlowchartDesignerCommands.cs