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
- BitmapMetadataEnumerator.cs
- ResourceType.cs
- LoginCancelEventArgs.cs
- InternalsVisibleToAttribute.cs
- XmlDataLoader.cs
- SatelliteContractVersionAttribute.cs
- XamlToRtfParser.cs
- TreeNodeBindingCollection.cs
- HyperLink.cs
- TreeNodeBindingCollection.cs
- CompatibleIComparer.cs
- InfoCardRSAPKCS1KeyExchangeFormatter.cs
- _AutoWebProxyScriptEngine.cs
- XmlConvert.cs
- SetIndexBinder.cs
- SchemaImporterExtensionElementCollection.cs
- TrackBar.cs
- WpfKnownMemberInvoker.cs
- WmlValidationSummaryAdapter.cs
- Geometry3D.cs
- FamilyMapCollection.cs
- RegexGroup.cs
- ReadOnlyPropertyMetadata.cs
- MobileTextWriter.cs
- TcpHostedTransportConfiguration.cs
- DesignerGenericWebPart.cs
- GlobalizationSection.cs
- ObjectQueryState.cs
- GcHandle.cs
- DataSourceControlBuilder.cs
- ResponseBodyWriter.cs
- ObjectDataSourceMethodEventArgs.cs
- XmlSchemaDatatype.cs
- XmlSchemaSimpleType.cs
- ToolStripSplitButton.cs
- ComplexPropertyEntry.cs
- GridViewColumnCollection.cs
- EmptyStringExpandableObjectConverter.cs
- UITypeEditors.cs
- FileEnumerator.cs
- EntityConnection.cs
- ChannelTracker.cs
- AssemblyUtil.cs
- StylusPointPropertyUnit.cs
- XmlSchemaFacet.cs
- SafeViewOfFileHandle.cs
- METAHEADER.cs
- RecommendedAsConfigurableAttribute.cs
- ChineseLunisolarCalendar.cs
- GradientStop.cs
- AsyncCompletedEventArgs.cs
- IUnknownConstantAttribute.cs
- CustomTypeDescriptor.cs
- RepeaterItemEventArgs.cs
- ProvidePropertyAttribute.cs
- Comparer.cs
- HtmlEncodedRawTextWriter.cs
- XmlSchemaSimpleTypeUnion.cs
- MsmqOutputSessionChannel.cs
- NavigationCommands.cs
- Stylesheet.cs
- ScalarOps.cs
- UTF32Encoding.cs
- PriorityChain.cs
- ModelVisual3D.cs
- FontNamesConverter.cs
- QueryOutputWriter.cs
- CompilationRelaxations.cs
- FillRuleValidation.cs
- NavigatingCancelEventArgs.cs
- ByteStream.cs
- HyperLinkStyle.cs
- WsdlBuildProvider.cs
- DesignerAutoFormat.cs
- SQLResource.cs
- CurrentChangingEventManager.cs
- NameNode.cs
- XmlSchemaComplexType.cs
- DifferencingCollection.cs
- WebScriptMetadataFormatter.cs
- RankException.cs
- ImageCollectionCodeDomSerializer.cs
- Constraint.cs
- OleDbPropertySetGuid.cs
- StyleSheetRefUrlEditor.cs
- XsdDataContractImporter.cs
- EntityConnection.cs
- IndexerNameAttribute.cs
- UpdateCommandGenerator.cs
- SecurityDocument.cs
- WinInetCache.cs
- ZoneIdentityPermission.cs
- ReferentialConstraintRoleElement.cs
- ObjectSpanRewriter.cs
- NavigationEventArgs.cs
- ClientRuntimeConfig.cs
- IntSecurity.cs
- FontCollection.cs
- FileDetails.cs
- UpdateTracker.cs