B2017-191 insert a NEWLINE chunk when there are hard returns instead of spaces
This commit is contained in:
parent
bb99e9d3c3
commit
6e9a7d046b
@ -148,23 +148,38 @@ namespace Volian.Print.Library
|
||||
return _MyParagraph;
|
||||
}
|
||||
// ----------------------------------------------------------------------
|
||||
private int _lastWasLineBreak = 0; // B2017-191 insert a NewLine when hard returns are used
|
||||
protected override void DoVisitBreak(IRtfVisualBreak visualBreak)
|
||||
{
|
||||
switch (visualBreak.BreakKind)
|
||||
{
|
||||
case RtfVisualBreakKind.Line:
|
||||
Chunk ck = HasIndent ? new Chunk("".PadLeft(200)) : new Chunk("".PadLeft(200));
|
||||
if (_lastWasLineBreak > 0)
|
||||
{
|
||||
_MyParagraph.Add(Chunk.NEWLINE);
|
||||
if (_lastWasLineBreak == 1)
|
||||
_MyParagraph.Add(Chunk.NEWLINE); // B2017-191 if this is the first hard return add an etra newline to create the first blank line
|
||||
}
|
||||
else
|
||||
{
|
||||
Chunk ck = HasIndent ? new Chunk("".PadLeft(200)) : new Chunk("".PadLeft(200));
|
||||
_MyParagraph.Add(ck);
|
||||
}
|
||||
_lastWasLineBreak++; // B2017-191 hard return count
|
||||
break;
|
||||
case RtfVisualBreakKind.Page:
|
||||
_lastWasLineBreak = 0; // B2017-191 reset hard return count
|
||||
break;
|
||||
case RtfVisualBreakKind.Paragraph:
|
||||
Chunk ck1 = HasIndent ? new Chunk("".PadLeft(200)) : Chunk.NEWLINE;
|
||||
_MyParagraph.Add(ck1);
|
||||
_lastWasLineBreak = 0; // B2017-191 reset hard return count
|
||||
break;
|
||||
case RtfVisualBreakKind.Section:
|
||||
_lastWasLineBreak = 0; // B2017-191 reset hard return count
|
||||
break;
|
||||
default:
|
||||
_lastWasLineBreak = 0; // B2017-191 reset hard return count
|
||||
break;
|
||||
}
|
||||
//_MyParagraph.Add(string.Format("<{0}>", visualBreak.BreakKind.ToString()));
|
||||
@ -230,6 +245,7 @@ namespace Volian.Print.Library
|
||||
default:
|
||||
break;
|
||||
}
|
||||
_lastWasLineBreak = 0; // B2017-191 reset hard return count
|
||||
}
|
||||
private bool ContainsAllSymbols(string p)
|
||||
{
|
||||
@ -268,6 +284,7 @@ namespace Volian.Print.Library
|
||||
if (visualText.Format.IsHidden)
|
||||
{
|
||||
ProfileTimer.Pop(profileDepth);
|
||||
_lastWasLineBreak = 0; // B2017-191 reset hard return count
|
||||
return;
|
||||
}
|
||||
iTextSharp.text.Font font = Volian.Svg.Library.VolianPdf.GetFont(visualText.Format.Font.Name, visualText.Format.FontSize,
|
||||
@ -315,6 +332,7 @@ namespace Volian.Print.Library
|
||||
ProcessMeans(visualText, visualText.Text, font);
|
||||
}
|
||||
ProfileTimer.Pop(profileDepth);
|
||||
_lastWasLineBreak = 0; // B2017-191 reset hard return count
|
||||
}
|
||||
/// <summary>
|
||||
/// Method to process means from text. Draws a line above the content of the range included in the
|
||||
@ -483,6 +501,7 @@ namespace Volian.Print.Library
|
||||
//Console.WriteLine("5 Time Span {0}", TimeSpan.FromTicks(DateTime.Now.Ticks - dt1.Ticks).TotalMilliseconds);
|
||||
_MyParagraph.Add(img);
|
||||
//Console.WriteLine("6 Time Span {0}", TimeSpan.FromTicks(DateTime.Now.Ticks - dt1.Ticks).TotalMilliseconds);
|
||||
_lastWasLineBreak = 0; // B2017-191 reset hard return count
|
||||
} // DoVisitImage
|
||||
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user