Forums Développement Multimédia

Aller au contenu

Chemin relatif d'un bitmap

Director

12 réponses à ce sujet

#1 denisfavre

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 83 messages

Posté 25 November 2009 - 17:27 PM

Bonjour à tous,

Je travaille sur un projet Director avec un projecteur. Tant que je travaille sur mon PC, il n'y a pas de problème, ça marche. Par contre, dès que je teste la présentation sur un autre pc, il essaie d'appeler des images en utilisant un chemin absolu vers l'image localisé sur mon PC.

Ma version de Director est Director MX version 9.0. Je joins à ce message un screenshot montrant à mon avis l'origine du problème. Y a t-il un moyen de remplacer cette adresse par une adresse relative. A chaque fois que j'essaie, le programme me remet cette adresse automatiquement.

Merci par avance
Denis

#2 Leedoriden

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 4350 messages

Posté 25 November 2009 - 17:37 PM

Hello

voir le sujet sur comment organiser un projet sous Director

#3 denisfavre

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 83 messages

Posté 25 November 2009 - 18:42 PM

J'avais oublié le fichier joint. Le revoila.
Denis

#4 Leedoriden

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 4350 messages

Posté 25 November 2009 - 18:59 PM

Sinon tu as en deuxième solution, mettre les images dans un cast externe, et ouvrir ce dit cast au moment voulu pour afficher les images en question, ce qui t'évite d'avoir X fichiers image à distribuer avec le projet.

Après, reste les tests de performances, à savoir, est-ce plus rapide d'afficher un fichier image externe, qu'une image se trouvant déjà dans un cast partagé ?

#5 denisfavre

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 83 messages

Posté 25 November 2009 - 20:41 PM

Alors la seule façon de remplacer cette adresse par une adresse relative et de mettre l'image dans un cast externe. Comment est ce que je peux faire ca ?
Merci pour ton aide
Denis

#6 Leedoriden

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 4350 messages

Posté 25 November 2009 - 23:35 PM

c'était une idée

tu peux aussi utiliser the moviepath ou sprite(x).member = String(_movie.path & "dossier\img" & variable & ".jpg") pour afficher l'image en partant de la racine de l'exe

projection.exe
  |_ [ dossier ]
  |      |_ img0.jpg
  |      |_ img1.jpg
  |      |_ ...

il y a pas mal d'exemples dans les archives à ce sujet

#7 denisfavre

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 83 messages

Posté 26 November 2009 - 18:18 PM

Afficher l'image en partant de la racine du exe me paraitrait excellent !

Cela m''eviterais de mettre les images d'initialisation a la racine (ce qui ne fait pas tres propre). Comme montré dans la photo, lorsque je lance la presentation sur un autre pc que le mien, il essaie de trouver l'image à l'adresse : F:\...
Comment puis je mettre une adresse relative dans le champs "Fichier" du logiciel. L'adresse serait par exemple quelque chose comme /Pictures/xxx.jpg. Ainsi la racine serait la base du exe et je pourrais enfin solutionner ce problème.

Merci encore pour ton aide
Denis

#8 Leedoriden

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 4350 messages

Posté 27 November 2009 - 04:30 AM

Hello

en prenant par exemple, le tuto que j'avais fait en 2006
tu pourrais avoir une liste qui affiche le contenu du dossier X où se trouvent les fichiers images
en cliquant sur une ligne de cette même liste, afficher l'image en question sur la scène ...

#9 denisfavre

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 83 messages

Posté 30 November 2009 - 16:18 PM

Merci pour tous ces conseils mais je continue d'avoir le même souci. Mon code ci-dessous fonctionne pour toutes les images sauf pour l'image d'initialisation :


on V12Refresh me, tmp
 
  sprite(36).visible = false
 
  --check the machine type first, then assign the appropriate Picture path to the "image" member
 
  if the machineType = 256 then
    -- Windows uses the forward slash or backslash character to delimit the path
    set the filename of member "Image" to the moviePath& "Pictures/" & field "Reference" & ".jpg"
  else    
    -- mac uses the colon character to delimit the path
    set the filename of member "image" to the moviePath& "pictures:" & field "Reference" & ".jpg"    
  end if
 
 
  LARGEUR = 460  -- largeur maximal du cadre
  HAUTEUR = 490  -- hauteur maximal du cadre
 
  member("Image").regpoint = point(0,0)
 
  sprite(36).width = member("Image").width
  sprite(36).height = member("Image").height
 
  if( sprite(36).width > LARGEUR ) then
    A = LARGEUR * 100 / sprite(36).width
   
    sprite(36).width = sprite(36).width * A / 100
    sprite(36).height = sprite(36).height * A / 100          
  end if
 
  if( sprite(36).height > HAUTEUR ) then
    B = HAUTEUR * 100 / sprite(36).height
    sprite(36).width = sprite(36).width * B / 100
    sprite(36).height = sprite(36).height * B /100          
  end if

  sprite(36).locH = 470  -- centre x
  sprite(36).locV = 360  -- centre y
 
  sprite(36).locH = sprite(36).locH - (sprite(36).width/2)
  sprite(36).locV = sprite(36).locV - (sprite(36).height/2)
 
  updatestage
  sprite(36).visible = true
 
end
 

Sur un autre ordinateur que le mien, le programme va toujours chercher l'image sur disque F: (comme déja montré dans la photo jointe à ce post)
N'y a t-il pas un moyen simple pour donner un chemin relatif vers cette image d'initialisation plutôt qu'un chemin absolu ? Par contre si je mets l'image d'initialisation dans la racine du dossier, cela fonctionne. Je suis complètement perdu. Comment résoudre ce problème ?

Denis

#10 Leedoriden

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 4350 messages

Posté 30 November 2009 - 16:41 PM

Hello

tu pourrais écrire

member("Image").filename = the moviePath & "Pictures/" & "Reference" & ".jpg"

au lieu d'utiliser la syntaxe verbose :(

Citation

set the filename of member "Image" to the moviePath& "Pictures/" & field "Reference" & ".jpg"

du reste je ne vois pas trop à quoi correspond field dans ce cas !

#11 denisfavre

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 83 messages

Posté 30 November 2009 - 18:36 PM

Cette modification ne change rien. Le programme ne prend en compte que le champs renseigné avec le chemin F:/
J'ai beau modifié le code, la seule information qui compte est le champs Fichier renseigné dans Director
Une autre idée peut-être ?

#12 Leedoriden

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 4350 messages

Posté 30 November 2009 - 18:43 PM

Je ne comprends pas pourquoi tu t'obstines à utiliser ce champs lié vers un média

en faisant

-- ajouter le fichier dans la biliothèque / cast
member("image").filename = the moviepath & "dossier\" & "monfichier.jpg"
- afficher l'image sur la scène !
sprite(10).member = member("
image")
tu fais référence au fichier externe qui se trouve à la racine de ton projet sans lien cause à effet avec une lettre de disque dur ...

#13 denisfavre

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 83 messages

Posté 03 December 2009 - 19:04 PM

Merci Leedoriden pour ton aide ! J'ai finalement réussi à résoudre ce problème en enlevant le chemin relatif et en intégrant la photo au cast.
Ce forum est vraiment top ! Bravo :)
Denis



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP