2011-09-14 6 views
5

Sto tentando di aggiungere un carattere personalizzato ma non è possibile. Sto Errore durante l'acquisizione con il codice qui sotto, il nome del font è l'aggiunta nel menu a discesa, ma non sta cambiando ...Carattere personalizzato nel ckeditor

il mio codice è

config.js:

CKEDITOR.editorConfig = function(config) 
{ 
config.contentsCss = 'fonts.css'; 
config.font_names = 'Dekers/dekers_true' + config.font_names; 
} 

fonts.css:

@font-face { 
font-family: "dekers_true", serif; 
src: url(fonts/Dekers_light.eot); /* IE */ 
src: local("Dekers"), url("fonts/Dekers_light.ttf") format("truetype"); /*non-IE*/ 
} 

risposta

5

il file CSS personalizzato deve contenere lo stile di base per il corpo CKEditor. CKEditor viene caricato nell'iframe solo con questo file CSS.

@font-face { 
    font-family: "dekers_true"; /* font name for the feature use*/ 
    src: url(fonts/Dekers_light.eot); /* IE */ 
    src: local("Dekers"), url("fonts/Dekers_light.ttf") format("truetype"); /*non-IE*/ 
} 
body { 
    font: normal 13px/1.2em dekers_true, serif; 
    color: #333; 
} 
p { 
    font: normal 13px/1.2em dekers_true, serif; 
    margin-top: 0; 
    margin-bottom: 0.5em 
} 
... 

E di aggiungere la dichiarazione del font anche nel file CSS del tuo sito principale.

Aggiornamento: Variante alternativa. Puoi dichiarare i tuoi stili personalizzati, ad es.

config.stylesSet = [ 
    { name : 'Pretty font face', element : 'span', attributes : { 'class' : 'pretty_face' } }, 
    ... 
]; 

Così saranno applicate classe .pretty_face e di quanto si può stile come si desidera. Se si desidera un'anteprima immediata in rte, è necessario dare uno stile a questa classe anche nel file contentCSS.

+0

Grazie mille per la tua risposta veloce. dove dichiaro gli stili personalizzati, ho provato in ckeditor \ plugins \ styles \ styles \ default.js ma non ottenendo lo stile nel menu a discesa, puoi dare il codice piccolo per aggiungere solo un font e una dimensione in js. Per favore, sono nuovo nel ckeditor. strucking with bugs ... Aiutami – Sarwan

+0

Per ulteriori informazioni sugli stili personalizzati [qui] (http://docs.cksource.com/CKEditor_3.x/Developers_Guide/Styles) – atma

+0

Nota: non modificare mai il codice core come 'ckeditor \ plugins \ styles \ styles \ default.js', la configurazione di CKEditor è molto flessibile. Anche CKEditor ha [jQuery adapter] (http://docs.cksource.com/CKEditor_3.x/Developers_Guide/jQuery_Adapter), quindi puoi richiamare la funzione di callback dopo che l'editor verrà caricato. – atma

3

o in config.js

config.font_names = 'Arial/Arial, Helvetica, sans-serif;' + 
    'Comic Sans MS/Comic Sans MS, cursive;' + 
    'Courier New/Courier New, Courier, monospace;' + 
    'Georgia/Georgia, serif;' + 
    'Lucida Sans Unicode/Lucida Sans Unicode, Lucida Grande, sans-serif;' + 
    'Tahoma/Tahoma, Geneva, sans-serif;' + 
    'Times New Roman/Times New Roman, Times, serif;' + 
    'Trebuchet MS/Trebuchet MS, Helvetica, sans-serif;' + 
    'Verdana/Verdana, Geneva, sans-serif;' + 
    **'Dekers/dekers_true';** 

E poi il tuo CSS. Quanto sopra lo inserisce nell'elenco a discesa Stili, non in Caratteri.

+0

Fantastico! Questo funziona per me. Ho aggiunto nel mio 'main css' e ckeditor' contents.css' la regola font-face dei miei font, e funziona come un incantesimo! – musicvicious