mirror of
https://github.com/SubtitleEdit/subtitleedit.git
synced 2024-10-27 22:42:38 +01:00
Better time division when splitting long lines - thx Joel :)
This commit is contained in:
parent
f39ba84753
commit
6661de6856
@ -7495,10 +7495,10 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (Utilities.RemoveHtmlTags(oldText).Trim().Length > 0)
|
||||
{
|
||||
startFactor = (double)Utilities.RemoveHtmlTags(currentParagraph.Text).Length / Utilities.RemoveHtmlTags(oldText).Length;
|
||||
if (startFactor < 0.20)
|
||||
startFactor = 0.20;
|
||||
if (startFactor > 0.80)
|
||||
startFactor = 0.80;
|
||||
if (startFactor < 0.25)
|
||||
startFactor = 0.25;
|
||||
if (startFactor > 0.75)
|
||||
startFactor = 0.75;
|
||||
middle = currentParagraph.StartTime.TotalMilliseconds + (currentParagraph.Duration.TotalMilliseconds * startFactor);
|
||||
}
|
||||
|
||||
|
@ -196,11 +196,23 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (Configuration.Settings.General.MininumMillisecondsBetweenLines % 2 == 1)
|
||||
spacing2++;
|
||||
|
||||
double duration = p.Duration.TotalMilliseconds / 2.0;
|
||||
Paragraph newParagraph1 = new Paragraph(p);
|
||||
Paragraph newParagraph2 = new Paragraph(p);
|
||||
newParagraph1.Text = Utilities.AutoBreakLine(arr[0], language);
|
||||
newParagraph1.EndTime.TotalMilliseconds = p.StartTime.TotalMilliseconds + duration - spacing1;
|
||||
|
||||
double startFactor = 0;
|
||||
double middle = p.StartTime.TotalMilliseconds + (p.Duration.TotalMilliseconds / 2);
|
||||
if (Utilities.RemoveHtmlTags(oldText).Trim().Length > 0)
|
||||
{
|
||||
startFactor = (double)Utilities.RemoveHtmlTags(newParagraph1.Text).Length / Utilities.RemoveHtmlTags(oldText).Length;
|
||||
if (startFactor < 0.25)
|
||||
startFactor = 0.25;
|
||||
if (startFactor > 0.75)
|
||||
startFactor = 0.75;
|
||||
middle = p.StartTime.TotalMilliseconds + (p.Duration.TotalMilliseconds * startFactor);
|
||||
}
|
||||
|
||||
newParagraph1.EndTime.TotalMilliseconds = middle - spacing1;
|
||||
newParagraph2.Text = Utilities.AutoBreakLine(arr[1], language);
|
||||
newParagraph2.StartTime.TotalMilliseconds = newParagraph1.EndTime.TotalMilliseconds + spacing2;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user