imagesize

imagesize — Return the width and height of a previously opened or created image.

Description

Return the width and height of a previously opened or created image. An image can be loaded with imageload. An empty image can be created with imagecreate.

Syntax

iwidth, iheight imagesize iimagenum

Initialization

iimagenum -- the reference of the image.. It should be a value returned by imageload or imagecreate.

iwidth -- image width.

iheight -- image height.

Examples

Here is an example of the imagesize opcode. It uses the file imageopcodes.csd.

Example 392. Example of the imagesize opcode.

<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-n ;no sound output
</CsOptions>
<CsInstruments>

sr=48000
ksmps=1
nchnls=2

; this test .csd copies image.png into a new file 'imageout.png'

giimage1 imageload "image.png"
giimagew, giimageh imagesize giimage1
giimage2 imagecreate giimagew,giimageh

    instr 1

kndx = 0
kx_ linseg 0, p3, 1
;print imagewidth and imageheigth of image.png
prints "imagewidth = %f pixels, imageheigth = %f pixels\\n", giimagew, giimageh

myloop:
ky_ = kndx/(giimageh)
kr_, kg_, kb_ imagegetpixel giimage1, kx_, ky_
imagesetpixel giimage2, kx_, ky_, kr_, kg_, kb_
loop_lt kndx, 0.5, giimageh, myloop
    endin

    instr 2

imagesave giimage2, "imageout.png"
    endin

    instr 3
imagefree giimage1
imagefree giimage2
    endin

</CsInstruments>
<CsScore>

i1 1 1
i2 2 1
i3 3 1
e

</CsScore>
</CsoundSynthesizer>


Its output should include a line like this:

imagewidth = 180.000000 pixels, imageheigth = 135.000000 pixels
      

See Also

imageload, imagecreate, imagesave, imagegetpixel, imagesetpixel, imagefree

Credits

Author: Cesare Marilungo

New in version 5.08