Seite 1 von 2

SVG bringt PL zum Stehen

Verfasst: Fr 15 Apr 2022 10:26
von NoSi
Die anhängende SVG-Grafik bringt PL (aktuelle Beta, klar, aber auch ältere Version) „zum Stehen“.

Ist ein Mermaid-Diagramm, das in Browsern „sauber“ aussieht, doch in LO Writer zwar geladen, aber „unschön“ dargestellt wird. Das wollte ich mit PL beheben…

Generiert ist es via Export aus Joplin.

(Ist gezippt und deshalb „unsichtbar“, weil SVG anhängen vom Forum abgelehnt wird)

Re: SVG bringt PL zum Stehen

Verfasst: Fr 15 Apr 2022 10:48
von der_fotograf
Ich habe die Datei ausgepackt und wollte sie mit PL öffnen. PL blieb — wie von Dir beschrieben — hängen, sodass ich den PL Prozess killen musste (macOS).

Gleiches Experiment mit Affinity Photo, Designer und Scribus.

Somit würde ich sagen, dass die Chancen sehr gross sind, dass weder PL noch die anderen Programme ein Problem haben, sondern dass »Joplin« unsauber arbeitet.

Re: SVG bringt PL zum Stehen

Verfasst: Fr 15 Apr 2022 18:27
von russellcottrell
It is the class strings that start with a space that freeze the program:
class=" taskText taskText0 width-61.65625"
There are four of them; get rid of that initial space and it opens. (But it still does not render properly.)

Re: SVG bringt PL zum Stehen

Verfasst: Do 21 Apr 2022 10:20
von Martin Huber
Wir reparieren das.

We will fix that.

Martin

Re: SVG bringt PL zum Stehen

Verfasst: Mo 02 Mai 2022 09:47
von NoSi
„Wir reparieren das“ → deshalb ist PL für mich das „Schweizer Messer für Grafikbearbeitung“.

ABER: Ist das ein „Joplin-Problem“ oder eine „Interpretationsschwäche“ anderer Programme (ohne Unterschied zwischen „Hängen bleiben“ und „falsch darstellen“)?

Wenn das Problem bei Joplin liegt, kann/werde ich dort anklopfen. Allerdings zeigt die korrekte Darstellung in verschiedenen Browsern, dass es eine „darstellbare Grafik“ zu sein scheint.

Re: SVG bringt PL zum Stehen

Verfasst: Mo 02 Mai 2022 09:58
von Gerhard Huber
Leider ist es so, dass SVG ähnlich anderen Formaten, wie vormals PS, EPS, PDF, immer mehr aufgebläht wird. Es gibt gefühlt 23 Möglichkeiten, die Linienfarbe einer Vektorlinie festzulegen. Manchmal verschluckt sich da ein Import dran.

Re: SVG bringt PL zum Stehen

Verfasst: Do 07 Jul 2022 14:24
von NoSi
Ich hinke bei den Betas definitiv der aktuellen Schlagzahl hinterher, sehe jedoch anhand der „Änderungsnotizen“, dass bei SVG vieles passiert ist. Auf jeden Fall genug, damit das „Absturz-SVG“ (s.o.) in der 23.40B10 erwartungsgemäß angezeigt wird.

DANKE.

Re: SVG bringt PL zum Stehen

Verfasst: Fr 08 Jul 2022 11:28
von NoSi
Wenn Ihr noch eine Herausforderung für SVG sucht:

Mermaid Live Editor aufrufen und SVGs runter laden.

Die 23.40B10 lädt die zwar ohne Stress, die Darstellung ist halt anders, als im Editor.

Das gilt gleichermaßen für die Präsentation in LibreOffice, weitere Versuche habe ich aktuell keine unternommen. In den gängigen Browsern (Chrome-basiert, Firefox) sehen die SVGs aus, wie erwartet.

Re: SVG bringt PL zum Stehen

Verfasst: Fr 08 Jul 2022 12:18
von Martin Huber
NoSi hat geschrieben: Fr 08 Jul 2022 11:28 Wenn Ihr noch eine Herausforderung für SVG sucht:

Mermaid Live Editor aufrufen und SVGs runter laden.
Ich habe mir mal eines der SVGs angesehen, und da gibt es zwei Probleme:
- Es sind nur bedingt SVGs. Für die Textausgabe ist HTML eingebettet. Das unterstützen wir nicht.
- Die CSS-Stile verwenden teilweise Konstruktionen, zu denen ich keine Doku gefunden habe.
Wenn hier CSS-Experten anwesend sind: Was bedeutet

Code: Alles auswählen

.cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}
Martin

Re: SVG bringt PL zum Stehen

Verfasst: Fr 08 Jul 2022 19:16
von russellcottrell
It means the style is applied to a rect that is the child of an element with class “cluster,” like this (copy this to a text file, name it test.htm, and open it with a browser):

Code: Alles auswählen

<!DOCTYPE html>

<html lang="en-US">
<head>

<title>test</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<style><!--
.cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}
--></style>

</head>
<body>

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 100" width="300" height="100">
<g class="cluster">
<rect width="300" height="100" />
</g>
</svg>

</body>
</html>
Many of the svg’s that I create using web standards do not render in PhotoLine. I do not know about other editors. These are the sources that I use:

https://developer.mozilla.org/en-US/docs/Web/SVG
https://www.w3schools.com/html/html5_svg.asp

Re: SVG bringt PL zum Stehen

