Vista Forums
Vista Forums Home Join Vista Forums Donate Vista Tutorials Tags

Welcome to Vista Forums we are your forum to discuss Windows Vista x64 and x86 systems. Whether you need help or just want to post an idea you have on Vista, this is the forum for you.
Register at Vista forums...the world biggest Windows Vista resource Join Vista Forums

Go Back   Vista Forums > Vista technology newsgroups > Avalon

Vector graphic image

Reply
 
Thread Tools Display Modes
Old 11-29-2007   #1
Oriane
Guest
 
Posts: n/a

Vector graphic image

Hi there,

I would like to import a vector image (which is in a database, but this is
not my point) in a WPF application. I can find function to load bitmap image
but can't see no way to import svg/emf/eps... images. Is it a limitation of
WPF ?

Regards

  Reply With Quote

Old 11-29-2007   #2
Serge Baltic
Guest
 
Posts: n/a

Re: Vector graphic image

Hello,
Quote:

> I would like to import a vector image (which is in a database, but
> this is not my point) in a WPF application. I can find function to
> load bitmap image but can't see no way to import svg/emf/eps...
> images. Is it a limitation of WPF ?
Avalon can't be aware of all the possible vector formats … You'll have to
use an utility to convert them into the vector XAML format first. After that,
they could be loaded right away as vector images.

(H) Serge


  Reply With Quote
Old 11-30-2007   #3
Oriane
Guest
 
Posts: n/a

Re: Vector graphic image

Hello Serge,
hello Srege,

"Serge Baltic" <baltic-@xxxxxx> wrote in
news:dc0986bf7a1c28ca00c7bac58ccf@xxxxxx
Quote:

> Avalon can't be aware of all the possible vector formats … You'll have to
> use an utility to convert them into the vector XAML format first. After
> that, they could be loaded right away as vector images.
I'm a newbie and you answer is quite unclear to me.
First, what does "convert into the vector XAML format" mean ? Do you mean
that Xaml code should be yield by the utility ?
Second, once this conversion has been done, how do you link the XAML code
with that converted vector image ? My goal is to use that image into for
example a hierarchical template:

<HierarchicalDataTemplate x:Key="tvTemplate" DataType="x:Type local:Element"
ItemsSource="{Binding Path=SubElements}" >
<DockPanel MouseRightButtonDown="DockPanel_MouseRightButtonDown"
Width="Auto" >
<Image x:Name="iconeTv" Source="{Binding Path=Icone}" />
<TextBlock Text="{Binding Path=Name}" />
</DockPanel>
</HierarchicalDataTemplate>

In the third line (beginning with <Image), I would like to give my vector
image as a source. I guess I have to use C# with a MemoryStream... What do
you think ?
Quote:

> (H) Serge
Thanks

  Reply With Quote
Old 11-30-2007   #4
Laurent Bugnion, MVP
Guest
 
Posts: n/a

Re: Vector graphic image

Salut Oriane,

Oriane wrote:
Quote:

> First, what does "convert into the vector XAML format" mean ? Do you
> mean that Xaml code should be yield by the utility ?
Yes. See this thread for more info:
http://forums.microsoft.com/MSDN/Sho...25491&SiteID=1

Load the image you want to convert in the corresponding tool, and try
and find a converter to XAML. The Illustrator-to-XAML converter is
supposed to be very good, but I never tried it.
Quote:

> Second, once this conversion has been done, how do you link the XAML
> code with that converted vector image ? My goal is to use that image
> into for example a hierarchical template:
>
> <HierarchicalDataTemplate x:Key="tvTemplate" DataType="x:Type
> local:Element" ItemsSource="{Binding Path=SubElements}" >
> <DockPanel MouseRightButtonDown="DockPanel_MouseRightButtonDown"
> Width="Auto" >
> <Image x:Name="iconeTv" Source="{Binding Path=Icone}" />
> <TextBlock Text="{Binding Path=Name}" />
> </DockPanel>
> </HierarchicalDataTemplate>
>
> In the third line (beginning with <Image), I would like to give my
> vector image as a source. I guess I have to use C# with a
> MemoryStream... What do you think ?
No, once your image is converted to XAML, you can simply link to it. For
example, put it into a ResourceDictionary, and link to it using a
StaticResource markup extension.

Here is a super simple example:

<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Dictionary1.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>

<Grid>
<Image Source="{StaticResource MyImage}" />
</Grid>


with (in Dictionary1.xaml)

<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<DrawingImage x:Key="MyImage">
<DrawingImage.Drawing>
<DrawingGroup>
<DrawingGroup.Children>
<GeometryDrawing Brush="#FFFF0000"
Geometry="F1 M 110.889,144.583L 87,168L
137.222,167.833L 110.889,144.583 Z ">
<GeometryDrawing.Pen>
<Pen LineJoin="Round"
Brush="#FF000000" />
</GeometryDrawing.Pen>
</GeometryDrawing>
</DrawingGroup.Children>
</DrawingGroup>
</DrawingImage.Drawing>
</DrawingImage>
</ResourceDictionary>

If you need to do this in code, you can too, but then you must use a
XamlReader to load the ResourceDictionary, then add it to the Window's
resources and then you can use the DrawingImage as if it had been added
to the XAML directly.

HTH,
Laurent
--
Laurent Bugnion [MVP ASP.NET]
Software engineering, Blog: http://www.galasoft.ch
PhotoAlbum: http://www.galasoft.ch/pictures
Support children in Calcutta: http://www.calcutta-espoir.ch
  Reply With Quote
Old 11-30-2007   #5
Oriane
Guest
 
Posts: n/a

Re: Vector graphic image

Ok then.

Thanks a lot !
  Reply With Quote
 
Reply

Thread Tools
Display Modes









Vistax64.com is an independent web site and has not been authorized,
sponsored, or otherwise approved by Microsoft Corporation.
"Windows Vista", the Start Orb, and related materials are trademarks of Microsoft Corp.
© Designer Media 2005-2008

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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48