Bem, você poderia tentar o seguinte VBA como ponto de partida, mas acho que precisará de algum trabalho. Ele pressupõe que suas pausas sempre serão após um espaço (não irracional para um esquema IMO), portanto, se você tiver um texto sem espaço maior que uma linha, talvez ainda precise quebrá-las manualmente.
Isso substitui os espaços finais pelo símbolo de retorno na fonte atual + um espaço sem quebra de largura, contanto que você possa ajustar a largura do símbolo de retorno (há várias maneiras possíveis de fazer isso) para que o Word ainda embrulha nos mesmos pontos, pode ser o suficiente.
Sub markAutoLineBreaks()
' Changes line breaks automatically made by Word
' into "return" charaters, but only where the line
' ends in a " "
' This operates on the text in the current selection
' We use a character style
Const strStyleName As String = "contchar"
Dim r As Word.Range
Dim styContchar As Word.Style
' Add the style if it is not present
On Error Resume Next
Set styContchar = ActiveDocument.Styles.Add(strStyleName, Type:=WdStyleType.wdStyleTypeCharacter)
Err.Clear
On Error GoTo 0
' Set the characteristics of the style. What you need to aim for
' is to adjust the character width so that the text breaks at the
' same point (if possible)
Set styContchar = ActiveDocument.Styles(strStyleName)
With styContchar.Font
.Size = 8
End With
' Save the selection
Set r = Selection.Range
' remove old line end marks
With Selection.Find
.ClearFormatting
.Style = styContchar
.Replacement.ClearFormatting
' Not sure what to use here, but this will have to do
.Replacement.Style = ActiveDocument.Styles("Default Paragraph Font")
' 9166 is the return character. 8204 is a No-width breaking space
.Text = ChrW(9166) & ChrW(8204)
.Replacement.Text = " "
.Forward = True
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
' Moving down lines is not completely straightforward
' but this seems to work
Selection.Collapse direction:=wdCollapseStart
Do Until Selection.End > r.End
Selection.Bookmarks("\line").Select
If Right(Selection, 1) = " " Then
Selection.SetRange Selection.End - 1, Selection.End
Selection.Delete
Selection.Text = ChrW(9166) & ChrW(8204)
Selection.Style = styContchar
Selection.Bookmarks("\line").Select
Selection.Collapse direction:=wdCollapseStart
End If
Selection.MoveDown wdLine, 1, False
Loop
' reselect our original selection
r.Select
Set r = Nothing
End Sub