New to Get a Copy of Scaled Down Version of an Image
J. Landman Gay
jacque at hyperactivesw.com
Wed Oct 28 11:37:51 EDT 2020
Try changing this line:
put tImageData["image"] into image "currentpuzzle"
to this:
set the imageData of image "currentpuzzle" to tImageData["image"]
--
Jacqueline Landman Gay | jacque at hyperactivesw.com
HyperActive Software | http://www.hyperactivesw.com
On October 28, 2020 6:06:39 AM Sannyasin Brahmanathaswami via use-livecode
<use-livecode at lists.runrev.com> wrote:
> Take for example
>
> [command] resizeToWidth tImage, 400
>
> on resizeToWidth pImage,pSize
> local tOrigImgWidth, tOrigImgHeight, tRatio, tNewWidth, tNewHeight
> set the itemdel to "x"
> put item 1 of sCurrentGraphicRect into tOrigImgWidth
> put item 2 of sCurrentGraphicRect into tOrigImgHeight
>
> if tOrigImgWidth is 0 then exit resizeToWidth
>
> put pSize/tOrigImgWidth into tRatio
> put (tOrigImgHeight * tRatio) into tNewHeight
> put (tOrigImgWidth * tRatio) into tNewWidth
>
> set the rect of pImage to 0,0,tNewWidth,tNewHeight
>
> end resizeToWidth
>
> How do I get a copy, with the image scaled down, which is visible on screen?
>
> [coded]
> if (the width of tImage > the heigth of tImage ) then
> # portrait
> resizeToWidth tImage, 400
> else
> # landscape
> resizeToHeigth tImage, 400
> end if
>
> # now we set the img to the img "currentpuzzle"
> set the name of the last image to "currentpuzzle"
>
> # and copy the data, at 400px wide
> put the rect of the last image into tImageData["rect"]
> put the imageData of the last image into tImageData["image"]
>
> put tImageData["image"] into image "currentpuzzle"
>
>
> BUT the full scaled copy of the image "currentpuzzle" comes into view. I
> wanted to get a scaled down version?
>
> How do we implement this, from the dictionary
>
>
> The imageData, unlike the contents of the image<lcs,image,>
> container<lcs,container,>, is based on the picture as it's presented on the
> screen, not stored in the image<lcs,image,> object<lcs,object,glossary>.
> This means that if you resize an image<lcs,image,>, the content of the
> image<lcs,image,> does not change, but its imageData does. If you create an
> image<lcs,image,> and then reduce its size, its imageData reflects the
> scaled-down, displayed image<lcs,image,>, not the original full-scale
> image<lcs,image,>. If you create a second image<lcs,image,> and set its
> imageData property<lcs,property,> to the imageData of the original
> image<lcs,image,>, resizing the first image<lcs,image,> back to the
> original dimensions displays the original image<lcs,image,> at full
> resolution, but resizing the second image<lcs,image,> does not, because
> setting its imageData transferred only the scaled-down version of the original.
>
>
> BR
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
More information about the use-livecode
mailing list