B2019--115 Bottom Continue Message Location after AER Table and RNO Content excedes Page.
This commit is contained in:
parent
c92737906c
commit
70f6cc2ec6
@ -1815,7 +1815,9 @@ namespace Volian.Print.Library
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (MyPageHelper.NotesToFootNotes != null && MyPageHelper.NotesToFootNotes.Count > 0) MyPageHelper.NotesToFootNotesYoffset = CalculateYLocation(yLocation, yTopMargin);
|
if (MyPageHelper.NotesToFootNotes != null && MyPageHelper.NotesToFootNotes.Count > 0) MyPageHelper.NotesToFootNotesYoffset = CalculateYLocation(yLocation, yTopMargin);
|
||||||
DoBottomContinueMsg(cb, yBottomMargin, yLocation, docstyle, doThreeContinues);
|
// B2019-115 Locate Bottom Continue Message below AER Table if necesssary
|
||||||
|
float bcm_yLocation = TableBottom == -1 ? yLocation: Math.Min(TableBottom,yLocation);
|
||||||
|
DoBottomContinueMsg(cb, yBottomMargin, bcm_yLocation, docstyle, doThreeContinues);
|
||||||
MyPromsPrinter.NewPage();
|
MyPromsPrinter.NewPage();
|
||||||
if (MyItemInfo.IsStep && (MyItemInfo.ActiveSection != null && ((MyItemInfo.ActiveSection.MyDocStyle.StructureStyle.Style & E_DocStructStyle.DSS_PageListSpBckgrnd) == E_DocStructStyle.DSS_PageListSpBckgrnd))) // C2018-003 fixed use of getting the active section
|
if (MyItemInfo.IsStep && (MyItemInfo.ActiveSection != null && ((MyItemInfo.ActiveSection.MyDocStyle.StructureStyle.Style & E_DocStructStyle.DSS_PageListSpBckgrnd) == E_DocStructStyle.DSS_PageListSpBckgrnd))) // C2018-003 fixed use of getting the active section
|
||||||
{
|
{
|
||||||
@ -2769,6 +2771,7 @@ namespace Volian.Print.Library
|
|||||||
|
|
||||||
private void DoBottomContinueMsg(PdfContentByte cb, float yBottomMargin, float yLocation, DocStyle docstyle, bool doThreeContinues)
|
private void DoBottomContinueMsg(PdfContentByte cb, float yBottomMargin, float yLocation, DocStyle docstyle, bool doThreeContinues)
|
||||||
{
|
{
|
||||||
|
// Console.WriteLine("Page {0} - yLocation {1}", cb.PdfWriter.PageNumber, yLocation);
|
||||||
string myMsg = docstyle.Continue.Bottom.Message;
|
string myMsg = docstyle.Continue.Bottom.Message;
|
||||||
|
|
||||||
// a format flag exists that states to only put a BOTTOM message if it is a certain type (RNO)
|
// a format flag exists that states to only put a BOTTOM message if it is a certain type (RNO)
|
||||||
@ -2959,8 +2962,17 @@ namespace Volian.Print.Library
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// B2019-115 Locate Bottom Continue Message below AER Table if necesssary
|
||||||
|
private float _TableBottom = -1;
|
||||||
|
public float TableBottom
|
||||||
|
{
|
||||||
|
get { return _TableBottom; }
|
||||||
|
set { _TableBottom = value; }
|
||||||
|
}
|
||||||
private float OutputOtherPageSteps(PdfContentByte cb, float YTopMost, float yPageStart, float yTopMargin, float yBottomMargin)
|
private float OutputOtherPageSteps(PdfContentByte cb, float YTopMost, float yPageStart, float yTopMargin, float yBottomMargin)
|
||||||
{
|
{
|
||||||
|
// B2019-115 Locate Bottom Continue Message below AER Table if necesssary - Initialize TableBottom to -1
|
||||||
|
TableBottom = -1;
|
||||||
float retval = YTopMost;
|
float retval = YTopMost;
|
||||||
// Find any items remaining in MyPageHelper.MyParagraphs that should be printed on this page.
|
// Find any items remaining in MyPageHelper.MyParagraphs that should be printed on this page.
|
||||||
vlnParagraphs process = new vlnParagraphs(null);
|
vlnParagraphs process = new vlnParagraphs(null);
|
||||||
@ -2971,9 +2983,13 @@ namespace Volian.Print.Library
|
|||||||
{
|
{
|
||||||
if (vPara.MyItemInfo.IsTable && (vPara.YOffset <= YTopMost) && vPara.MyItemInfo.ActiveSection.ColumnMode > 0)
|
if (vPara.MyItemInfo.IsTable && (vPara.YOffset <= YTopMost) && vPara.MyItemInfo.ActiveSection.ColumnMode > 0)
|
||||||
{
|
{
|
||||||
_MyLog.WarnFormat("\r\n=-=-=> Table Print on First Page {0} {1} ColumnMode = {2}", vPara.MyItemInfo.ItemID, vPara.MyItemInfo.ShortPath, vPara.MyItemInfo.ActiveSection.ColumnMode);
|
|
||||||
if (vPara.MyItemInfo.ActiveSection.ColumnMode > 0)
|
if (vPara.MyItemInfo.ActiveSection.ColumnMode > 0)
|
||||||
|
{
|
||||||
|
// B2019-115 Locate Bottom Continue Message below AER Table if necesssary
|
||||||
|
_MyLog.WarnFormat("\r\n=-=-=> Table Print on First Page {0} {1} ColumnMode = {2}", vPara.MyItemInfo.ItemID, vPara.MyItemInfo.ShortPath, vPara.MyItemInfo.ActiveSection.ColumnMode);
|
||||||
process.Add(vPara);
|
process.Add(vPara);
|
||||||
|
// Console.WriteLine("Table YOffset {0} height {1} Bottom = {2} yPageStart = {3} Bottom {4}", vPara.YOffset, vPara.Height, vPara.YOffset + vPara.Height - yPageStart, yPageStart, this.YBottom);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (((vPara.YOffset + vPara.Height) < YTopMost))
|
else if (((vPara.YOffset + vPara.Height) < YTopMost))
|
||||||
{
|
{
|
||||||
@ -3014,6 +3030,14 @@ namespace Volian.Print.Library
|
|||||||
foreach (vlnParagraph vPara in process)
|
foreach (vlnParagraph vPara in process)
|
||||||
{
|
{
|
||||||
vPara.ParagraphToPdf(cb, yPageStart, yTopMargin, yBottomMargin);
|
vPara.ParagraphToPdf(cb, yPageStart, yTopMargin, yBottomMargin);
|
||||||
|
// B2019-115 Locate Bottom Continue Message below AER Table if necesssary
|
||||||
|
if(vPara.MyItemInfo.IsTable)
|
||||||
|
{
|
||||||
|
if (TableBottom == -1)
|
||||||
|
TableBottom = (yPageStart-vPara.YOffset)-vPara.Height- SixLinesPerInch;
|
||||||
|
else
|
||||||
|
TableBottom = Math.Min(TableBottom, (yPageStart - vPara.YOffset) - vPara.Height - SixLinesPerInch);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user