MigraDoc.Rendering.ParagraphRenderer.ProbeAfterLeftAlignedTab C# (CSharp) Method

ProbeAfterLeftAlignedTab() private method

Probes the paragraph elements after a left aligned tab stop and returns the vertical text position to start at.
private ProbeAfterLeftAlignedTab ( PdfSharp.Drawing.XUnit tabStopPosition, bool &notFitting ) : PdfSharp.Drawing.XUnit
tabStopPosition PdfSharp.Drawing.XUnit Position of the tab to probe.
notFitting bool Out parameter determining whether the tab causes a line break.
return PdfSharp.Drawing.XUnit
    XUnit ProbeAfterLeftAlignedTab(XUnit tabStopPosition, out bool notFitting)
    {
      //--- Save ---------------------------------
      ParagraphIterator iter;
      int blankCount;
      XUnit xPosition;
      XUnit lineWidth;
      XUnit wordsWidth;
      XUnit blankWidth;
      SaveBeforeProbing(out iter, out blankCount, out wordsWidth, out xPosition, out lineWidth, out blankWidth);
      //------------------------------------------

      XUnit xPositionAfterTab = xPosition;
      this.currentXPosition = this.formattingArea.X + tabStopPosition.Point;

      notFitting = ProbeAfterTab();
      if (!notFitting)
        xPositionAfterTab = this.formattingArea.X + tabStopPosition;

      //--- Restore ---------------------------------
      RestoreAfterProbing(iter, blankCount, wordsWidth, xPosition, lineWidth, blankWidth);
      //------------------------------------------
      return xPositionAfterTab;
    }
ParagraphRenderer