private void DrawCurrentPage(Graphics oGraphics, Rectangle oBounds) { Point[] oPoints = { new Point(oBounds.Left, oBounds.Top), new Point(oBounds.Right, oBounds.Bottom) }; oGraphics.TransformPoints(CoordinateSpace.Device, CoordinateSpace.Page, oPoints); PrintRectangle oPrintRectangle = new PrintRectangle(oPoints[0].X, oPoints[0].Y, oPoints[1].X, oPoints[1].Y); RangeToFormat oRangeToFormat = new RangeToFormat(); oRangeToFormat.hdc = oRangeToFormat.hdcTarget = oGraphics.GetHdc(); oRangeToFormat.rc = oRangeToFormat.rcPage = oPrintRectangle; oRangeToFormat.chrg.cpMin = _iPosition; oRangeToFormat.chrg.cpMax = _iPrintEnd; _iPosition = _oScintillaControl.NativeInterface.FormatRange(true, ref oRangeToFormat); }