imagesize

imagesize — Retourne la largeur et la hauteur d'une image précédemment ouverte ou créée.

Description

Retourne la largeur et la hauteur d'une image précédemment ouverte ou créée. On peut charger une image avec imageload. On peut créer un image vide avec imagecreate.

Syntaxe

iwidth, iheight imagesize iimagenum

Initialisation

iimagenum -- la référence de l'image. C'est une valeur retournée par imageload ou par imagecreate.

iwidth -- largeur de l'image.

iheight -- hauteur de l'image.

Exemples

Voici un exemple de l'opcode imagesize. Il utilise le fichier imageopcodes.csd.

Exemple 412. Exemple de l'opcode imagesize.

<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>


Sa sortie contiendra une ligne comme celle-ci :

imagewidth = 180.000000 pixels, imageheigth = 135.000000 pixels

Voir aussi

imageload, imagecreate, imagesave, imagegetpixel, imagesetpixel, imagefree

Crédits

Auteur : Cesare Marilungo

Nouveau dans la version 5.08