Kann ich in Inkscape auf ein PDF/SVG verlinken, anstatt dessen Inhalt einzubetten?

Ich verwende Inkscape als Leinwand, um vorhandene PDF/SVG/PNG-Plots zu gestalten, die ich in Python erstellt habe, und füge dann der Gesamtfigur einige Details und Text hinzu. Wenn ich die PDF/SVG-Dateien über importiere File >> Import... >> Link, werden sie in Inkscape eingebettet. Mir ist aufgefallen, dass ich, wenn ich dies mit einem Rasterbild mache, die Option erhalte, auf die Datei zu verlinken, anstatt sie einzubetten, sodass, wenn ich die Plots in Python aktualisiere, sie automatisch in Inkscape aktualisiert werden.

Ich kann nicht finden, wie ich PDF/SVG-Dateien auf die gleiche Weise verlinken kann. Ich möchte die PDF/SVG-Plots in voller Auflösung beibehalten, anstatt Raster zu verwenden. Mein Freund hat mir gezeigt, wie man es in Adobe Illustrator mit PDFs macht, aber ist das in Inkscape möglich?

Antworten (3)

Das Verlinken auf externe SVG-Dateien (aber anscheinend keine PDF-Dateien) wird mit Inkscape 1.0 möglich sein ( Release Notes ). In Inkscape wird es immer noch in ein Rasterbild konvertiert, aber Sie können die DPI beim Import und sogar danach einstellen. Die Rasterung erfolgt innerhalb von Inkscape, sodass die Dateigröße nicht erhöht wird.

Auch wenn sie in einem Browser angezeigt wird, scheint die verknüpfte SVG-Datei unverändert angezeigt zu werden (keine Rasterung).

Inkscape 1.0 ist derzeit als Alpha-Version verfügbar .

Ab dem 20.09.2019 exportiert die 1.0-Beta bei der Konvertierung in ein anderes Format weiterhin die Rasterbilder, anstatt das SVG direkt zu rendern. Die Bilder werden mit der DPI exportiert, die beim Importieren des SVG ausgewählt wurde, nicht mit der bei der Ausgabe angegebenen, also stellen Sie sicher, dass Sie beim Importieren eine angemessene DPI angeben.

Sie können ein Inkscape-SVG mit einem anderen Inkscape-SVG verknüpfen, sodass die verknüpfte Datei in allen Dateien, die sie verwenden, automatisch aktualisiert wird, wie dies bei einem verknüpften Rasterbild der Fall wäre. Dies wird mit dem <image />Tag wie folgt erreicht:

  1. Erstellen Sie ein Image namens dummy.png.
    • Verwenden Sie zum Verknüpfen denselben Speicherort wie das SVG.
    • Verwenden Sie die gleichen Abmessungen wie das verknüpfte Bild im übergeordneten SVG.
  2. dummy.pngAls Rasterbild importieren .
  3. Klicken Sie mit der rechten Maustaste auf das Bild.
  4. Wählen Sie Bildeigenschaften aus .
  5. Legen Sie die URL für die SVG-Datei fest (verwenden Sie eine relative URL).

Die Grafik wird jedes Mal automatisch aktualisiert, wenn Ihr verknüpftes SVG aktualisiert wird, kann jedoch nicht in der Host-SVG-Datei bearbeitet werden.

Alternativ können Sie ein Rasterbild des Quell-SVG selbst rendern und seine URL durch die URL der SVG-Datei ersetzen.

Danke, ich habe versucht, das Tag <image> zu verwenden, aber Inkscape konvertiert die verknüpfte Datei in ein Bitmap-Bild mit niedriger Auflösung, sowohl zum Anzeigen in Inkscape als auch zum Exportieren in andere Formate. Ist dies bei Ihnen nicht der Fall? Wenn ja, könnten Sie ein vollständiges Beispiel für ein Bild-Tag mit einem SVG-Pfad darin posten, das in voller "Auflösung" gerendert wird?
@cheflo, du hast recht, die verlinkte Datei ist eine Bitmap. Ich habe diese Funktion in Situationen verwendet, in denen ich mir keine Gedanken über die Skalierung des Bildes machen musste und nicht genau hinschaute, was passierte. Mein Fehler.

Wenn Sie eine Vektordatei in Inkscape importieren, wird sie als Gruppe von Vektorobjekten angezeigt. Auflösung ist also kein Problem. Ich mache das oft für Grafiken von Origin und Python/Matplotlib. Dies ist leicht zu überprüfen – klicken Sie auf eine Kurve in Ihrem Diagramm und wählen Sie das Werkzeug „Pfade nach Knoten bearbeiten“ (F2) – Sie können die Knoten bearbeiten.

Eine automatische Aktualisierung wäre schön, aber ich glaube nicht, dass dies als Benutzer möglich ist (und ich füge hier einfache Erweiterungen hinzu). Ich habe gerade versucht, eine SVG-Datei von Hand zu hacken, um ein PDF (oder SVG) anstelle eines PNG zu verlinken, und die neue Datei kann nicht gefunden werden (ich erhalte ein Platzhalterbild mit „☒ Verknüpftes Bild nicht gefunden“).

Wenn Sie Raster in Ihre SVG-/PDF-Quelldateien eingebettet haben, bin ich mir nicht sicher, was mit der Auflösung passieren würde. Das einzige Mal, dass ich mich damit auseinandersetzen musste, waren die Bilder (aus Mikroskopfotos zugeschnitten) mit einer so niedrigen Auflösung, dass sie sowieso hochskaliert wurden und ich nicht weiter verloren habe. Ich bezweifle, dass Sie sowieso Probleme mit eingebetteten Rastern in Python-Graphen haben.

Danke, ich habe auch den "Linked image not found"-Fehler bei PDFs erlebt. Ich hatte gehofft, dass es eine Lösung gibt, die ich übersehen hatte, da sie technisch möglich erscheint, da die Funktionalität in Illustrator vorhanden ist. Ich denke, das .ai-Format könnte für diese Art von Dingen freizügiger sein (obwohl ich Beiträge über SVGs innerhalb von SVGs für das Webseitendesign gesehen habe).