SVG Optimalizáló

Tisztítsa meg az SVG-kódot és csökkentse a méretét a grafika megváltoztatása nélkül.

Illessze be az SVG-kódot, majd optimalizálja.

Az SVG-kód optimalizálása teljesen a böngészőjében történik. Semmi sem kerül feltöltésre a BroBroGo szervereire.

GYIK

Mit távolít el az optimalizáló?

Eltávolítja a megjegyzéseket, metaadatokat, a szerkesztő-specifikus névtereket, a felesleges szóközöket az attribútumok között, a használaton kívüli névtereket és a rövidebb egyenértékű színkódokat használja. Érintetlenül hagyja viszont a viewBox-ot, az azonosítókat (ID), a címkéket és a geometriát.

Minden SVG-t képes optimalizálni?

A normál, beágyazott SVG-kódot kezeli. A dokumentumtípus- (doctype) vagy egyéni entitás-deklarációkat tartalmazó SVG-k blokkolva vannak, mivel ezek elemzése nem biztonságos. Távolítsa el ezeket a deklarációkat, és próbálja újra.

Megváltoztatja az optimalizálás a grafika megjelenését?

Az optimalizáló elkerüli az útvonalak (path) újraírását, az azonosítók (ID) átnevezését, a viewBox eltávolítását és a koordináta-kerekítéseket. Ha az SVG megjegyzésekre vagy metaadatokra támaszkodik a tervezési munkafolyamatban, őrizze meg az eredeti fájl másolatát.

Az SVG (Scalable Vector Graphics) egy XML-alapú vektorgrafikus formátum, amely kulcsfontosságú szerepet játszik a modern webtervezésben és -fejlesztésben. Mivel az SVG-fájlok valójában szöveges kódok, gyakran tartalmaznak olyan felesleges információkat, amelyek növelik a fájlméretet, de nincsenek hatással a grafika tényleges megjelenésére. Az SVG kódjának optimalizálása közvetlenül csökkenti a weboldalak betöltési idejét, javítja a felhasználói élményt és csökkenti a hálózati adatforgalmat.

Ez az útmutató részletesen bemutatja az SVG-fájlok felépítését, a biztonságos kódoptimalizálás elveit, valamint az online SVG optimalizáló eszköz működését és szabályrendszerét.

Az SVG-fájlok szerkezete és a felesleges adatok

Az SVG-fájlok elemekből, attribútumokból és stílusokból álló fastruktúrát alkotnak. Amikor egy grafikus szoftver (például Adobe Illustrator, Inkscape vagy Figma) exportál egy SVG-t, a fájlba számos olyan metaadat és szerkesztő-specifikus kód kerül, amely kizárólag a tervezőprogram számára hasznos, a böngészők számára viszont felesleges.

