Commit d019e61f authored by Anna.Pavlova's avatar Anna.Pavlova Committed by Alexander.Trofimov

1. Поправила баг (был превнесен в связи с последними правками): если в строке...

1. Поправила баг (был превнесен в связи с последними правками): если в строке был break Operator и слово выходящее за границы, делался перенос после break operator (BREAK_BEFORE)
2. Поправила баг на поиске позиции ( Get_ParaContentPosByXY )

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@62022 954022d7-b5bf-4e40-9824-e11837661b57
parent 6bdd41cf
...@@ -2209,14 +2209,21 @@ ParaRun.prototype.Recalculate_Range = function(PRS, ParaPr, Depth) ...@@ -2209,14 +2209,21 @@ ParaRun.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
WordLen = BrkLen; WordLen = BrkLen;
SpaceLen = 0; SpaceLen = 0;
FirstItemOnLine = false;
} }
else else
{ {
PRS.Set_LineBreakPos(Pos); if(SpaceLen !== 0)
FirstItemOnLine = false;
if(FirstItemOnLine == false)
PRS.Set_LineBreakPos(Pos);
SpaceLen += BrkLen; SpaceLen += BrkLen;
} }
FirstItemOnLine = false;
} }
else else
{ {
...@@ -2563,17 +2570,20 @@ ParaRun.prototype.Recalculate_Range = function(PRS, ParaPr, Depth) ...@@ -2563,17 +2570,20 @@ ParaRun.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
this.ParaMath.UpdateWidthLine(PRS, WidthLine); this.ParaMath.UpdateWidthLine(PRS, WidthLine);
} }
// для пустого Run, обновляем LineBreakPos на случай, если пустой Run находится между break_operator и мат объектом else
else if(this.Content.length == 0 && this.ParaMath.Is_BrkBinBefore() == false && Word == false && FirstItemOnLine == false)
{ {
PRS.Set_LineBreakPos(Pos); // для пустого Run, обновляем LineBreakPos на случай, если пустой Run находится между break_operator и мат объектом
X += SpaceLen; if(this.Content.length == 0 && this.ParaMath.Is_BrkBinBefore() == false && Word == false && FirstItemOnLine == false)
SpaceLen = 0; {
} PRS.Set_LineBreakPos(Pos);
X += SpaceLen;
SpaceLen = 0;
}
// запоминаем конец Run // запоминаем конец Run
PRS.PosEndRun = PRS.CurPos.Copy(); PRS.PosEndRun = PRS.CurPos.Copy();
PRS.PosEndRun.Update2(this.Content.length, Depth); PRS.PosEndRun.Update2(this.Content.length, Depth);
}
} }
PRS.MoveToLBP = MoveToLBP; PRS.MoveToLBP = MoveToLBP;
......
...@@ -1326,7 +1326,10 @@ CMathBase.prototype.Get_ParaContentPosByXY = function(SearchPos, Depth, _CurLine ...@@ -1326,7 +1326,10 @@ CMathBase.prototype.Get_ParaContentPosByXY = function(SearchPos, Depth, _CurLine
for (var nIndex = 0; nIndex < nCount; nIndex++) for (var nIndex = 0; nIndex < nCount; nIndex++)
{ {
var oBounds = this.Content[nIndex].Get_LineBound(_CurLine); var oBounds = this.Content[nIndex].Get_LineBound(_CurLine);
if (oBounds.W > 0.001 && oBounds.H > 0.001)
if(oBounds == undefined)
aBounds.push(null);
else if (oBounds.W > 0.001 && oBounds.H > 0.001)
aBounds.push(oBounds); aBounds.push(oBounds);
else else
aBounds.push(null); aBounds.push(null);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment