11 Stimmen

Kann man ein XAML DrawingImage wieder in ein SVG konvertieren, um es zu bearbeiten?

Eine Designfirma hat vor 2 Jahren eine Anwendung in WPF entworfen, und jetzt wollen wir den Text auf einem der Bilder ändern. Es wurden keine SVG-Dateien zur Verfügung gestellt, sondern nur der verwendete XAML-Code, und der Entwickler, der in der Designfirma an dem Projekt gearbeitet hat, arbeitet dort nicht mehr. Ich weiß, dass er Expression Blend für das Design verwendet hat.

Jede Hilfe bei Möglichkeiten zur Konvertierung von XAML in SVG helfen würde, oder auch Vorschläge zu welche Tools zur Erstellung dieser XAML verwendet wurden. Ich sah dieses Thema zur Konvertierung von XAML in SVG, aber es sah so aus, als ob die Tools nur SVGs konvertieren konnten, die ursprünglich mit ihrem Tool konvertiert wurden.

Ein Ressourcendictionary enthält alle DrawingImage-Objekte, die zur Anzeige von Bildern in der Anwendung verwendet werden. Hier sehen Sie eines der Bilder, die wir bearbeiten wollen:

<DrawingImage x:Key="MotorControlBackground">
<DrawingImage.Drawing>
  <DrawingGroup>
    <DrawingGroup.Children>
      <GeometryDrawing Brush="#FF466280" Geometry="F1 M -1138.47,3547.06C -1128.45,3557.08 -1112.14,3557.17 -1102.23,3547.25L -1024.29,3469.32L -1118.83,3374.78L -1214.79,3470.74L -1138.47,3547.06 Z ">
        <GeometryDrawing.Pen>
          <Pen Thickness="2.5" MiterLimit="2.75" Brush="#FF212121"/>
        </GeometryDrawing.Pen>
      </GeometryDrawing>
      <GeometryDrawing Brush="#FFFFFFFF" Geometry="F1 M -1131.22,3533.84L -1138.68,3533.84L -1138.68,3532.34L -1135.91,3532.34L -1135.91,3521.89L -1138.68,3521.89L -1138.68,3520.4C -1137.64,3520.4 -1136.87,3520.25 -1136.38,3519.95C -1135.88,3519.65 -1135.6,3519.09 -1135.54,3518.26L -1133.99,3518.26L -1133.99,3532.34L -1131.22,3532.34L -1131.22,3533.84 Z "/>
      <!-- ... Heavily shortened. Expect around 100 more lines here ... -->
      <GeometryDrawing Geometry="F1 M -1175.94,3268.96L -1057.64,3475.82">
        <GeometryDrawing.Pen>
          <Pen Thickness="1.33333" MiterLimit="2.75" Brush="#88C7C7C7"/>
        </GeometryDrawing.Pen>
      </GeometryDrawing>
      <GeometryDrawing Geometry="F1 M -1086.99,3255.92L -1147.5,3485.59">
        <GeometryDrawing.Pen>
          <Pen Thickness="1.33333" MiterLimit="2.75" Brush="#88C7C7C7"/>
        </GeometryDrawing.Pen>
      </GeometryDrawing>
      <GeometryDrawing Brush="#FF0C407C" Geometry="F1 M -1025.41,3324.46C -1035.45,3304.48 -1051.7,3288.14 -1071.58,3278.06C -1085.54,3270.98 -1101.28,3266.99 -1117.91,3266.99C -1131.79,3266.99 -1145.06,3269.78 -1157.2,3274.82C -1182.66,3285.41 -1203.09,3305.94 -1213.63,3331.52C -1218.64,3343.71 -1221.42,3357.05 -1221.42,3371C -1221.42,3385.48 -1218.44,3399.29 -1213.06,3411.83C -1202.56,3436.34 -1182.94,3456.06 -1158.55,3466.61C -1146.05,3472.01 -1132.31,3475.02 -1117.91,3475.02C -1103.67,3475.02 -1090.09,3472.09 -1077.72,3466.81C -1052.97,3456.24 -1033.07,3436.25 -1022.56,3411.38C -1017.3,3398.95 -1014.39,3385.3 -1014.39,3371C -1014.39,3354.3 -1018.37,3338.48 -1025.41,3324.46 Z "/>
      <!-- ... shortened some more ... -->
      <GeometryDrawing Geometry="F1 M -1021.98,3324.73C -1021.98,3355.74 -1069.88,3368.43 -1117.29,3372.09C -1117.75,3372.13 -1120.57,3372.05 -1120.57,3372.05C -1167.81,3368.32 -1215.32,3355.62 -1215.32,3324.73C -1215.32,3286.57 -1170.4,3255.35 -1115.48,3255.35L -1121.82,3255.35C -1066.92,3255.35 -1021.98,3286.57 -1021.98,3324.73 Z ">
        <GeometryDrawing.Brush>
          <LinearGradientBrush StartPoint="0.548505,0.143509" EndPoint="0.548505,0.805904">
            <LinearGradientBrush.GradientStops>
              <GradientStop Color="#7FFFFFFF" Offset="0"/>
              <GradientStop Color="#00FFFFFF" Offset="1"/>
            </LinearGradientBrush.GradientStops>
          </LinearGradientBrush>
        </GeometryDrawing.Brush>
      </GeometryDrawing>
    </DrawingGroup.Children>
  </DrawingGroup>
</DrawingImage.Drawing>
</DrawingImage>

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X