Az optimalizálás során a következő elemek távolíthatók el biztonságosan a kód szerkezetéből:

  • Szerkesztői névterek és metaadatok: Az exportáló szoftverek egyedi azonosítókat és metaadat-blokkokat helyeznek el a kódban, amelyek a grafika megjelenítéséhez szükségtelenek.
  • Megjegyzések: A kódon belüli fejlesztői megjegyzések törlésével értékes bájtok takaríthatók meg.
  • Felesleges szóközök: Az attribútumok közötti extra szóközök és sorközök eltávolítása tömöríti a szöveges állományt.
  • Használaton kívüli névterek: Azok az XML-névterek, amelyekre a dokumentum nem hivatkozik.
  • Színkódok rövidítése: A színek hexadecimális kódjainak átírása a rövidebb, egyenértékű formátumra (például #ffffff helyett #fff).

Veszteségmentes optimalizálás és a grafika megőrzése

A grafikai optimalizálás során kulcsfontosságú a „veszteségmentesség”. Ez azt jelenti, hogy a fájlméret csökkentése nem járhat a vizuális megjelenés romlásával vagy a kód funkcionalitásának elvesztésével.

A biztonságos tisztítás érdekében az eszköz szigorú szabályokat követ, és érintetlenül hagyja a következő kritikus összetevőket:

  • viewBox: A koordináta-rendszert és a méretezési arányokat meghatározó attribútum megmarad, így a grafika reszponzív marad.
  • Azonosítók (ID): Az elemek egyedi azonosítói nem változnak meg és nem törlődnek, ami biztosítja, hogy a CSS-stílusok vagy JavaScript-szkriptek továbbra is hivatkozhassanak rájuk.
  • Címkék és geometria: Az objektumok geometriai tulajdonságai változatlanok maradnak.
  • Útvonalak (path) és kerekítések: Az eszköz elkerüli az útvonalak újraírását és a koordináta-pontok precíziós kerekítését, megelőzve ezzel a finom vonalak vagy görbék torzulását.

Az inline és az külső SVG közötti különbség

A webfejlesztés során az SVG-ket kétféleképpen használhatjuk: beágyazott (inline) kódként közvetlenül a HTML-ben, vagy külső fájlként az <img> tagen keresztül.

Az inline SVG-k közvetlenül a DOM (Document Object Model) részévé válnak, így CSS-sel formázhatók és JavaScript segítségével manipulálhatók. Mivel az inline SVG-k közvetlenül a HTML-dokumentum méretét növelik, az optimalizálásuk kiemelten fontos a weboldal kezdeti betöltési sebességének (First Contentful Paint) optimalizálásához.

Biztonsági megfontolások az XML-elemzés során

Az SVG egy XML-alapú formátum, ami bizonyos biztonsági kockázatokat hordoz magában, ha külső forrásból származó fájlokat dolgozunk fel. Az XML-dokumentumok tartalmazhatnak dokumentumtípus-deklarációkat (DOCTYPE) és egyéni entitásokat, amelyek sebezhetőségekhez (például XML External Entity vagy XXE támadásokhoz) vezethetnek a webes alkalmazásokban.

A biztonság garantálása érdekében ez az optimalizáló eszköz blokkolja az olyan SVG-fájlok feldolgozását, amelyek dokumentumtípus- vagy egyéni entitás-deklarációt tartalmaznak.

Adatkezelés és adatvédelem

Az SVG-kód optimalizálása teljesen a böngészőjében történik. Semmi sem kerül feltöltésre a BroBroGo szervereire. A feldolgozás helyben, a felhasználó eszközén fut le, így a kód nem hagyja el a böngészőt.

Az optimalizáló használata és hibaüzenetei

Az eszköz használatához másolja be az SVG-kódot a bemeneti mezőbe. A folyamat elindításához kattintson az Optimalizálás gombra. A felületen az alábbi statisztikai mutatók jelennek meg:

  • Eredeti: Az eredeti SVG mérete bájtokban.
  • Kimenet: Az optimalizált SVG mérete bájtokban.
  • Megtakarítás: A csökkenés mértéke bájtokban és százalékban kifejezve.

Lehetséges visszajelzések és hibaüzenetek:

  • Sikeres optimalizálás esetén a következő üzenet látható: Optimalizálva – {pct}%-kal kisebb ({saved} megtakarítva)..
  • Ha a kód már teljesen optimalizált volt: Optimalizálva. A biztonságos tisztítási beállításokkal nem sikerült csökkenteni a méretet..
  • Ha üres mezővel próbálja indítani a folyamatot: Először illessze be az SVG-kódot..
  • Ha a beillesztett szöveg nem tartalmaz SVG elemet: Nem található <svg> elem..
  • Ha a fájl biztonsági kockázatot jelentő elemet tartalmaz: Ez az SVG dokumentumtípust (doctype) vagy egyéni entitást használ. Távolítsa el az optimalizálás előtt..
  • Ha a kód mérete meghaladja a megengedett korlátot: Ez az SVG túl nagy ehhez az eszközhöz. Kérjük, tartsa {max} karakter alatt..
  • Ha a folyamat futási ideje meghaladja a 15 másodperces időkorlátot: A művelet túl sokáig tartott és leállt – próbálkozzon egy kisebb SVG-vel..
  • Általános hiba esetén: Nem sikerült optimalizálni ezt az SVG-t..

A folyamatban lévő optimalizálás azonnal megszakad, ha a felhasználó módosítja vagy törli a bemeneti mező tartalmát.

Gyakran Ismételt Kérdések

Mit távolít el az optimalizáló?

Eltávolítja a megjegyzéseket, metaadatokat, a szerkesztő-specifikus névtereket, a felesleges szóközöket az attribútumok között, a használaton kívüli névtereket és a rövidebb egyenértékű színkódokat használja. Érintetlenül hagyja viszont a viewBox-ot, az azonosítókat (ID), a címkéket és a geometriát.

Minden SVG-t képes optimalizálni?

A normál, beágyazott SVG-kódot kezeli. A dokumentumtípus- (doctype) vagy egyéni entitás-deklarációkat tartalmazó SVG-k blokkolva vannak, mivel ezek elemzése nem biztonságos. Távolítsa el ezeket a deklarációkat, és próbálja újra.

Megváltoztatja az optimalizálás a grafika megjelenését?

Az optimalizáló elkerüli az útvonalak (path) újraírását, az azonosítók (ID) átnevezését, a viewBox eltávolítását és a koordináta-kerekítéseket. Ha az SVG megjegyzésekre vagy metaadatokra támaszkodik a tervezési munkafolyamatban, őrizze meg az eredeti fájl másolatát.

Hol történik az SVG kód feldolgozása?

Az SVG-kód optimalizálása teljesen a böngészőjében történik. Semmi sem kerül feltöltésre a BroBroGo szervereire, így a kód feldolgozása helyben valósul meg.