Conservazione del tipo di carattere nel file SVG di Illustrator


24

Ciao, sono nuovo illustratore e ho creato un'immagine che utilizza il carattere "Skia-Regular". Ma quando salvo quell'immagine in formato .svg , cambia il tipo di carattere. E quando apro il file in formato .svg nel browser, il carattere è completamente diverso. Qualcuno può dirmi cosa sto facendo di sbagliato. Ho aperto anche il file .svg in notepad ++ e dice font-family = "'Skia-Regular' ma anche il font non è Skia Regular. Qualsiasi aiuto sarà apprezzato. Grazie

L'immagine è anche allegata come riferimento Immagine allegata

Risposte:


31

Se vuoi essere sicuro che il testo avrà lo stesso aspetto in ogni caso -

Innanzitutto, è possibile espandere il testo prima di salvare come svg

In secondo luogo, nella parte dei caratteri della finestra di dialogo di salvataggio è possibile premere "Converti in struttura"


2
La seconda parte è chiara. Potete per favore spiegare la prima parte, come posso "espandere" il testo?
Rizwan606,

5
@ Rizwan606 si seleziona il testo con uno strumento di selezione e si preme il menu Oggetto e lì si preme Espandi (convertirà il testo in forme), in alternativa si seleziona il testo e quindi si fa clic con il pulsante destro del mouse e si scatta Crea contorni
Ilan

5
Per chiarire questa risposta, non è necessario fare entrambe le cose. Entrambi i metodi funzioneranno in modo indipendente.
Simon Woodside,

⚙️ (Impostazioni avanzate per i tipi di file esportati) → SVG → Carattere in “Converti in contorni”.
Константин Ван

9

Il motivo per cui il carattere non viene visualizzato correttamente nel tipo di carattere effettivo è perché, quando SVG viene salvato utilizzando l'applicazione Illustrator. L'applicazione converte automaticamente il design in codice. E se osservato da vicino il nome del font all'interno del codice non corrisponde al font effettivo installato nel sistema.

Per superare il problema del rendering dei caratteri dovrai copiare il codice SVG da Illustrator e modificare il nome del carattere in modo che corrisponda al nome del carattere installato nel tuo sistema. (Es .: nome del font nel codice SVG che da Illustrator "Arial-Regular", ma il nome del font installato nel tuo sistema è "Arial Regular". Qui dovrai modificare il codice per avere Font-Family come "Arial Regular ".)

Questo risolverà il tuo problema senza la necessità di convertire i caratteri in contorni.

Spero che sia di aiuto!


1
Questo è esattamente! Illustrator utilizza i nomi PostScript per i caratteri quando si esegue un File> Salva e si seleziona SVG. Si finisce con "MyriadPro-Regular" invece di "Myriad Pro" come ci si potrebbe aspettare e il browser non funziona con i nomi PostScript come Illustrator. Una soluzione alternativa consiste nell'utilizzare File> Esporta per salvare SVG in quanto esporterà il nome di famiglia corretto anziché il nome PostScript.
Michael Thompson,

@Michael Thompson quando scelgo File> Esporta, SVG non è una delle opzioni. Sto usando CS5. È un'opzione nelle versioni precedenti / successive?
Max Starkenburg,

@MaxStarkenburg: il menu Esporta cambia selvaggiamente tra le versioni. Nelle versioni più recenti ci sono tre modi per salvare / esportare in SVG: File> Salva con nome> (scegliere il tipo SVG); File> Esporta> Esporta come ...> (scegli il tipo SVG) e File> Esporta per schermate> (aggiungi formato SVG).
Michael Thompson,

4

Come hai notato, il carattere tipografico è un riferimento a un file di font che può (o non può) essere disponibile per il sistema che tenta di aprire lo svg. La soluzione è convertire il tuo tipo in percorsi in modo che le curve siano memorizzate esplicitamente all'interno del file.

Il motivo per cui il browser potrebbe non essere a conoscenza della faccia del carattere a cui stai tentando di fare riferimento, non è chiaro poiché presumo che stai testando sullo stesso computer che hai usato durante la creazione del file svg. È plausibile che il carattere sia selezionabile in Illustrator ma non sia installato formalmente a livello di sistema operativo.


Sì, sto testando sullo stesso computer su cui sto creando il file svg. E puoi per favore correggermi se sbaglio. Ho preso la tua prima parte della risposta dato che devo dare un percorso specifico al file .ttf del carattere di Skia Regular nella proprietà Font-Family?
Rizwan606,

Spetta al browser abbinare il nome del carattere a un carattere installato, quindi "no" non gli verrà assegnato un percorso a un ttf. Il riferimento è simile alla sintassi css font-face, che consente un elenco separato da virgole di stili di famiglia di font. Il browser potrebbe identificare il nome del carattere in modo diverso.
horatio,

Si noti che per i loghi e gli argomenti distribuiti di questa natura, (pdf ecc.) In cui il carattere tipografico conta, è una buona idea incorporare il carattere o convertirlo in percorsi. Quindi risolvere questo riferimento potrebbe non essere una buona soluzione perché ti affidi a terze parti per avere già i caratteri tipografici corretti installati
horatio

2

archivio per il web:

  1. usa i caratteri di Google.
  2. utilizzando solo due famiglie di caratteri max.

Esporta: caratteri: (testo: svg, subconjunto: nessuno). proprietà svg: (elemento di stile).

all'interno degli stili del file risultante, modificalo:

  1. allega la riga "@import".
  2. allega "px" a tutte le dimensioni del carattere.
  3. rinominare il nome del carattere.

risultato:

<style type="text/css">
@import url(http://fonts.googleapis.com/css?family=Roboto+Condensed:300italic,400italic,700italic,400,300,700);
body {}

.st0{fill:#868686;}
.st1{font-family:'Roboto Condensed';}
.st2{font-size:14.414px;}
.st3{letter-spacing:55px;}
.st4{fill:#1D1D1B;}
.st5{font-family:'Roboto Condensed'; font-weight: 700;}
.st6{letter-spacing:51px;}
.st7{letter-spacing:45px;}
.st8{letter-spacing:40px;}


1
Questa risposta è troppo concisa. Non so nemmeno se si riferisce a un file SVG o ad altre soluzioni ...
jiggunjer,

1

È probabile che il tuo PC non abbia il file dei caratteri della famiglia di caratteri (Skia-Regular) disponibile localmente. Quindi, quando apri il tuo file SVG sul tuo browser, viene eseguito il rendering utilizzando il carattere di sistema predefinito che è Times New Roman per la maggior parte del tempo. Esistono diverse soluzioni alternative:

  1. Usa @import per fare riferimento all'API di Google Fonts (ma il problema è che, a seconda di come incorpori le tue immagini SVG sul tuo sito Web, funziona bene solo se stai utilizzando SVG in linea e tag oggetto SVG)
  2. Converti i tuoi caratteri in percorso (che aumenta le dimensioni del file e genera testo sfocato quando perdi il rendering ClearType )
  3. Incorporare i caratteri nel file SVG utilizzando Nano

Puoi leggere di più sull'uso di caratteri personalizzati in SVG qui: https://css-tricks.com/using-custom-fonts-with-svg-in-an-image-tag/

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.