На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела Visual Basic: Общие вопросы
Здесь обсуждаются вопросы по языку Visual Basic 1-6 (а так же по схожим языкам, как, например, PowerBASIC).
Вопросы по Visual Basic .NET (это который входит в состав Visual Studio 2002/2003/2005/2008+, для тех, кто не в курсе) обсуждаются в разделе .NET.

Обратите внимание:
1. Прежде чем начать новую тему или отправить сообщение, убедитесь, что Вы не нарушаете правил форума!
2. Обязательно воспользуйтесь поиском. Возможно, Ваш вопрос уже обсуждали. Полезные ссылки приведены ниже.
3. Темы с просьбой выполнить какую-либо работу за автора в этом разделе не обсуждаются. Студенты, вам сюда: ПОМОЩЬ СТУДЕНТАМ!
4. Используйте теги [ code=vba ] ...текст программы... [ /code ] для выделения текста программы подсветкой.
5. Помните, здесь телепатов нет. Формулируйте свой вопрос максимально грамотно и чётко: Как правильно задавать вопросы
6. Запрещено отвечать в темы месячной (и более) давности, без веских на то причин.

Полезные ссылки:
user posted image FAQ Сайта user posted image FAQ Раздела user posted image Кладовка user posted image Наши Исходники user posted image API-Guide user posted image Поиск по Разделу user posted image MSDN Library Online user posted image Google

Ваше мнение о модераторах: user posted image SCINER, user posted image B.V.
Модераторы: SCINER, B.V.
  
> Текст поверх WindowsMediaPlayer
    Всем салют!
    На форме есть контрол WindowsMediaPlayer.
    Мне нужно вывести текст поверх него.
    Каким образом это можно сделать?
    Проблема в том, что все остальные контролы всегда отображаются под WMP.
    Сообщение отредактировано: Jin X -
      Думал о том, чтобы создать сверху объект "Надпись".
      Но не могу понять как её создать. Делаю copy-paste, получается ерунда какая-то.
      Во-первых, её положение относительно формы другое. Т.е. у формы Left/Top относительно экрана, а у объекта – относительно листа.
      Во-вторых, не понимаю, как поменять текст. Пишу TextFrame.TextRange.Text = S, ругается.

      Как-то можно именно _создать_ объект "Надпись" без рамки и с прозрачным фоном?
      Желательно установив нужный цвет текста, сделав его жирным.
      Разместить в нужное место.
        Не получится, ибо директХэ-оверлей.
          А использовать TextOut из WinApi? В Api-Guide есть пример. Только надо Обновление сделать, чтоб по таймеру выводилось.
          Gonarh
          Думаешь GDI не перерисует поверх? Помню как-то давно была фишка...
          Запускаешь видео в WMP, жмешь аль+принтскрин. Запускаешь Paint, делаешь заливку черным, жмешь ctrl+v, и вот видео идет и Пайнте и в плеере. Только в пайнте можно поверх рисовать=)

          ПС
          Сейчас проверил с различными плеерами, не проканывает=)
          Сообщение отредактировано: Bubaylo -
            Цитата Jin X @
            Всем салют!
            На форме есть контрол WindowsMediaPlayer.
            Мне нужно вывести текст поверх него.

            Вывести текст можно более другим способом - проигрывать не самое видео, а скрипт от Avsynth. А вот в нем уже запрограммировать тайм-коды, положение, гарнитуру и цвет текста. Ну, естественно, для такой обработки Avsynth должен быть установлен в системе. До появления ChatGPT скрипты приходилось писать долго и муторно вручную, сейчас с этим гораздо проще - просто написать задание для ChatGPT. Пример:

            Цитата
            напиши мне скрипт для Аvsynth, который загружает видео video.mkv, и проигрывает его, при этом от начала и до конца проигрывания выводится текст в верхнем левом углу с отступами по вертикали и горионтали 96pх "Пример текста". Текст должен выводится белым цветом, шрифтом Arial, размером 14px. Текст должен иметь обводку черным цветом толщиной 2px

            Вот ответ ChatGPT:
            ExpandedWrap disabled
              video = DirectShowSource("video.mkv")
              text = "Пример текста"
              text_color = $FFFFFF
              text_outline_color = $000000
              text_outline_thickness = 2
              text_font = "Arial"
              text_size = 14
              text_padding_x = 96
              text_padding_y = 96
               
              text_clip = TextSub(video, text, font=text_font, size=text_size, text_color=text_color, \
                                  align=3, x=text_padding_x, y=text_padding_y, \
                                  text_outline=text_outline_thickness, text_outline_color=text_outline_color)
               
              StackHorizontal(video, text_clip)

            Этот скрипт нужно сохранить в файл с расширением .avs и проигрывать его.
            Пробуй.
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0298 ]   [ 16 queries used ]   [ Generated: 26.05.24, 18:16 GMT ]