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
- DecoderBestFitFallback.cs
- PeerCollaboration.cs
- Encoder.cs
- StrokeFIndices.cs
- SimpleType.cs
- EditorZone.cs
- HyperlinkAutomationPeer.cs
- FlowDocument.cs
- Message.cs
- FormattedTextSymbols.cs
- EmptyEnumerator.cs
- ToolStripContentPanel.cs
- OptimizedTemplateContent.cs
- CircleHotSpot.cs
- WebPartEditorApplyVerb.cs
- DataKeyArray.cs
- Utils.cs
- AudioSignalProblemOccurredEventArgs.cs
- SequenceNumber.cs
- HtmlGenericControl.cs
- PersonalizationStateInfoCollection.cs
- UnsafeNativeMethods.cs
- RuntimeCompatibilityAttribute.cs
- HttpInputStream.cs
- MutableAssemblyCacheEntry.cs
- MailHeaderInfo.cs
- PointAnimationBase.cs
- ContentIterators.cs
- EntityDataSourceDesigner.cs
- SpnEndpointIdentity.cs
- IsolatedStorageFile.cs
- AmbientProperties.cs
- SectionInformation.cs
- GeneralTransformGroup.cs
- BackStopAuthenticationModule.cs
- DataSpaceManager.cs
- TargetException.cs
- CodeDOMUtility.cs
- SHA384CryptoServiceProvider.cs
- HttpCacheVary.cs
- ListViewCancelEventArgs.cs
- CompositeControl.cs
- OpCellTreeNode.cs
- AttachmentCollection.cs
- RelationshipEndMember.cs
- DragCompletedEventArgs.cs
- TimeoutValidationAttribute.cs
- XmlValueConverter.cs
- RegistryKey.cs
- ImageDrawing.cs
- MenuItemStyleCollection.cs
- SafeViewOfFileHandle.cs
- XamlWriter.cs
- ReflectEventDescriptor.cs
- PeerNameRecord.cs
- ImportCatalogPart.cs
- WebConfigurationFileMap.cs
- RawStylusInputCustomDataList.cs
- CodeCatchClauseCollection.cs
- SystemInfo.cs
- DateTimeUtil.cs
- Int16AnimationBase.cs
- BinHexDecoder.cs
- SafeWaitHandle.cs
- _HelperAsyncResults.cs
- EventLog.cs
- ViewPort3D.cs
- WebPartConnectionCollection.cs
- Section.cs
- XmlSchemaAppInfo.cs
- XmlDomTextWriter.cs
- SpellerInterop.cs
- Behavior.cs
- BrowserCapabilitiesFactoryBase.cs
- AsyncContentLoadedEventArgs.cs
- DataViewSetting.cs
- FontSizeConverter.cs
- OleDbException.cs
- CacheMode.cs
- ObjectDataProvider.cs
- QueryStringConverter.cs
- TextContainer.cs
- RankException.cs
- TableSectionStyle.cs
- DesignerTransactionCloseEvent.cs
- RsaSecurityTokenAuthenticator.cs
- TextViewBase.cs
- EntitySqlQueryCacheEntry.cs
- PointCollectionValueSerializer.cs
- TrustManagerMoreInformation.cs
- Encoding.cs
- FilterEventArgs.cs
- MaskedTextProvider.cs
- HttpPostedFile.cs
- ScriptControlManager.cs
- Rect3D.cs
- OrderedDictionary.cs
- DesigntimeLicenseContext.cs
- CustomErrorCollection.cs
- VsPropertyGrid.cs