Переместите изображение в TImageViewer

Я создаю приложение FMX для iOS, у него есть TImageViewer на TPanel с TImageViewer, выровненным по содержимому. Я загружаю растровое изображение из файла в TImageViewer, и затем я могу перемещаться и увеличивать/уменьшать изображение. Работает отлично.

Теперь я хочу, чтобы событие нажатия кнопки переместило левый край изображения на левый край TPanel, чтобы оно выглядело как верхнее изображение ниже.

Вот пример того, как это выглядит при первой загрузке:

введите здесь описание изображения

Вот это после того, как я панорамировал его:

введите здесь описание изображения

Я искал и экспериментировал весь день, но я просто не могу получить его. Я попытался перезагрузить растровый файл, но ничего не сделал. Какие-либо предложения?

спасибо, Расс


person relayman357    schedule 21.09.2019    source источник


Ответы (1)


Нашел способ, основанный на этом вопросе Delphi. Обратите внимание, что ImageMap — это имя моего TImageViewer в Form1.

TPointF myOffset;
myOffset = Form1->ImageMap->ViewportPosition; // this is (0,0) before the image is panned around, non-zero otherwise
Form1->ImageMap->ScrollBy(myOffset.X, myOffset.Y) ;
person relayman357    schedule 22.09.2019