C#WPF SVGファイル参照(SharpVectors)

アリババベクトルのアイコンライブラリはSVGアイコンの数を提供しています:https://www.iconfont.cn/

しかし、WPF自体SVGファイル形式がサポートされていません。

方法の一つ:コピーSVGをして、複数のパスの間でスペースで区切られたパスのパスを、テキストアウト抽出:画像の色が必要とされていない場合は、画像をダウンロードするように選択することができます。このメソッドは、画像の前景と背景の色を調整することができます。

SVG元のテキスト:

<SVG T = " 1572520948109 "  クラス = " アイコン"ビューボックス= " 0 0 1024 1024 "バージョン= " 1.1 "のxmlns = " http://www.w3.org/2000/svg " P-ID = " 6553 "幅= " 200 "高さ= " 200 " > <経路D = "M651.424 217.066667a32 32 0 0 1 62.485333 13.866666L682.261333 373.333333H800a32 32 0 0 1 31.946667 30.122667L832 405.333333a32 32 0 0 1-32 32H668.032l-33.184 149.333334H800a32 32 0 0 1 31.946667 30.122666L832 618.666667a32 32 0 0 1-32 32H620.629333l-34.72 156.266666a32 32 0 0 1から36.341333 24.661334リットル-1.845333-0.352a32 32 0 0 1-24.298667-38.186667L555.061333 650.666667H407.296l-34.72 156.288a32 32 0 0 1から36.341333 24.64リットル-1.845334-0.341334a32 32 0 0 1-24.298666-38.186666L341.728 650.666667 224 650.666667a32 32 0 0 1-31.946667-30.122667L192 618.666667a32 32 0 0 1 32-32h131.957333l33.184-149.333334H224a32 32 0 0 1- 31.946667-30.122666L192 405.333333a32 32 0 0 1 32-32h179.36l34.730667-156.266666a32 32 0 0 1 36.341333-24.661334l1.845333 0.352a32 32 0 0 1 24.298667 38.186667リットル-31.648 142.378667h147.765333zM602.474667 437.333333H454。 698667リットル-33.184 149。333334h147.776l33.184-149.333334z" P-ID = " 6554 " > </ SVG>> </パス

XAMLコード:

  <パスの幅= " 100 "高さ= " 100 "ストレッチ= " 制服"データ= "M856.34479531 833.26631065a42.58114365 42.58114365 0 0 40.27053867〜48.19261201リットル-16.1742331-88.13306426A80.87116377 80.87116377 0 0 805.18140547 632.57378926h-193.76070732リットル-15.84414581-99.02591543a236.01176455 236.01176455 0 0 148.20878584から221.81804912 240.96306006 240.96306006 0 1 0-481.59603369 0 236.34185098 236.34185098 0 0 148.53887226 220.49770341リットル-11.88310956 99.02591544H206.07461914a77.57030039 77.57030039 0 0 0から76.24995469 64.36684511L113.65043222 783.75335293a37.95993369 37.95993369 0 0 36.30950156 48.19261201z M161.51295781 862.97408457h693.18140537a49.51295771 49.51295771 0 0 1 49.51295772 49.51295772 49.51295771 49.51295771 0 0 1から49.51295772 49.51295771h-693.18140537A49.51295771 49.51295771 0 0 1 112.0000001 912.48704229 49.51295771 49.51295771 0 0 1 161.51295781 862.97408457z M664.89469297 277.0707544メートル-33.00863906 0a33。00863818 33.00863818 0 1 0 0 66.01727724 33.00863818 33.00863818 0 1 0から66.01727724 0Z M527.57875654 144.37602793a177.91656065 177.91656065 0 0 1 56.11468536 28.71751553 165.0431918 165.0431918 0 0 1 33.00863906 47.86252558 25.08656484 25.08656484 0 0 44.2315749から23.10604716 221.81805 221.81805 0 0 0から46.21209346 -62.05624014A216.20658164 216.20658164 0 0 0 542.43264394 97.50376162a24.7894875 24.7894875 0 0 0から16.17423222 46.87226631z87226631z87226631z" />
      

オプション2:nuget sharpvectorsインストールパッケージ:

インストール・パッケージSharpVectors -Version 1.0.0

デバッグ時に少し回り道をして、後でこのQ&Aを見た:http://www.jiajianhudong.com/question/778215.htmlを  。

1.ソース=:一言で言えば、二つのことに注意を払うように「パック://アプリケーション:,,, / 1.svg」この方法を適切なリソースを呼び出すために、SVGファイルを呼び出すために。

                             2. SVGファイルのデフォルトの属性は、コンテンツである、リソースを必ずお読みください、そしてプロジェクトを再構築し、実行してください。

<ウィンドウX:クラス= " WpfStudy.Wnd1 " 
        のxmlns = " http://schemas.microsoft.com/winfx/2006/xaml/presentation " 
        のxmlns:X = " http://schemas.microsoft.com/winfx/2006 / XAML " 
        のxmlns:D = " http://schemas.microsoft.com/expression/blend/2008 " 
        のxmlns:MC = " http://schemas.openxmlformats.org/markup-compatibility/2006 " 
        のxmlns:ローカル = " CLR名前空間:WpfStudy " 
        MC:無視可能 = " D "
         xmlns:svgc = " http://sharpvectors.codeplex.com/svgc/ " 
        タイトル = " Wnd1 "高さ= " 450 "幅= " 800 " > 
    <グリッド> 
        <StackPanelの> 
            <ボタンの幅= " 100 "高さ= " 100 " > 
                <svgc:SvgViewbox IsHitTestVisible = " "   ソース= " パック://アプリケーション:,,, / 1.svg " /> 
    </グリッド>
            </ボタン>
          </ StackPanelの> 
</ウィンドウ]>

 

おすすめ

転載: www.cnblogs.com/aitong/p/11773270.html