forked from KolibriOS/kolibrios
libimg: export img.resize_data
git-svn-id: svn://kolibrios.org@8395 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
201cf02d85
commit
11e69b4021
@ -238,7 +238,7 @@ img.decode.gif.cur_color_table_size_child equ ebp + 4 + 4 + 4*3 + 4
|
|||||||
movzx eax, [ebx + gif.ImageDescriptor.Width]
|
movzx eax, [ebx + gif.ImageDescriptor.Width]
|
||||||
movzx ecx, [ebx + gif.ImageDescriptor.Height]
|
movzx ecx, [ebx + gif.ImageDescriptor.Height]
|
||||||
push edx
|
push edx
|
||||||
stdcall img._.resize_data, [img], eax, ecx
|
stdcall img.resize_data, [img], eax, ecx
|
||||||
pop edx
|
pop edx
|
||||||
or eax, eax
|
or eax, eax
|
||||||
jz .error
|
jz .error
|
||||||
@ -875,7 +875,7 @@ proc img.decode.gif._.superimpose ;/////////////////////////////////////////////
|
|||||||
movzx eax, [ebx + sizeof.gif.Image + gif.LogicalScreenDescriptor.ScreenHeight]
|
movzx eax, [ebx + sizeof.gif.Image + gif.LogicalScreenDescriptor.ScreenHeight]
|
||||||
push eax
|
push eax
|
||||||
movzx eax, [ebx + sizeof.gif.Image + gif.LogicalScreenDescriptor.ScreenWidth]
|
movzx eax, [ebx + sizeof.gif.Image + gif.LogicalScreenDescriptor.ScreenWidth]
|
||||||
stdcall img._.resize_data, edx, eax
|
stdcall img.resize_data, edx, eax
|
||||||
pop edx
|
pop edx
|
||||||
test eax, eax
|
test eax, eax
|
||||||
jz .palette_nomem
|
jz .palette_nomem
|
||||||
@ -989,7 +989,7 @@ proc img.decode.gif._.superimpose ;/////////////////////////////////////////////
|
|||||||
movzx eax, [ebx + gif.Header.lsd.ScreenHeight]
|
movzx eax, [ebx + gif.Header.lsd.ScreenHeight]
|
||||||
push eax
|
push eax
|
||||||
movzx eax, [ebx + gif.Header.lsd.ScreenWidth]
|
movzx eax, [ebx + gif.Header.lsd.ScreenWidth]
|
||||||
stdcall img._.resize_data, edx, eax
|
stdcall img.resize_data, edx, eax
|
||||||
pop edx
|
pop edx
|
||||||
test eax, eax
|
test eax, eax
|
||||||
jz .convrgb_nomem
|
jz .convrgb_nomem
|
||||||
@ -1092,7 +1092,7 @@ proc img.decode.gif._.superimpose ;/////////////////////////////////////////////
|
|||||||
movzx eax, [ebx + gif.Header.lsd.ScreenHeight]
|
movzx eax, [ebx + gif.Header.lsd.ScreenHeight]
|
||||||
push eax
|
push eax
|
||||||
movzx eax, [ebx + gif.Header.lsd.ScreenWidth]
|
movzx eax, [ebx + gif.Header.lsd.ScreenWidth]
|
||||||
stdcall img._.resize_data, edx, eax
|
stdcall img.resize_data, edx, eax
|
||||||
pop edx
|
pop edx
|
||||||
test eax, eax
|
test eax, eax
|
||||||
jz .rgb_nomem
|
jz .rgb_nomem
|
||||||
|
@ -852,7 +852,7 @@ proc img.create _width, _height, _type ;////////////////////////////////////////
|
|||||||
|
|
||||||
push eax
|
push eax
|
||||||
|
|
||||||
stdcall img._.resize_data, eax, [_width], [_height]
|
stdcall img.resize_data, eax, [_width], [_height]
|
||||||
or eax, eax
|
or eax, eax
|
||||||
jz .error.2
|
jz .error.2
|
||||||
|
|
||||||
@ -2557,13 +2557,17 @@ proc img._.delete _img ;////////////////////////////////////////////////////////
|
|||||||
endp
|
endp
|
||||||
|
|
||||||
;;================================================================================================;;
|
;;================================================================================================;;
|
||||||
proc img._.resize_data _img, _width, _height ;////////////////////////////////////////////////////;;
|
proc img.resize_data _img, _width, _height ;//////////////////////////////////////////////////////;;
|
||||||
;;------------------------------------------------------------------------------------------------;;
|
;;------------------------------------------------------------------------------------------------;;
|
||||||
;? --- TBD --- ;;
|
;? Resize data block of image. New size is calculated from _width and _height params and internal ;;
|
||||||
|
;? Image.Type value. All the internal fields are updated iff succeeded. ;;
|
||||||
|
;? This function does not scale images, use img.scale if you need to. ;;
|
||||||
;;------------------------------------------------------------------------------------------------;;
|
;;------------------------------------------------------------------------------------------------;;
|
||||||
;> --- TBD --- ;;
|
;> _img = pointer to image ;;
|
||||||
|
;> _width = new width ;;
|
||||||
|
;> _height = new height ;;
|
||||||
;;------------------------------------------------------------------------------------------------;;
|
;;------------------------------------------------------------------------------------------------;;
|
||||||
;< --- TBD --- ;;
|
;< eax = 0 (fail) / pointer to the new pixels data ;;
|
||||||
;;================================================================================================;;
|
;;================================================================================================;;
|
||||||
push ebx esi
|
push ebx esi
|
||||||
mov ebx, [_img]
|
mov ebx, [_img]
|
||||||
@ -2819,6 +2823,7 @@ export \
|
|||||||
img.get_scaled_size, 'img_get_scaled_size', \
|
img.get_scaled_size, 'img_get_scaled_size', \
|
||||||
img.convert , 'img_convert' , \
|
img.convert , 'img_convert' , \
|
||||||
img.blend , 'img_blend' , \
|
img.blend , 'img_blend' , \
|
||||||
|
img.resize_data , 'img_resize_data' , \
|
||||||
img.formats_table , 'img_formats_table'
|
img.formats_table , 'img_formats_table'
|
||||||
|
|
||||||
; import from deflate unpacker
|
; import from deflate unpacker
|
||||||
|
Loading…
Reference in New Issue
Block a user