Immagini SVG con dimensioni inferiori a 1 non vengono caricate

Il caricamento di un’immagine SVG in un post (da includere) in cui l’attributo height o width nell’elemento svg principale ha una dimensione numerica inferiore a “1” (ignorando le unità associate) fallisce con il messaggio:

Spiacenti, ma non siamo riusciti a determinare le dimensioni dell’immagine. Forse l’immagine è corrotta?

Sembra che gli attributi height e width vengano controllati e il caricamento venga rifiutato prima che il codice associato a FIX - use ImageMagick to determine size of SVG images by jbrw · Pull Request #12230 · discourse/discourse · GitHub abbia la possibilità di utilizzare le informazioni sulle unità per calcolare la dimensione effettiva di visualizzazione. Una ricerca nel forum per

svg “determinare le dimensioni dell’immagine” “forse l’immagine è corrotta”

restituisce attualmente 9 risultati. Come includere icone fontawesome nei post? sembra avere la stessa causa, ma tale segnalazione è vecchia e dovrebbe essere già stata risolta.

Dopo alcune ricerche, sembra che si tratti di un problema legato alla libreria fastimage utilizzata. Ho creato una segnalazione per Immagini SVG con dimensioni piccole rilevate come zero pixel, ignorando le unità e la sto citando qui. Supponendo che la libreria fastimage venga corretta, sarà comunque probabile che sia necessaria una modifica a Discourse per aggiornare la versione.

Di seguito è riportata la sorgente XML del file SVG di esempio che genera l’errore.

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg
  xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"
  width="1.2in" height="0.9in"
  viewBox="0 0 1200 900"
>
  <line x1="1100" x2="100" y1="100" y2="800" stroke="#000000" stroke-width="50"/>
</svg>

Di seguito sono riportate le immagini che dimostrano le piccole modifiche che rendono funzionante l’immagine sopra nel forum. Queste corrispondono agli allegati nella segnalazione GitHub citata.

image2

image4

Grazie per la descrizione dettagliata del problema.

Sono riuscito a riprodurre il problema dalla mia parte e penso che questa pull request dovrebbe risolvere il problema che descrivi

Modifica: Strano… i test passano per me localmente, ma falliscono dopo averli caricati. Ci darò un’occhiata più da vicino domani.

2 Mi Piace

Questo è stato unito la settimana scorsa.

@µMerlin Puoi aggiornare le cose dalla tua parte e confermare che ora tutto sia a posto?

1 Mi Piace

Questo argomento è stato chiuso automaticamente dopo 4 giorni. Non sono più ammesse nuove risposte.