Как вставить разрыв строки после символов «х» - PullRequest
1 голос
/ 27 апреля 2011

В настоящее время я работаю над новой графической программой, которая использует Visual Basic для создания сценариев.Моя задача заключается в следующем:

У меня есть файл .xml, содержащий несколько фрагментов данных, один из которых необходимо добавить к графике (заголовок новости с нашего веб-сайта).Однако эти заголовки слишком длинны для графики и требуют добавления разрыва строки.Я успешно получил этот заголовок в сценарий с помощью остальной части графического программного обеспечения, и его имя temp.txt - BodyTxt (i) .Text (где (i) является частью цикла для другой части сценария, но будетвсегда равно 1, 2 или 3).После 35 символов мне нужен разрыв строки.Что было бы самым простым способом сделать это?

Для дальнейшего использования, я мог бы увидеть, что это используется для создания аналогичного сценария на веб-странице для автоматического заполнения полей данных из RSS или .xmlподача без разрыва шаблона и принудительного сокращения шрифта до размера всего поля или создания разрыва строки в середине слова.

1 Ответ

3 голосов
/ 27 апреля 2011

Это то, что вы ищете?


Sub Main()
    Dim testMessage As String

    testMessage = "For future reference, I could see this being used in order to create a similar script within a web page in order to automatically populate data fields from an RSS or .xml feed without breaking the template and either forcing a font to shrink to fit the entire field, or creating a line break in the middle of a word."

    PrintMessage(testMessage, 30)

    Console.ReadLine()
End Sub

Sub PrintMessage(Message As String, Length As Integer)
    Dim currentLength = 0

    Dim words As Array

    words = Split(Message, " ")

    For Each word As String In words
        If currentLength + word.Length > Length Then
            Console.Write(ControlChars.Tab & currentLength)                                         
            Console.WriteLine()
            currentLength = 0
        End If

        Console.Write(word & " ")
        currentLength += word.Length
    Next
        Console.Write(ControlChars.Tab & currentLength)
End Sub 

Производит этот вывод:

For future reference, I could see     28
this being used in order to create a  29
similar script within a web page in   29
order to automatically populate       28
data fields from an RSS or .xml feed  29
without breaking the template and     29
either forcing a font to shrink to    28
fit the entire field, or creating a   29
line break in the middle of a word.   29
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...