Made some regx usages static to help with memory usage
Logic to support clipboard paste of screen shot into a table cell
This commit is contained in:
@@ -512,12 +512,13 @@ namespace Volian.Print.Library
|
||||
}
|
||||
private void TrimNewlines(Paragraph myPara)
|
||||
{
|
||||
while (myPara.Chunks.Count > 0 && ParaEndsWithNewLine(myPara))
|
||||
myPara.RemoveAt(myPara.Chunks.Count - 1);
|
||||
while (myPara.Count > 0 && ParaEndsWithNewLine(myPara))
|
||||
myPara.RemoveAt(myPara.Count - 1);
|
||||
}
|
||||
private bool ParaEndsWithNewLine(Paragraph myPara)
|
||||
{
|
||||
Chunk chk = myPara.Chunks[myPara.Chunks.Count - 1] as Chunk;
|
||||
Chunk chk = myPara[myPara.Count - 1] as Chunk;
|
||||
if (chk == null) return false;
|
||||
if (chk.Content == "\n") return true;
|
||||
return false;
|
||||
}
|
||||
@@ -1056,6 +1057,17 @@ namespace Volian.Print.Library
|
||||
MyPara.MultipliedLeading *= _MyPageHelper.YMultiplier;
|
||||
vlnCells.FixHyphens(MyPara, MyTable);
|
||||
myColumnText1.AddElement(MyPara);
|
||||
foreach(object obj in MyPara)
|
||||
{
|
||||
if(obj is iTextSharp.text.Image)
|
||||
{
|
||||
iTextSharp.text.Image img = obj as iTextSharp.text.Image;
|
||||
img.SetAbsolutePosition(left,top-h);
|
||||
img.ScaleAbsoluteWidth(w);
|
||||
img.ScaleAbsoluteHeight(h);
|
||||
myColumnText.Canvas.AddImage(img);
|
||||
}
|
||||
}
|
||||
float posBefore = myColumnText1.YLine; // RHM20150429 - Table Scrunch
|
||||
myColumnText1.Go();
|
||||
float posAfter = myColumnText1.YLine; // RHM20150429 - Table Scrunch
|
||||
|
@@ -152,7 +152,7 @@ namespace Volian.Print.Library
|
||||
switch (visualBreak.BreakKind)
|
||||
{
|
||||
case RtfVisualBreakKind.Line:
|
||||
Chunk ck = new Chunk("".PadLeft(200));
|
||||
Chunk ck = HasIndent ? new Chunk("".PadLeft(200)) : new Chunk("".PadLeft(200));
|
||||
_MyParagraph.Add(ck);
|
||||
break;
|
||||
case RtfVisualBreakKind.Page:
|
||||
@@ -392,21 +392,23 @@ namespace Volian.Print.Library
|
||||
// ----------------------------------------------------------------------
|
||||
protected override void DoVisitImage(IRtfVisualImage visualImage)
|
||||
{
|
||||
_MyParagraph.Add(new Chunk("<Image>"));
|
||||
//WriteStartElement("rtfVisualImage");
|
||||
//_MyParagraph.Add(new Chunk("<Image>"));
|
||||
DateTime dt1 = DateTime.Now;
|
||||
//System.Drawing.Image img2 = visualImage.ImageForDrawing;
|
||||
//Console.WriteLine("1 Time Span {0}", TimeSpan.FromTicks(DateTime.Now.Ticks - dt1.Ticks).TotalMilliseconds);
|
||||
//img2.Save(@"c:\datacvrt\x.png");
|
||||
System.IO.MemoryStream ms = new System.IO.MemoryStream();
|
||||
|
||||
//WriteElementString("format", visualImage.Format.ToString());
|
||||
//WriteElementString("width", visualImage.Width.ToString());
|
||||
//WriteElementString("height", visualImage.Height.ToString());
|
||||
//WriteElementString("desiredWidth", visualImage.DesiredWidth.ToString());
|
||||
//WriteElementString("desiredHeight", visualImage.DesiredHeight.ToString());
|
||||
//WriteElementString("scaleWidthPercent", visualImage.ScaleWidthPercent.ToString());
|
||||
//WriteElementString("scaleHeightPercent", visualImage.ScaleHeightPercent.ToString());
|
||||
//WriteElementString("alignment", visualImage.Alignment.ToString());
|
||||
|
||||
//WriteElementString("image", visualImage.ImageDataHex.ToString());
|
||||
|
||||
//WriteEndElement();
|
||||
//Console.WriteLine("2 Time Span {0}", TimeSpan.FromTicks(DateTime.Now.Ticks - dt1.Ticks).TotalMilliseconds);
|
||||
Console.WriteLine("Size {0}", visualImage.ImageForDrawing.Size);
|
||||
visualImage.ImageForDrawing.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
|
||||
//Console.WriteLine("3 Time Span {0}", TimeSpan.FromTicks(DateTime.Now.Ticks - dt1.Ticks).TotalMilliseconds);
|
||||
ms.Seek(0, System.IO.SeekOrigin.Begin);
|
||||
//Console.WriteLine("4 Time Span {0}", TimeSpan.FromTicks(DateTime.Now.Ticks - dt1.Ticks).TotalMilliseconds);
|
||||
iTextSharp.text.Image img = iTextSharp.text.Image.GetInstance(ms);
|
||||
//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);
|
||||
} // DoVisitImage
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user