про перенос поста понял, хотя не совсем удобно...я не просто искал, а именно для этой темы...ну да ладно...
в общем, проанализировал я еще раз содержимое Song.ini - там может быть несколько блоков с текстом, например:
блок1, тип "classic karaoke" - содержит заголовок для текста партии 1
блок2, тип "vertical text" - содержит текст партии 1
блок3, тип "classic karaoke" - содержит заголовок для текста партии 2
блок4, тип "vertical text" - содержит текст партии 2
или
блок1, тип "classic karaoke" - содержит заголовок песни
блок2, тип "vertical text" - содержит текст песни
или
блок1, тип "classic karaoke" - содержит заголовок песни
блок2, тип "classic karaoke" - содержит текст песни
и т.д.
Т.е. суть в том, что текст песни может быть в любом из блоков с типами "classic karaoke" или "vertical text" (и это еще не все варианты, т.к. разных типов блоков более 60). Это осложняет автоматическое создание lrc напрямую из Song.ini - нужно четко понимать, из какого блока делать конвертацию.
В итоге сделал следующее: реализовал парсинг Song.ini на блоки, можно выбрать блок, посмотреть его содержимое и конвертировать в нужный формат (lrc или elyr). Но это подходит только для ручной конвертации. Чтобы автоматически выбирать нужный блок, нужен ряд условий. Пока думаю сделать так:
- если Song.ini содержит только один блок с типом "classic karaoke" или "vertical text", то конвертируем его
- если Song.ini содержит несколько блоков с типом "classic karaoke" или "vertical text", то придется вручную указывать, какой блок конвертировать либо конвертировать каждый блок в отдельный lrc
- если Song.ini содержит несколько блоков с типом "classic karaoke" или "vertical text", но только один из них имеет более 5-ти строк текста, то конвертируем его
вот, в общем, такие планы...скоро будет новая версия программы...жду ваших комментариев...