2012-05-25 6 views
5

ich auf einem Windows 8 Metro-Anwendung mit XAML gerade arbeitete und C#Anzeige svg in Metro-App mit C# und XAML

ich Uri zu einem SVG Bild bekommen habe, die wirklich funktioniert, aber ich habe keine Ahnung, wie um dieses Bild zu erhalten und es im XAML anzuzeigen.

Oder ist es unmöglich, mit SVG in .NET Core zu arbeiten?

+0

Wie wäre es mit dem Laden in ein Webview, wo Sie eine verwenden können Element im HTML mit dem Attribut src auf SVG gesetzt? Wenn es in Ihrem Paket ist, sollten Sie ms-appx-web: /// verwenden können, um darauf zu verweisen. –

Antwort

1

Oder ist es unmöglich, mit SVG in .NET-Core zu arbeiten?

Das .NET-Metro-Profil ist nicht das .NET 4.5-Vollprofil oder sogar das .NET-Client-Profil. Eine der Anforderungen oder Einschränkungen der Metro-Anwendung besteht darin, dass keine Verknüpfung mit Inhalten möglich ist, die nicht mit Metro Profile kompiliert wurden.

Ich schlage vor, dass Sie stattdessen WPF verwenden.

+0

Ich denke, Sie können sich irren. Das .NETCore-Profil * ist * das sogenannte Metro-Profil. Das .NET 4.5 Full Profile ist genau das - ein vollständiger Satz von .NET-Bibliotheken, die auf der Windows-Desktop-Plattform verfügbar sind. Es ist nur eine unglückliche Benennung von Microsoft. (Siehe: Suche nach dem Wort .NETCore in http://blog.stephencleary.com/2012/05/framework-profiles-in-net.html – Krishna

+0

@Krishna - Ich irre mich nicht. Sie können nicht das volle .NET Framework targeting und veröffentlichen Sie eine Anwendung im Windows Store –

+1

Korrekt Sie können nicht die vollständige .NET-fx und veröffentlichen Sie in den Windows-Store.Aber ich bezog sich auf die andere Aussage: das vollständige Profil heißt nicht ".NETCore". ".NETCore" ist das Profil, das Sie verwenden, um Windows-Store-Anwendungen zu erstellen. – Krishna

3

Eine Möglichkeit besteht darin, die SVG in XAML-Pfade zu konvertieren, die Sie in jeder XAML-Ansicht/Steuerung anzeigen können. Ich verwende diesen Ansatz, um Vektor-Icons in meiner App zu zeigen. Suchen Sie schnell nach SVG (http://benpittoors.wordpress.com/2009/03/17/convert-svg-to-xaml/)

+0

Great Post! Leider konnte ich es nur unter IE10 laufen lassen. In Opera XPS Drucker ausgegeben jpgs – SOReader

+0

Eine andere gute Möglichkeit, von SVG zu XAML zu konvertieren ist Inkscape.Allerdings gibt es Einschränkungen, wie Metro-App kann nicht RadialGradientBrush verwenden. –

+0

Es ist viel schneller, diese App zu verwenden: https://github.com/BerndK/SvgToXaml Es kann einzelne Dateien konvertieren und auch alle svgs in einem Ordner (Batch) – BerndK