-
DSPack Непонятка с VMRBitmap.Source
Господа! Не могу въехать. Хочу сделать бегущую строку оверлеем на видео (D9, 10).
По идее всё просто: загружаем в VMRBitmap широкое изображение. Затем через VMRBitmap.Source циклично меняем нужную область, выводим - получаем результат.
Inc(StartX, 1); VMRBitmap.Source:=Rect(StartX, 0, StartX+Video1.Width, LogoBmp.Height); VMRBitmap.DrawTo(0,0.2,1,0.3, XAlpha);
Результат получаем парадоксальный: строка бежит, но при этом и правая граница оверлея, (всего накладываемого
изображения) сдвигается влево. Но МЕДЛЕНЕЕ, чем бежит строка. Перерыл весь Инет, никакого примера не нашел. Везде люди дают
VMRBitmap.Source:=VMRBitmap.Canvas.ClipRect.
Т.е. всегда изображение выводится целиком, часть его никто не выводил.
Думал в VMRBitmap.Source какие-то проблемы. Но 1) если StartX=0, то отлично выводится нужная область в нужном месте. Значит работает. 2) смотрел исходник - в DSPack по этому поводу никаких вычислений не делается, просто передаются координаты. Значит и ошибки не должно быть.
Может я что принципиально не так понимаю?
Заранее благодарен.
|