processing / processing/processing4
loadShape() problems with SVGs that have . starting a number in a path
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Java
- Sterne
- 494
- Forks
- 183
- Ø Merge
- 4 Std. 39 Min.
- Gemergte PRs (30 T.)
- 3
Beschreibung
Created by: benfry
Re-saving the SVG in 1.0 format with Illustrator instead of 1.1 will fix the issue, but the problem seems to be that a leading . in the SVG path code won't render properly, for instance:
M3,.6– parse toM,3,.6(may be fixed with https://github.com/processing/processing4/commit/9ef40ba48c284ae52e7eae759af325486ca85f1e)M.6.7– parse toM,.6, and.7- …etc
This caused a problem with the variable icons, which was fixed commit 805306fd1b4eeeac35bf1c29693d751edf349f57, so using the previous version of the SVGs should do the trick for testing.
Test code:
static final String[] names = {
"array", "boolean", "byte", "char", "double", "float",
"integer", "long", "object", "short", "string"
};
void setup() {
size(250, 550);
textAlign(LEFT, CENTER);
textSize(24);
fill(0);
int each = 50;
int pos = 0;
for (String name : names) {
PShape s = loadShape(name + ".svg");
shape(s, 0, pos, each, each);
text(name, 60, pos + each/2);
pos += each;
}
saveFrame("issue.png");
}

Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne bei loadShape() und dem Einstiegspunkt für das SVG-Pfadparsing und bilde anschließend die bereitgestellte Skizze mit den im Issue erwähnten früheren SVG-Versionen nach. Überprüfe die Tokenisierung für Pfade wie M3,.6 und M.6.7; abgeschlossen ist die Aufgabe, wenn Koordinaten mit führender Dezimalstelle korrekt geparst werden und die variablen Icons wie erwartet gerendert werden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- computer-graphics
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 38/100