Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Pascal Discussion :

Des précisions sur ce qu'on peut faire


Sujet :

Flash Pascal

  1. #1
    Membre actif
    Des précisions sur ce qu'on peut faire
    Bonjour.
    Je teste en ce moment le compilateur de Paul Toth, FlashPascal, et me pose la question suivante : peut-on travailler avec les images (Bitmap et Jpeg), et peut-on créer des fichiers...
    Si Paul Toth passe par ici et qu'il peut m'éclairer, ou toute personne ayant utilisé ledit compilateur, je lui en serais reconnaissant.
    Merci

  2. #2
    Expert éminent sénior
    Hello,

    alors actuellement non

    si tu regardes le code du compilateur tu verras que j'ai fait des tests pour ajouter des bitmaps sous la forme {$BITMAP Fichier.bmp}...mais je n'ai pas eu le temps de travailler sur ce projet depuis un bon moment

    il faut savoir aussi que sous Flash, tu n'accèdes pas à l'image, celle-ci est forcément dans une Shape...du coup j'ai regardé les Shape...et là ça devient sioux

    mon idée avec FlashPascal est d'avoir avant tout un compilateur Pascal. C'est pour cela que les ARRAY et STRING sont des types Pascal sans méthode Alors qu'en fait sous Flash ce sont des objets....bien que tu puisses déclarer une "external class" pour utiliser les objets Flash correspondant à la rigueur...

    D'ailleurs je me suis amusé à recoder l'unité Flash8 sous Delphi...ce qui permet de compiler une application FlashPascal en natif Windows ^^ en virant juste les tags spécifiques {$FRAME ...}

    donc pour en revenir aux images, il y a l'encodage de l'image dans le fichier SWF a regarder d'une part, et comment remonter au niveau du langage Pascal l'objet Shape associé...sous une forme ou une autre...

    je pense que le plus cohérent serait une sorte de {$R Fichier.SWF} par similitude aux ressources Windows...avec pourquoi pas un fichier .RC spécifique à Flash permettant de décrire le contenu...reste à voir comment lier tout cela.

    L'autre point que j'aurais aimé explorer c'est le format ABCFile utilisé dans Flash 10, car cela donnerait accès aux nouvelles classes de Flash 10...mais c'est pas mal de boulot
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Membre actif
    Ok, merci pour ces précisions. J'en conclue que mon site tout en Flash Pascal va attendre...

  4. #4
    Expert éminent sénior
    il a y peut-être quelque chose à faire avec loadMovie()

    http://livedocs.adobe.com/flash/9.0_...=00001025.html

    il est facile d'ajouter la méthode à la class MovieClip dans l'unité Flash, ensuite il faut voir si elle peut être utilisée comme indiqué...mais il semblerait que oui

    c'est là d'ailleurs tout le principe de FlashPascal, la déclaration des classes de bases de Flash n'est pas au niveau du compilateur, mais uniquement au niveau du langage
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  5. #5
    Expert éminent sénior
    je confirme

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    program test;
     
    {$FRAME_WIDTH 800}
    {$FRAME_HEIGHT 600}
    {$FRAME_RATE 1}
     
    type
     MovieClip=external class
       constructor Create(Parent:MovieClip; Name:string; Depth:integer) as Parent.createEmptyMovieClip;
       function loadMovie(fileName: string): MovieClip;
       property _x:integer;
       property _y:integer;
       property _width:integer;
       property _height:integer;
       property _xscale:double;
       property _yscale:double;
     end;
     
    var
     clip : MovieClip;
    begin
      clip := MovieClip.Create(nil, 'test', 0);
      clip.loadMovie('test.jpg'); // ici l'image fait 800x600
      clip._xscale := 50;
      clip._yscale := 50;
    end.


    par contre, loadMovie ne supporte que les SWF et JPEG ... je viens de tester avec un PNG et ça fonctionne tout de même
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  6. #6
    Membre actif
    Désolé de répondre un peu tard, je ne passe pas très souvent par ici. En tout cas merci de ces précisions, je m'empresse de tester tout ceci dès que possible.

###raw>template_hook.ano_emploi###