deleting every other line in an image
Josh Mellicker
josh at dvcreators.net
Wed Nov 14 01:27:08 EST 2007
Hi Mark,
Your script works perfectly! You are a genius!!!
Thanks!!!!!
On Nov 13, 2007, at 7:21 PM, Mark Smith wrote:
> Josh, does this do what you want?
>
> on stripAltLines pImg
> put the imagedata of img pImg into tData
> put the width of img pImg * 4 into bytesPerLine
> put the height of img pImg into numLines
>
> repeat with n = 2 to numLines step 2
> put char (((n -1) * bytesPerLine) + 1) to (n * bytesPerLine)
> of tData into tLine
> put tLine & tLine after newData
> end repeat
>
> set the imagedata of img pImg to newData
> end stripAltLines
>
> Best,
>
> Mark
>
> On 13 Nov 2007, at 18:31, Josh Mellicker wrote:
>
>> Hello Bernd,
>>
>> I tried and tried but could not get the script to work.
>>
>> It produces an image with half the content widthwise, and I am
>> still trying to get it to copy every other complete line...
>>
>> Here is a typical source image:
>>
>> http://revcoders.org/resources/temp.png
>>
>> You can see the obvious interlacing, as the dolphin was saying
>> "yes" to the question "would you like a fish?"
>>
>> I am attempting to copy every other line to a new image, then set
>> the width to half as well so the picture maintains its aspect ratio.
>>
>> Does your script work with that image?
>>
>> Thanks!
>>
>>
>> On Nov 12, 2007, at 3:34 PM, BNig wrote:
>>
>>>
>>> Hi Josh,
>>>
>>> make a stack with 2 images, call them "P1" and "P2"
>>> load a picture in the inspector into image "p1"
>>> set the width and height to 140 in the inspector
>>>
>>> make a new button
>>>
>>> paste this script into the button
>>>
>>> on mouseUp
>>> put the width of image "P1" into theImagWidth
>>> put the height of image "P1" into theImageHeight
>>> put the imagedata of image "P1" into theDataToWorkon
>>> if theDataToWorkon = "" then exit mouseUp
>>> put length (theDataToWorkon) into HowLong
>>> put empty into destImageData
>>>
>>> -- one Pixel = 4 Bytes = 4 chars
>>> put theImagWidth * 4 into OneRowOfImage
>>> put theImageHeight into soManyPixelRows
>>>
>>> put 0 into theCounter
>>> repeat with i = 1 to (HowLong - OneRowOfImage) step
>>> (OneRowOfImage*2)
>>> put char i to (i + OneRowOfImage-1) of theDataToWorkon
>>> after
>>> destImageData
>>> end repeat
>>>
>>> set the width of image "P2" to theImagWidth
>>> -- watch out for images with uneven heigths
>>> set the height of image "P2" to (theImageHeight/2)
>>> set the imagedata of image "P2" to destImageData
>>> end mouseUp
>>>
>>> this should give you in "P2" an image half the height of P1 with
>>> every
>>> second line of the original image.
>>>
>>> it works for me, attention, almost no error checking in here,
>>> it is important to have the width and height correct otherwise
>>> the image
>>> will be distorted
>>>
>>> just curious: why do you want to eliminate every second line of
>>> an image?
>>>
>>> hth
>>>
>>> Bernd
>>>
>>>
>>>
>>> Josh Mellicker wrote:
>>>>
>>>> Here's one for the image processing gurus out there:
>>>>
>>>> How difficult is it to take an image, and create a new image
>>>> containing every OTHER line from it (e.g., just the odd lines)
>>>> so the
>>>> resulting picture is half the height?
>>>>
>>>> Once you knew the width of the image, isn't it just a loop that
>>>> copies tWidth pixels, then skips the next tWidth, and so on?
>>>>
>>>> Thanks!
>>>> _______________________________________________
>>>> use-revolution mailing list
>>>> use-revolution at lists.runrev.com
>>>> Please visit this url to subscribe, unsubscribe and manage your
>>>> subscription preferences:
>>>> http://lists.runrev.com/mailman/listinfo/use-revolution
>>>>
>>>>
>>>
>>> --
>>> View this message in context: http://www.nabble.com/deleting-
>>> every-other-line-in-an-image-tf4793676.html#a13716667
>>> Sent from the Revolution - User mailing list archive at Nabble.com.
>>>
>>> _______________________________________________
>>> use-revolution mailing list
>>> use-revolution at lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your
>>> subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-revolution
>>
>> _______________________________________________
>> use-revolution mailing list
>> use-revolution at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your
>> subscription preferences:
>> http://lists.runrev.com/mailman/listinfo/use-revolution
>
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
More information about the use-livecode
mailing list