Warum werden einige SVG-Filter beim Erstellen einer SVG in Adobe Illustrator automatisch in PNG konvertiert?

Ich habe mich gefragt, warum einige der in Illustrator gefundenen SVG-Filter automatisch konvertiert werden, PNGwenn ich die gesamte Datei in SVG. PNGIch möchte wegen der Skalierbarkeit keine versteckten Dateien.

Anders ausgedrückt:

Warum werden einige der von mir erstellten Effekte gerastert, obwohl ich in einer Vektoranwendung mit einem Vektordateiformat arbeite?

Stellen Sie sicher, dass die fraglichen Objekte SVG-Effekte haben, die zuletzt im Darstellungsbereich angezeigt werden. Es sollten keine weiteren Effekte folgen.
Danke für den Kommentar. Ich habe es versucht, aber immer noch das gleiche Problem. Das einzige, was ich unter dem Effekt habe, den ich verwenden möchte (im Aussehen-Bedienfeld), ist seine Deckkraft, die anscheinend nicht verschoben werden kann: /
Ist diese Kunst zu 100 % Vektor? Keine Texturen oder platzierten Dateien und nur die einzelne Opazität angewendet?
Ja, 100 % Vektor. Es hat viele Ebenen, aber nichts aus anderen Dateien. Der SVG-Effekt, den ich verwende, ist "GaussianBlur4". Das Element (ein Kreis) mit diesem Effekt wird zu einer .png, wenn die gesamte Datei in .svg exportiert wird:/ Also, was ich bekomme, ist eine .svg-Datei mit einer versteckten .png darin. Nochmals vielen Dank für die Hilfe Jungs!
Eine Möglichkeit, dies zu umgehen, besteht darin, den Filter zu entfernen, das SVG anschließend mit einem Texteditor zu bearbeiten und den Filter wieder hineinzukopieren. Es ist eine Problemumgehung, aber am Ende optimiere ich auch andere Dinge, also funktioniert es.

Antworten (1)

SVGs können auf andere SVGs oder Bilder verweisen. Als ich die SVG-Ausgabe von Illustrator (Illustrator CC 17.1.0) getestet habe, führte die Anwendung von SVG AI_GaussianBlur_4 auf ein Kreisobjekt mit Verlaufsfüllung nur zu SVG-Markup in der Datei. Ich habe das noch einmal gemacht, aber dieses Mal habe ich einen Schlagschatten und dann das SVG AI_GaussianBlur_4 angewendet. Der Code enthielt ein Bild. Wenn ich 2 SVG-Filter auf das Objekt angewendet habe, enthielt das SVG ein Bild.

Darauf aufbauend würde ich sagen:

  • Wenn Ihre Datei Effekte enthält , die keine SVG-Filter sind und für die eine Rasterung erforderlich ist (Stilisieren > Schlagschatten oder einer der Photoshop-Filter), erhalten Sie am Ende ein in die Datei eingebettetes Bild.
  • Wenn in Ihrer Datei mehr als ein SVG-Filter auf ein Objekt angewendet wird, erhalten Sie am Ende ein eingebettetes Bild.

Ich würde spekulieren, dass ein oder zwei Dinge allein oder zusammen zutreffen:

  • Das von Illustrator verwendete SVG-Plug-In checkt das Bildmaterial einfach aus, übergibt es an den Rasterizer und fragt jedes Mal nach einer .png-Datei zurück, wenn mehr als ein Effekt auf einem Objekt auftritt.
  • Um das Aussehen der Grafik beizubehalten, insbesondere unter Berücksichtigung von Browservariationen, rastert Illustrator alle Objekte, die Effekte aufweisen, die nicht speziell SVG sind, oder die aufgrund der Komplexität und nicht berücksichtigter Browserunterschiede schlecht gerendert werden könnten.

Zu testen:

  1. Erstellen Sie eine neue Datei und zeichnen Sie ein einzelnes Objekt darin

  2. Stellen Sie sicher, dass das Objekt ausgewählt ist

  3. Wählen Sie Effekt > SVG-Filter… > AI_GaussianBlur_4

  4. Wählen Sie Datei > Speichern

  5. Wählen Sie SVG im Pulldown-Menü Format aus

  6. Klicken Sie auf Speichern

  7. Klicken Sie auf SVG-Code…

  8. Dadurch wird eine Textdatei mit dem SVG-Markup geöffnet. Kein eingebettetes Bild.

  9. Gehen Sie zurück zu Illustrator und verlassen Sie das Dialogfeld „Speichern“.

  10. Machen Sie AI_GaußianBlur_4 rückgängig

  11. Wählen Sie Effekt > Stilisieren > Schlagschatten…

  12. Akzeptieren Sie die Standardeinstellungen

  13. Wählen Sie Datei > Speichern

  14. Wählen Sie SVG im Pulldown-Menü Format aus

  15. Klicken Sie auf Speichern

  16. Klicken Sie auf SVG-Code…

  17. Dadurch wird eine Textdatei mit dem SVG-Markup geöffnet. Es wird ein eingebettetes Bild haben .

Ich habe verschiedene Kombinationen von Filtern und Objekten mit dieser Methode erstellt. Ich stelle fest:

  • Sowohl ein Stilisieren als auch der SVG-Filter zu einem einzigen Objekt = eingebettetes Bild
  • Zwei SVG-Filter, die auf ein einzelnes Objekt angewendet werden = eingebettetes Bild
  • Zwei SVG-Filter, einer auf Objekt A angewendet, der zweite auf Objekt B = KEIN eingebettetes Bild
  • Drei SVG-Filter, einer auf Objekt 1 und 2 auf Objekt 2 = eingebettetes Bild
Es kann auch sein, dass der Illustrator möglicherweise rastern muss, wenn sich 2 Objekte überlappen, wenn das andere Objekt nicht vollständig aufgelöst werden kann.