Я пытаюсь нарисовать изображение в функции краски моего компонента. Он очень хорошо работает в эмуляторе, но после компиляции для реальной функции устройства drawImage (Image img, int x, int y, int w, int h) не работает. Например:Fucntion drawImage не работает на реальном устройстве
Emulator:
Real устройство:
Для этого примера был использован этот код:
g.setColor(0x1E7FCA);
g.fillRect(getX(), getY(), getWidth(), getHeight());
g.setColor(0xF91631);
g.fillRect(getX() + mapX, getY() + mapY, mapWidth, mapHeight);
g.drawImage(map, getX() + mapX, getY() + mapY, mapWidth, mapHeight);
g.drawString(
Integer.toString(getX() + mapX)+";"+
Integer.toString(getY() + mapY)+"-"+
Integer.toString(mapWidth)+";"+
Integer.toString(mapHeight)+";", 0, 0);
Да. Это изображение довольно большое ... 4738 × 3133 – ftp27
, но изображение было изменено размерами по значению mapWidth и mapHeight. – ftp27
Его нет. Исходное изображение по-прежнему ОГРОМНОЕ, вы просто рисуете его в меньшем месте. Это означает, что графический процессор должен загружать очень большое изображение (намного больше, чем экран, и масштабировать его динамически. Вы можете масштабировать файл изображения с помощью ImageIO API, но я предполагаю, что это не то, что вы хотите. –