Fixed printing of backslashes in procedure numbers and titles
This commit is contained in:
parent
960e09f9fb
commit
382864aca7
@ -765,6 +765,8 @@ namespace Volian.Svg.Library
|
|||||||
text = Regex.Replace(text, @"\\[Uu][0-9]+[?]", new MatchEvaluator(ReplaceSpecialCharacter));
|
text = Regex.Replace(text, @"\\[Uu][0-9]+[?]", new MatchEvaluator(ReplaceSpecialCharacter));
|
||||||
text = Regex.Replace(text, @"\\'[0-9a-fA-F][0-9a-fA-F]", new MatchEvaluator(ReplaceHexCharacter));
|
text = Regex.Replace(text, @"\\'[0-9a-fA-F][0-9a-fA-F]", new MatchEvaluator(ReplaceHexCharacter));
|
||||||
text += " ";
|
text += " ";
|
||||||
|
if (text.Contains("\\"))
|
||||||
|
text = text.Replace("\\", ((char)9586).ToString()); // B2016-155 convert backslash char to the unicode symbol - to allow processing rtf commands \ul, \up, \dn, etc.
|
||||||
Phrase ph = new Phrase();
|
Phrase ph = new Phrase();
|
||||||
while (text.Length > 0)
|
while (text.Length > 0)
|
||||||
{
|
{
|
||||||
@ -778,8 +780,8 @@ namespace Volian.Svg.Library
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
if (text[text.Length - 1] == ' ') text = text.Substring(0, text.Length - 1);
|
if (text[text.Length - 1] == ' ') text = text.Substring(0, text.Length - 1);
|
||||||
|
// B2016-155 convert the backslash symbol back to the backslash character since we look for specific rft commands below
|
||||||
foreach (Chunk chk in BuildPartialPhrase(text, fontSize, fontStyle, font).Chunks)
|
foreach (Chunk chk in BuildPartialPhrase(text.Replace(((char)9586).ToString(),"\\"), fontSize, fontStyle, font).Chunks)
|
||||||
{
|
{
|
||||||
if (fontUnderline) chk.SetUnderline(font.Color, 0, 0.05F, 0, -.131F, PdfContentByte.LINE_CAP_ROUND);
|
if (fontUnderline) chk.SetUnderline(font.Color, 0, 0.05F, 0, -.131F, PdfContentByte.LINE_CAP_ROUND);
|
||||||
if (fontTextRise != 0) chk.SetTextRise(fontTextRise * chk.Font.Size);
|
if (fontTextRise != 0) chk.SetTextRise(fontTextRise * chk.Font.Size);
|
||||||
@ -835,7 +837,6 @@ namespace Volian.Svg.Library
|
|||||||
VolianPdf.RegisterFont("Arial Unicode MS");
|
VolianPdf.RegisterFont("Arial Unicode MS");
|
||||||
fs.AddFont(FontFactory.GetFont("Arial Unicode MS", BaseFont.IDENTITY_H, BaseFont.EMBEDDED, fontSize, fontStyle, new Color(FillColor)));
|
fs.AddFont(FontFactory.GetFont("Arial Unicode MS", BaseFont.IDENTITY_H, BaseFont.EMBEDDED, fontSize, fontStyle, new Color(FillColor)));
|
||||||
}
|
}
|
||||||
|
|
||||||
Phrase ph = fs.Process(text);
|
Phrase ph = fs.Process(text);
|
||||||
return ph;
|
return ph;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user