This is a Flex project. It should run both in the browser and as a stand-alone application.
The goal is to make a slide show, showing images and text in predefined locations on the screen. When new images and text are loaded, the old ones need to fade out, while the new ones fade in.
There can be several images and texts on one slide.
Images can be big, so I think it’s best if they’re loaded before the next slide.
When the XML-file contents change, the changes need to be applied (almost) real-time.
The XML-file has 2 parts, one part contains all the definitions, the other part the sources.
DEFINITIONS FOR TEXTS:
<TextElements>
<Text>
<Name>Name</Name>
<hPos>20</hPos>
<vPos>200</vPos>
<Color>#00FF00</Color>
<Font>Arial</Font>
<FontSize>64</FontSize>
<FontWeight>True</FontWeight>
<FontItalic>False</FontItalic>
<FontUnderline>False</FontUnderline>
<Outline>center</Outline>
<Width>200</Width>
<Height>20</Height>
<Fit>
<!–
Original (default) = original text dimensions (Fontsize property)
Loopback = text with original Fontsize on multiple lines (i.e. textbox)
Fill = text resizes to Width & Height properties
Height = text is rescaled to Height property, with original aspect ratio
Width = text is rescaled to fit Width property, with original aspect ratio
–>
Original
</Fit>
</Text>
<Text>
<Name>Description</Name>
<hPos>20</hPos>
<vPos>200</vPos>
<Color>#00FF00</Color>
<Font>Arial</Font>
<FontSize>64</FontSize>
<FontWeight>True</FontWeight>
<FontItalic>False</FontItalic>
<FontUnderline>False</FontUnderline>
<Outline>center</Outline>
<Width>200</Width>
<Height>20</Height>
<Fit>
Original
</Fit>
</Text>
…
</TextElements>
DEFINITIONS FOR IMAGES:
<ImageElements>
<Image>
<Name>Image1</Name>
<hPos>200</hPos>
<vPos>200</vPos>
<Width>640</Width>
<Height>480</Height>
<Fit>
<!–
Fill = image resizes to Width & Height properties
Original = original image dimensions
Height = image is rescaled to Height property (original aspect ratio)
Width = image is rescaled to Width property (original aspect ratio)
–>
Original
</Fit>
</Image>
</ImageElements>
DEFINITIONS OF SLIDESHOW:
<SlideProperties>
<Interval>
<!–Time in milliseconds between slides
–>
3000
</Interval>
<Effect>
<!–Effect when changing Text & Image elements
–>
<Type>
<!–None/Fade
–>
Fade
</Type>
<Speed>
<!–Effect speed in milliseconds
–>
500
</Speed>
</Effect>
</SlideProperties>
The final part, contains the data to load on each slide:
<Slideshow>
<Slide>
<ImageElements>
<Image1>first_image.jpg</Image1>
</ImageElements>
<TextElements>
<Name>Name of first image</Name>
<Description>Description of first image</Description>
…
</TextElements>
</Slide>
<Slide>
<ImageElements>
<Image1>second_image.jpg</Image1>
</ImageElements>
<TextElements>
<Name>Name of second image</Name>
<Description>Description of second image</Description>
…
</TextElements>
</Slide>
</SlideShow>
Don’t hesitate to contact me for more information!
Kind regards,
Bart