Fun with the templateimage
Bob Sneidar
bobsneidar at iotecdigital.com
Thu Oct 31 15:03:58 EDT 2019
OK New version with error checking, and also addresses the issue where Klaus could not compile:
on exportScaledImage pSourceFile, pDestFile, pScaleFactor, pFormat
-- Validate parameters
-- pSourceFile
if not there is a file pSourceFile then \
answer error "Source file does not exist!" as sheet ; exit exportScaledImage
set the itemDelimiter to "/"
-- pDestFile
if not there is a folder (item 1 to -2 of pDestFile) then \
answer error "Destination folder does not exist!" as sheet ; exit exportScaledImage
-- pScaleFactor
if not (pScaleFactor is a number) or not(pScaleFactor <1) then \
answer error "Scale factor must be a percentage > 0!" as sheet ; exit exportScaledImage
-- pFormat
if not (pFormat is among the items of "JPEG/BMP/PNG") then \
answer error "Valid formats are: JPEG, BMP or PNG." as sheet ; exit exportScaledImage
-- set the source file as the template image and get dimensions
set the filename of the templateimage to pSourceFile
put the formattedwidth of the templateimage into tFW
put the formattedheight of the templateimage into tFH
-- scale the image to a round value
set the width of the templateimage to round(tFW * (pScaleFactor /100))
set the height of the templateimage to round(tFH * (pScaleFactor /100))
-- convert file
switch pFormat
case "JPEG"
put "export the templateimage to file " & quote & pDestFile & quote & " as JPEG" into tCommand
break
case "BMP"
put "export the templateimage to file " & quote & pDestFile & quote & " as BMP" into tCommand
break
case "PNG"
export the templateimage to file (pDestFile) as PNG
put "export the templateimage to file " & quote & pDestFile & quote & " as PNG" into tCommand
break
end switch
do tCommand
-- reset
reset the templateimage
end exportScaledImage
> On Oct 31, 2019, at 08:00 , Bob Sneidar <bobsneidar at iotecdigital.com> wrote:
>
> Or better yet: -- No error checking, assumes parameters are correct. Also not tested. :-)
>
> on exportScaledImage pSourceFile, pDestFile, pScaleFactor, pFormat
> ## My good ol' banana, older users of MC might remember that one :-D
> set the filename of the templateimage to pSourceFile
>
> ## This was a know (to me) feature
> put the formattedwidth of the templateimage into tFW
> put the formattedheight of the templateimage into tFH
> ## Now you can apply some "rule of three" to scale the image while preserving its ratio
> ## I'll leave that up to you... :-)
>
> ## I cheated a bit:
> set the width of the templateimage to round(tFW * (pScaleFactor /100))
> set the height of the templateimage to round(tFH * (pScaleFactor /100))
>
> ## But this one really suprised me:
> switch pFormat
> case "JPEG"
> export the templateimage to file (pDestFile) as JPEG
> break
> case "BMP"
> export the templateimage to file (pDestFile) as BMP
> break
> case "PNG"
> export the templateimage to file (pDestFile) as PNG
> break
> end switch
>
> reset the templateimage
> end exportScaledImage
>
>
>> On Oct 30, 2019, at 13:13 , Klaus major-k via use-livecode <use-livecode at lists.runrev.com> wrote:
>>
>> Hi all,
>>
>> we know that "the templatexxxxxx" is a very helpful thingie.
>>
>> But I was really surprised that we can even EXPORT something
>> from the templateimage until I tried this:
> <snip>
More information about the use-livecode
mailing list