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
- ObjectContextServiceProvider.cs
- FilteredSchemaElementLookUpTable.cs
- TrackBar.cs
- FieldNameLookup.cs
- List.cs
- BitmapVisualManager.cs
- HttpResponseWrapper.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- PriorityBindingExpression.cs
- DataViewListener.cs
- BoundField.cs
- ExceptionHandler.cs
- TreeWalker.cs
- GridEntry.cs
- ComboBoxRenderer.cs
- SendMessageRecord.cs
- ParameterModifier.cs
- SizeLimitedCache.cs
- SingleQueryOperator.cs
- WorkflowViewStateService.cs
- CustomWebEventKey.cs
- AggregatePushdown.cs
- PathFigureCollectionConverter.cs
- SessionStateSection.cs
- GridViewRowPresenterBase.cs
- KerberosSecurityTokenParameters.cs
- FileVersion.cs
- controlskin.cs
- Compress.cs
- XPathScanner.cs
- ChangesetResponse.cs
- CharacterBuffer.cs
- UntypedNullExpression.cs
- Point3DValueSerializer.cs
- oledbmetadatacolumnnames.cs
- PasswordTextNavigator.cs
- StylusPointCollection.cs
- BitSet.cs
- EasingQuaternionKeyFrame.cs
- UpDownBase.cs
- FixedSOMSemanticBox.cs
- SmtpMail.cs
- Selection.cs
- InternalCompensate.cs
- ListSourceHelper.cs
- EncoderParameters.cs
- DynamicPropertyHolder.cs
- SurrogateSelector.cs
- ControlBuilder.cs
- AbandonedMutexException.cs
- ObjectAnimationBase.cs
- ExpandSegmentCollection.cs
- Walker.cs
- _NegotiateClient.cs
- _UriTypeConverter.cs
- ArrayTypeMismatchException.cs
- SessionState.cs
- SpecularMaterial.cs
- ListQueryResults.cs
- TraceHandler.cs
- ClockGroup.cs
- CacheSection.cs
- LayoutEngine.cs
- EllipseGeometry.cs
- SemaphoreSecurity.cs
- QilTypeChecker.cs
- ToolStripDropDownButton.cs
- MatrixKeyFrameCollection.cs
- X509SubjectKeyIdentifierClause.cs
- RowType.cs
- ScrollChrome.cs
- BulletedList.cs
- EtwTrackingParticipant.cs
- BitmapSourceSafeMILHandle.cs
- PerspectiveCamera.cs
- LinqDataSourceContextData.cs
- PermissionSetEnumerator.cs
- AggregateNode.cs
- MultilineStringEditor.cs
- HMACMD5.cs
- COM2IProvidePropertyBuilderHandler.cs
- LinqDataSourceContextData.cs
- CacheEntry.cs
- ProjectionPruner.cs
- RegexTree.cs
- XNodeValidator.cs
- PartialTrustVisibleAssembliesSection.cs
- Matrix3DStack.cs
- PaintValueEventArgs.cs
- ConfigurationStrings.cs
- CatalogPart.cs
- NetworkAddressChange.cs
- DataAdapter.cs
- PolyBezierSegmentFigureLogic.cs
- Bits.cs
- DataObjectEventArgs.cs
- DataSourceCache.cs
- Exceptions.cs
- Transform.cs
- dataprotectionpermission.cs