Verfasst: So 10 Jul 2022 09:54
von NoSi
Martin Huber hat geschrieben: Fr 08 Jul 2022 12:18 Ich habe mir mal eines der SVGs angesehen, und da gibt es zwei Probleme:
- Es sind nur bedingt SVGs. Für die Textausgabe ist HTML eingebettet. Das unterstützen wir nicht.
- Die CSS-Stile verwenden teilweise Konstruktionen, zu denen ich keine Doku gefunden habe.
[/code]
Martin
HTML als Text erklärt, weshalb damit nur Browser klarkommen. Es macht das Resultat unbrauchbar für die Weiterverwendung anderswo.
Ist offenbar schon anderen aufgefallen, dass es so „suboptimal“ ist. Hier gibt's demnach eine klare „Bringschuld“ vom Generator.

Der alternative Lösungsansatz ist momentan wohl PNG-Export und mit PL vektorisieren…

Das CSS „passt schon“. Da SVG „als Text“ im Dokument wahrgenommen wird (→ HTML-Graphics) wird »<rect>« im »<cluster>« mit dieser Definition formatiert.

Warum statt »<text>« ein HTML-Text eingebettet wird, ist aus meiner Sicht „sinnfrei“, weshalb meinerseits das SVG „un-editiert“ geblieben ist – wobei ich es wohl trotzdem erst jetzt gesehen hätte, nachdem mit dem Finder auf das Problem gezeigt wird.

Allerdings scheitert die Darstellung dieses Beispiels in PL ebenfalls, während diese hier funktionieren. Allerdings sehen die SVGs nach dem laden und speichern mit PL — insbesondere das Beispiel 4 — deutlich anders aus (im Text-Editor).

Demnach ist „CSS“ eine Interpretationshürde (was ich gut nachvollziehen kann…).

Re: SVG bringt PL zum Stehen

Verfasst: Mi 13 Jul 2022 10:10
von NoSi
Ich habe zwischenzeitlich in anderen (Diagramm-)Programmen weitere schlechte Implementationen eines SVG-Exports gefunden. Einen recht ordentlichen hat der yEd-graph editor. Wobei sich auch dessen Export mit PL allein durch Öffnen, Hintergrund wegwerfen, beschneiden, aus Code-Sicht „pimpen“ lässt.

Bei anderen wird „SVG-Rumpel“ exportiert, dafür brauchbare PDF-Dokumente. Öffne ich die, erkennt PL die Texte als Text – exportiert sie allerdings als einzelne Buchstaben (Beispieldaten habe ich per e-Mail geschickt). Woran das liegt, hat sich mir nicht erschlossen, damit wird „Meier“ unauffindbar (s.u.).

Ein weiterer Effekt: Mit yEd können PDF-Dokumente mit eingebetteten Fonts generiert werden. Der von mir testweise verwendete steht beim Öffnen mit PL auf dem Kopf. Dasselbe Diagramm als SVG exportiert und mit PL geöffnet führt zur Frage, welcher Font verwendet werden soll und einer korrekten Darstellung. Das lässt sich „pimpen“, das importierte „kopfstehende“ PDF führt konsequenterweise zu „kopfstehendem“ SVG-Export.

Als Font habe ich bewusst einen „eher fehlenden“ verwendet (ABeeZee), der wird „als Text“ im SVG erwartungsgemäß falsch dargestellt, wenn er im System fehlt. Allerdings bleibt es „findbarer Text“, weshalb ich mit SVG gerade so intensiv herumprobiere: einfach mal die SVGs aus dem ZIP im Browser öffnen und nach „meier“ suchen…

Re: SVG bringt PL zum Stehen

Verfasst: Do 14 Jul 2022 10:03
von Martin Huber
russellcottrell hat geschrieben: Fr 08 Jul 2022 19:16 It means the style is applied to a rect that is the child of an element with class “cluster,” like this (..,)
Yes, that makes sense. Thanks for the info. I will implement it this way.
For testing CSS styles
https://www.w3schools.com/html/tryit.as ... html_basic
is also interesting.
russellcottrell hat geschrieben: Fr 08 Jul 2022 19:16 Many of the svg’s that I create using web standards do not render in PhotoLine.
If you have a sample file, you can send it to us.

Martin

Re: SVG bringt PL zum Stehen

Verfasst: Do 14 Jul 2022 10:18
von Martin Huber
NoSi hat geschrieben: So 10 Jul 2022 09:54(...)
Allerdings scheitert die Darstellung dieses Beispiels in PL ebenfalls,
Das geht in der nächsten Version.
NoSi hat geschrieben: So 10 Jul 2022 09:54während diese hier funktionieren. Allerdings sehen die SVGs nach dem laden und speichern mit PL — insbesondere das Beispiel 4 — deutlich anders aus (im Text-Editor).
Ja, aber das Ergebnis wird immer anders aussehen, weil PhotoLine kein SVG-Editor ist, sondern eine neue Datei erzeugt. Ich schaue mir mal an, ob ich die Textausgabe mit weniger (und im optimalen Fall ganz ohne) "tspan"s hinbekomme.

Martin

Re: SVG bringt PL zum Stehen

Verfasst: Do 14 Jul 2022 11:29
von Martin Huber
NoSi hat geschrieben: Mi 13 Jul 2022 10:10 Ein weiterer Effekt: Mit yEd können PDF-Dokumente mit eingebetteten Fonts generiert werden. Der von mir testweise verwendete steht beim Öffnen mit PL auf dem Kopf.
In dem PDF wird ein selbstdefinierter (also - streng genommen - nicht ein eingebetteter) Font verwendet. Und der Font ist dummerweise gespiegelt definiert. Dadurch wird beim Import ein gespiegelter Font durch einen nicht gespiegelten ersetzt.

Ich schaue mir das noch genauer an.

Martin