bmpviewer: do aspect ratio correction.
it might be better to not change the message "loading width x height"? git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24976 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
af7c5c8842
commit
c1689ca80d
1 changed files with 11 additions and 0 deletions
|
@ -167,6 +167,17 @@ int load_image(char *filename, struct image_info *info,
|
|||
int ds = 1;
|
||||
/* check size of image needed to load image. */
|
||||
size = scaled_read_bmp_fd(fd, &bmp, 0, format | FORMAT_RETURN_SIZE, cformat);
|
||||
#if (LCD_PIXEL_ASPECT_HEIGHT != 1 || LCD_PIXEL_ASPECT_WIDTH != 1)
|
||||
if (size <= *buf_size)
|
||||
{
|
||||
/* correct aspect */
|
||||
format |= FORMAT_RESIZE|FORMAT_KEEP_ASPECT;
|
||||
bmp.width *= LCD_PIXEL_ASPECT_HEIGHT;
|
||||
bmp.height *= LCD_PIXEL_ASPECT_WIDTH;
|
||||
bmp.width /= MAX(LCD_PIXEL_ASPECT_HEIGHT, LCD_PIXEL_ASPECT_WIDTH);
|
||||
bmp.height /= MAX(LCD_PIXEL_ASPECT_HEIGHT, LCD_PIXEL_ASPECT_WIDTH);
|
||||
}
|
||||
#endif
|
||||
#ifdef USE_PLUG_BUF
|
||||
if (!plug_buf)
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue