librsvg (gelegentlich auch LibRsvg geschrieben ) [ 2 ] ist eine freie Softwarebibliothek zum Rendern von SVG-Dateien , die im Rahmen des GNOME- Projekts entwickelt wurde und auf geringe Größe und Portabilität ausgelegt ist. [ 3 ] Das Linux- Befehlszeilenprogramm rsvg-convert verwendet diese Bibliothek, um SVG-Dateien in Rasterbilder umzuwandeln .

Backends

librsvg verwendet zwei weitere Bibliotheken, um Aufgaben vom Einlesen der Datei bis zur Bildschirmdarstellung auszuführen:

Seit Version 2.41.0 wurden viele Teile in Rust neu geschrieben . [ 4 ] [ 5 ]

Annahme

librsvg wurde für die GNOME-Desktopumgebung entwickelt und wird daher von GNOME Files und GNOME Loupe verwendet , ist aber auch für den Einsatz in anderen Softwareanwendungen vorgesehen. Ein bekanntes Beispiel hierfür sind die von Wikimedia gehosteten Wikis, die librsvg zum Rendern von SVG-Bildern nutzen. [ 6 ] Laut MediaWiki wurde librsvg einst für diese Webanwendungen ausgewählt, weil es zwar „schnell, aber nicht sehr genau“ war . [ 7 ] Seit März 2025 verwenden Wikipedia und Wikimedia Commons eine Version von librsvg 2.54, um SVG als PNG darzustellen. [ 8 ] [ 9 ]

Mit dem Wechsel zur Cairo- Vektor-Rendering-Engine im Jahr 2005 [ 10 ] [ 11 ] wurde librsvg präziser und optisch ansprechender. Seit 2012 veröffentlicht ein unabhängiger Entwickler Win32- Konsolenports (rsvg-convert.exe) , zuletzt Version 2.40.20 (Dezember 2017) [ 12 ] . Die Handbuchseite zu rsvg-view ist ebenfalls online verfügbar [ 13 ] .

Versionsverlauf

Version Datum Kommentare
1.0.0 08.05.2001
1.1.6 07.03.2002
2.0.0 19.06.2002
2.1.0 27.09.2002
2.2.0 20.01.2003
2.3.0 08.04.2003
2.4.0 08.09.2003
2.5.0 07.12.2003
2.6.0 08.03.2004
2.7.0 10.03.2004
2.8.0 03.09.2004
2.9.0 25.01.2005
2.11.0 25.08.2005
2.12.0 15.09.2005
2.13.0 21.10.2005
2.14.0 25.02.2006
2.15.0 11.05.2006
2.16.0 31.08.2006
2.18.0 24.07.2007
2.20.0 19.01.2008
2.22.0 21.02.2008
2.26.0 16.03.2009
2.31.0 02.07.2010
2.32.0 27.09.2010
2.34.0 03.04.2011
2.35.0 14.11.2011
2.36.0 26.03.2012
2.37.0 10.01.2013
2.39.0 16.08.2013
2.40.0 14.10.2013
2.40.16 09.06.2016
2.40.17 07.04.2017
2.40.20 16.12.2017
2.40.21 26.02.2020 2.40.21: Letzte Version ohne Rust
2.41.0 04.01.2017
2.42.0 09.01.2018
2.43.0 12.06.2018
2.44.0 23.08.2018
2.44.10 11.12.2018
2.45.0 17.11.2018
2.45.6 14.05.2019 2:45.6: Erste Version nur für Rust. Erfordert Cairo 1.16.0 oder höher und Rust 1.30.0 oder höher [ 14 ]
2.45.92 02.09.2019
2.46.0 09.09.2019
2.47.0 29.10.2019
2.48.0 07.03.2020
2.48.9 05.11.2020
2.49.0 29.05.2020
2.49.5 04.09.2020
2.50.0 10.09.2020
2.50.3 28.01.2021 2.50.3: Version, die auf Wikimedia Commons im Mai 2023 verwendet wurde [ 15 ]
2.51.0 03.02.2021
2.51.4 09.07.2021
2.52.0 15.09.2021
2.53.0 18.01.2022
2.53.1 12.02.2022
2.53.2 12.03.2022
2.54.0 16.03.2022 2.54.1 23.04.2022; 2.54.2 13.05.2022; 2.54.3 14.05.2022; 2.54.4 10.06.2022; 2.54.5 26.08.2022. 2.54.7: Version, die auf Wikimedia Commons im Juli 2025 verwendet wurde [1].
2.55.0 03.08.2022
2.55.1 05.09.2022
2.55.2 16.03.2023
2.56.0 17.03.2023
2.57.0 13.09.2023
2.58.0 17.03.2024 Erste Version, die Rust-Crates für alle Bildladeoperationen verwendet und somit die Abhängigkeit von gdk-pixbuf beseitigt. [ 16 ]
2.59.0 12.09.2024 Das Autotools-Buildsystem wurde zugunsten von Meson aufgegeben.
2.59.0 12.09.2024
2.60.0 18.03.2025
2.61.0 15.08.2025

Referenzen

  1. ^ "Version 2.62.3" .
  2. ^ "Projects/LibRsvg - GNOME Wiki!" .
  3. ^ „librsvg ist eine Bibliothek zum Rendern von SVG-Dateien mit Cairo . “ librsvg . GNOME . Abgerufen am 10. Mai 2012 .
  4. ^ „Librsvg 2.41.0 wurde veröffentlicht . “ mail.gnome.org . 03.01.2017 . Abgerufen am 20.11.2018 .
  5. ^ Quintero, Federico Mena (2017). C-Bibliothekscode durch Rust ersetzen: Was ich mit librsvg gelernt habe (PDF) . Manchester, UK: GUADEC. Archiviert vom Original (PDF) am 28.09.2017 . Abgerufen am 20.11.2018 .
  6. ^ Lucideer (27. April 2009). „Handbuch:Bildverwaltung – MediaWiki“ . MediaWiki . Abgerufen am 6. April 2011 .
  7. ^ „SVG-Benchmarks – MediaWiki“ . MediaWiki . Abgerufen am 6. April 2011 .
  8. ^ „Aktualisieren Sie librsvg auf Version ≥ 2.54 (2.54.7)“ . Wikimedia Phabricator . Abgerufen am 9. März 2025 .
  9. ^ „librsvg bugs“ . Wikimedia Commons . Abgerufen am 22.11.2023 .
  10. ^ Worth, Carl (2. September 2005). „svg shootout“ . gmane.comp.gnome.lib.librsvg.devel . Abgerufen am 29. November 2014. Die librsvg-Maintainer haben nun Cairo-Unterstützung zu librsvg hinzugefügt. Ein herzliches Dankeschön geht an Caleb Moore und Dom Lachowicz für diese Arbeit. Der Quellcode kann mit der Option `--with-cairo` kompiliert werden und erzeugt die separaten Bibliotheken `librsvg-2-cairo.so` und `librsvg-2-base.so`.
  11. ^ Moore, Caleb (3. November 2005). „using librsvg cairo“ . gmane.comp.gnome.lib.librsvg.devel . Abgerufen am 29. November 2014. Librsvg- 2.13 kann nicht mit libart verknüpft werden, da dieses Backend zum Zeitpunkt der Veröffentlichung von Version 2.13 schwerwiegend fehlerhaft war und daher mit cairo verknüpft werden muss.
  12. ^ TumaGonx Zakkum (10.06.2012). „RSVG-Convert SVG-Bildkonvertierungstool“ . Open-Source-Software und Windows 32-Bit . Abgerufen am 31.01.2017 .
  13. ^ Paul Brossier; Dom Lachowicz; Alex Larsson; et al. "rsvg-view" ( Manpage ). Archiviert vom Original am 28.12.2014 . Abgerufen am 28.12.2014 .
  14. ^ „Versionshinweise – Version 2.45.6“ . Archiviert vom Original am 26.01.2024.
  15. ^ "⚓ T265549 Aktualisieren Sie librsvg auf Version > 2.44.10 (2.50.3)" . phabricator.wikimedia.org . Abgerufen am 29.06.2024 .
  16. ^ "Versionshinweise - Version 2.58.0" .