Я рисую на холсте другого вида, но получаю перевод.Как рассчитать или получить перевод холста, если метод устарел?
Я рисую на экране пальцем, но использую холст другого вида.Когда я отрисовываю рисунок, он переводит количество пикселей, определяемое размером экрана, и я предполагаю, что DPI.Я обнаружил, что если я «воссоздаю» матрицу с правильным масштабированием и переводом для конкретного устройства, все работает, как ожидалось, но я не могу найти способ определить значение с помощью формулы / программно.
Когда я отлаживаю, я использую canvas.getMatrix()
, и там я получаю перевод, который происходит, тот, который мне нужен.Когда я вставляю эти значения в свою воссозданную матрицу, все работает так, как мне нужно.Но метод canvas.getMatrix()
устарел, поэтому мне нужно найти другой способ определения этого.
Я пытался вычислить его с шириной и высотой устройства и холста, делая пропорцию, вычитая один издругие и т. д. Но это работает только на некоторых устройствах с некоторыми ориентациями.
Кроме того, этот метод изменяется в зависимости от ориентации устройства, поэтому мне нужно будет найти метод для различных ориентаций.
Есть ли у кого-нибудь указатель, чтобы направить меня или какие-либо предложения о том, как я могу обработать эту матрицу преобразования на экранах различных размеров и ориентаций?
Спасибо.