Есть canvas с многострочным текстом. Как при нажатии на экран определить квадрат в который будет вписан символ, на который произошло нажатие? Или несколько квадратов если нажатие захватывает несколько символов.
Чтобы быстро - вам придется при выводе текста в canvas запоминать куда-то еще bounding-box-ы для ваших символов, а потом искать уже не по canvas-у, а по структуре данных с bounding box-ами.
Mikhail Vasilyev Не понял зачем это. Мне не нужен символ на месте прикосновения. Мне нужен rectangle в который будет вписан этот символ чтобы перерисовать только его.
То есть мне не нужно знать что именно в месте прикосновения.
Mikhail Vasilyev приведу более абстрактный пример того, что я хочу сделать.
На canvas есть прозрачная сетка с ячейками определенного размера. При прикосновении нужно проверить на каких ячейках произошло прикосновение и в них нарисовать символ.
Гхм, у вас в canvas-e пикселы с цветами. Они про ваши символы - вообще не в курсе. Вы либо помните, какой символ в какие координаты нарисовали, либо OCR-ом занимаетесь, либо удовлетворяетесь "экранной лупой" - тупо берёте область в достаточной окрестности от точки, в которую ткнул юзер.
В вашем абстрактном примере - пересчитайте экранные координаты в сеточные (если начало координат в общей точке - целочисленным делением на шаг сетки).