Let's create a new stack and let's put a button to ask for the file of the image we want. Livecode can import the following formats as images: GIF, JPEG, PNG, BMP, XWD, XBM, XPM, PBM, PGM, PPM, PICT, EPS.
To avoid overloading the code I limit myself to the most common formats, so the button code will be:
on mouseUp
if there is an image 1 then
delete the last image
end if
answer file "Select imaage, please:"
put it into temp
set itemdel to "."
if the last item of tolower(temp) is not among the items of "jpg.gif.png.jpeg.bmp" then
answer "That file is not a supported format."
exit MouseUp
end if
import paint from file temp
set the top of the last image to 75
set the resizeQuality of last image to "best"
set the inw of the last image to the width of the last image
set the inh of the last image to the height of the last image
set the intl of the last image to the topleft of the last image
end mouseUp
- we delete a possible image already present
- we ask for the location of the file
- we check that the file extension is one of those we like
- we import the image, this operation creates a new image
- we move it so that it does not cover the button
- we set the quality for image editing on best (best)
- we save the initial width, height and position
Scrollbar code is:
on scrollbarDrag newPosition
put the inw of the last image into iniW
put the inH of the last image into iniH
put the inTl of the last image into iniTl
set the width of the last image to round(iniW * newPosition / 100)
set the height of the last image to round(iniH * newPosition / 100)
set the topleft of the last image to iniTl
end scrollbarDrag
As you can see, original data are saved, so we can't lose image details.
Now let's see save button code:
on mouseUp
ask file "New file name:"
export last image to file it as JPEG
end mouseUp
The export command supports: PBM, JPEG, GIF, BMP, PNG .
Now you can enjoy with this program