Added logic to handle compression of partial steps

This commit is contained in:
Rich
2015-03-06 12:57:11 +00:00
parent f97433e12a
commit f908b2ad02
2 changed files with 111 additions and 15 deletions

View File

@@ -1215,6 +1215,15 @@ namespace Volian.Print.Library
if (MyItemInfo.IsHigh && MyItemInfo.MyPrevious != null && ((MyItemInfo.MyDocStyle.StructureStyle.Style & E_DocStructStyle.DoubleBoxHLS) == E_DocStructStyle.DoubleBoxHLS))
yPageStart -= SixLinesPerInch;
break;
// XXXX XX XXXXX XXXXXXX X
// X X X X X X X XXX
// X X X X X
// X X X X X X X
// X X X XXXXX XXXX X
// X X X X X X X
// X XXXXX X X X
// X X X X X X X X X
// XXXX XXX XXX XXXXX XXXXXXX XXXXX
case 1: // Break on High Level Step
OutputOtherPageSteps(cb, YTopMost, yPageStart, yTopMargin, yBottomMargin);
docstyle = MyItemInfo.MyDocStyle;
@@ -1273,7 +1282,13 @@ namespace Volian.Print.Library
SectionConfig sch = MyItemInfo.ActiveSection.MyConfig as SectionConfig;
doSectionTitleContinued = (sch == null || sch.Section_PrintHdr == "Y") && !MyItemInfo.MyDocStyle.CancelSectTitle;
}
MyPageHelper.YMultiplier = 1;
if (MyPageHelper.ParaBreaks.Count > 0 && MyPageHelper.ParaBreaks[0].CompressPreviousPartOfPage)
{
MyPageHelper.YMultiplier = _SevenLinesPerInch / SixLinesPerInch;
CompressPartOfPage = false;
}
else
MyPageHelper.YMultiplier = 1;
break;
case 2: // Break within a Step
OutputOtherPageSteps(cb, YTopMost, yPageStart, yTopMargin, yBottomMargin);
@@ -1386,7 +1401,13 @@ namespace Volian.Print.Library
if (!doSectionTitleContinued || !SectionShowTitles)
addExtraLines = DoTopContinueMsg(cb, ref yPageStart, yTopMargin, docstyle, doThreeContinues && MyItemInfo.MyParent != null && MyItemInfo.MyParent.MyTab != null ? MyItemInfo.MyParent.MyTab.CleanText : null);
MyPageHelper.YMultiplier = 1;
if (CompressPartOfPage)
{
MyPageHelper.YMultiplier = _SevenLinesPerInch / SixLinesPerInch;
CompressPartOfPage = false;
}
else
MyPageHelper.YMultiplier = 1;
// For Calvert Alarms, if there was a page break and there is an box around the current
// step, need to add the header for the box, which is stored in a macro. Also set the