OPEN SOURCE/CKEditor4

CKEditor4 μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€ UI 색상 및 μ–Έμ–΄ μ„€μ •, 자리 ν‘œμ‹œμž

Junesker 2025. 4. 4. 10:59
λ°˜μ‘ν˜•

 

CKEditor4λ₯Ό μ‚¬μš©ν•˜λŠ” μž‘μ—…μžλΌλ©΄ 기본적인 섀정듀을 ν™œμš©ν•΄μ„œ μ›ν•˜λŠ” CKEditor의 ν˜•νƒœλ₯Ό ꡬ성해 λ‚˜κ°ˆκ²ƒμž…λ‹ˆλ‹€. λŒ€ν‘œμ μΈ μ„€μ •μœΌλ‘œλŠ” UI 색상, μ–Έμ–΄, 크기, μ‚¬μš© κΈ°λŠ₯의 배치 등등이 μžˆμŠ΅λ‹ˆλ‹€. λ‹€μ–‘ν•œ μ„€μ •λ“€ 쀑, μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€μ˜ UI 색상 및 μ–Έμ–΄λ₯Ό μ„€μ •ν•  수 μžˆλŠ” 방법에 λŒ€ν•΄μ„œ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.

 

 

 

 

 

μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€ UI 색상 μ„€μ •

 

κ°œλ°œμžλŠ” νŽΈμ§‘κΈ° UI 색상을 μ‰½κ²Œ μ‘°μ •ν•˜μ—¬ CKEditor 4κ°€ λ‚΄μž₯된 μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ λͺ¨μ–‘κ³Ό λŠλ‚Œμ— 맞게 λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€.

ν•΄λ‹Ή κΈ°λŠ₯은 μ†Œμœ„ "카멜레온" κΈ°λŠ₯κ³Ό ν˜Έν™˜λ˜λŠ” 에디터 μŠ€ν‚¨μ—λ§Œ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. CKSourceμ—μ„œ λ§Œλ“  μŠ€ν‚¨, 즉 Moono-Lisa, Moono, Kama Skin은 이미 이λ₯Ό μ§€μ›ν•©λ‹ˆλ‹€. μ‚¬μš©μž μ§€μ • μŠ€ν‚¨μ„ μ‚¬μš©ν•˜λŠ” 경우 skin.js νŒŒμΌμ—μ„œ CKEDITOR.skin.chameleon ν•¨μˆ˜λ₯Ό μ •μ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€.

 

μ½”μ–΄ 에디터 APIλŠ” μ„ ν˜Έν•˜λŠ” μƒ‰μƒμ˜ μž…λ ₯을 μ œμ–΄ν•˜μ§€λ§Œ, 색상을 λ³€κ²½ν•˜λŠ” 방법을 μ•Œλ €μ£ΌλŠ” 것은 μŠ€ν‚¨μ˜ μΌμž…λ‹ˆλ‹€. μ΄λŠ” μŠ€ν‚¨ μžμ²΄κ°€ 색상을 μ–΄λ””μ„œ μ–΄λ–»κ²Œ μ‚¬μš©ν• μ§€ μ •μ˜ν•˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. 이λ₯Ό μœ„ν•΄ chameleon ν•¨μˆ˜κ°€ νŒŒμΌμ—μ„œ μ •μ˜λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€. (skin.js)

이 κΈ°λŠ₯을 μ±„νƒν•˜λŠ” 것은 μ „μ μœΌλ‘œ 선택 μ‚¬ν•­μž…λ‹ˆλ‹€. μŠ€ν‚¨ κ°œλ°œμžλŠ” κ³ μ •λœ 색상을 μ‚¬μš©ν•˜κ³  μŠ€ν‚¨ μ‚¬μš©μžμ—κ²Œ λ³€κ²½ν•  κ°€λŠ₯성을 μ œκ³΅ν•˜μ§€ μ•ŠκΈ°λ‘œ κ²°μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이 방법은 ꢌμž₯λ˜μ§€ μ•Šμ§€λ§Œ μ‚¬μš©ν•˜λŠ” 경우 νŒŒμΌμ—μ„œ CKEDITOR.skin.chameleon 속성을 λ‹€μŒ κ³Ό 같이 μ„€μ •ν•˜λ©΄ λ©λ‹ˆλ‹€ 

// UI 색상 λ³€κ²½ 처리 μ„€μ • ν•΄μ œ

// 방법 1
CKEDITOR.skin.chameleon = null;

// 방법 2
// CKEditor 4(4.4.7 이전)의 이전 λ²„μ „κ³Όμ˜ ν˜Έν™˜μ„±
CKEDITOR.skin.chameleon = function() {
    return '';
};

 

κΈ°λ³Έ UI 색상을 λ³€κ²½ν•˜λ €λ©΄ RGB 색상 μ½”λ“œλ₯Ό ν—ˆμš©ν•˜λŠ” CKEDITOR.config.uiColor ꡬ성 섀정을 μ •μ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€. CKEditor 폴더 λ‚΄, config νŒŒμΌμ„ μˆ˜μ • μ‹œμ—λŠ” μ•„λž˜ 섀정을 μ΄μš©ν•˜μ—¬ μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 

// μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€ UI 색상 λ³€κ²½
config.uiColor = '#66AB16';

 

 

μœ„ 'config.uiColor'λ₯Ό μ„€μ •ν•˜λ©΄, CKEditor UI 색상이 λ³€κ²½λ©λ‹ˆλ‹€. 

 

Get Sample Source Code

<!doctype html>
<html lang="en">

<head>
  <meta charset="utf-8">
  <meta name="robots" content="noindex, nofollow">
  <title>Setting editor UI color</title>
  <script src="https://cdn.ckeditor.com/4.25.1-lts/standard-all/ckeditor.js"></script>
</head>

<body>
  <textarea cols="80" id="editor1" name="editor1" rows="10"></textarea>
  <script>
    CKEDITOR.replace('editor1', {
      uiColor: '#CCEAEE'
    });
  </script>
</body>
</html>

 

 

 

 

 


μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€ UI μ–Έμ–΄ μ„€μ •

 

CKEditor4λŠ” 70개 μ–Έμ–΄λ‘œ λ²ˆμ—­λ˜μ—ˆμœΌλ©° 기본적으둜 μ‚¬μš©μž μ–Έμ–΄(λΈŒλΌμš°μ € λ˜λŠ” 운영체제 μ„€μ •μ—μ„œ μ„€μ •λœ λŒ€λ‘œ)둜 ν‘œμ‹œλ©λ‹ˆλ‹€. λ˜ν•œ κ°œλ°œμžλŠ” λ‹€μŒ ꡬ성 μ˜΅μ…˜ 쀑 ν•˜λ‚˜λ₯Ό μ‚¬μš©ν•˜μ—¬ νŽΈμ§‘κΈ° UI μ–Έμ–΄ 선택에 영ν–₯을 λ―ΈμΉ  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.

config.defaultLanguage : μ‚¬μš©μž μ–Έμ–΄λ₯Ό μ‚¬μš©ν•  수 μ—†λŠ” 경우 CKEditor4μ—μ„œ μ‚¬μš©ν•  UI μ–Έμ–΄ 버전을 κ²°μ •
config.lagnuage : κ°œλ°œμžκ°€ λͺ¨λ“  μ‚¬μš©μž 섀정을 μž¬μ •μ˜ν•˜λŠ” νŽΈμ§‘κΈ° μΈμŠ€ν„΄μŠ€μ— μ‚¬μš©λ˜λŠ” κΈ°λ³Έ ν˜„μ§€ν™”λ₯Ό μ •μ˜ν•  수 μžˆλ„λ‘ ν•©λ‹ˆλ‹€. μ„€μ •λœ 경우 νŽΈμ§‘κΈ° UIλŠ” μ‚¬μš©μž κΈ°λ³Έ μ„€μ •κ³Ό 관계없이 이 μ–Έμ–΄λ‘œ ν‘œμ‹œλ©λ‹ˆλ‹€.

 

기본적인 μ–Έμ–΄ 섀정을 μ§„ν–‰ν•˜κΈ° μœ„ν•΄μ„œλŠ” 'CKEDITOR.config.language' 섀정을 ν†΅ν•΄μ„œ λ³€κ²½ν•  수 μžˆμŠ΅λ‹ˆλ‹€. CKEditor 폴더 λ‚΄, config νŒŒμΌμ„ μˆ˜μ • μ‹œμ—λŠ” μ•„λž˜ 섀정을 μ΄μš©ν•˜μ—¬ μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 

// νŽΈμ§‘κΈ° λ‚΄μ—μ„œ ν”Œλ ˆμ΄μŠ€ν™€λ”λ‘œ μ‚¬μš©λ  ν…μŠ€νŠΈμž…λ‹ˆλ‹€.
config.language: 'ko' // ν•œκ΅­μ–΄

// Disable the placeholder.
// 빈 λ¬Έμžμ—΄κ³Ό 같은 κ±°μ§“ κ°’μœΌλ‘œ μ„€μ •ν•˜λ©΄ ν”Œλ ˆμ΄μŠ€ν™€λ”κ°€ λΉ„ν™œμ„±ν™”λ©λ‹ˆλ‹€.\
config.editorplaceholder = '';

 

지원할 μ–Έμ–΄λ₯Ό CKEditor4에 μ μš©ν•˜κΈ° μœ„ν•΄μ„œλŠ” μ–Έμ–΄ νŒŒμΌμ„ ν¬ν•¨ν•˜κ³  μžˆλŠ” lang 폴더 내에, 제곡 언어와 κ΄€λ ¨λœ jsκ°€ ν¬ν•¨λ˜μ–΄ μžˆμ–΄μ•Όν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, 'ko.js' 파일이 μžˆμ–΄μ•Ό ν•œκ΅­μ–΄λ₯Ό μ μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. ν•΄λ‹Ή 언어별 js듀은 CKEditor4λ₯Ό μ μš©ν•  λ•Œ μ‚¬μš©ν–ˆλ˜ builderμ—μ„œ μ–Έμ–΄λ₯Ό μΆ”κ°€ν•˜λ©΄ μΆ”κ°€ν•œ 언어별 jsκ°€ μƒμ„±λ©λ‹ˆλ‹€. 

 

 

μ§€μ›ν•˜λŠ” μ–Έμ–΄ μ½”λ“œ

 

μ–Έμ–΄ μ½”λ“œ μ–Έμ–΄ μ½”λ“œ μ–Έμ–΄ μ½”λ“œ
μ•„λžμ–΄ ar μ•„λ₯΄λ©”λ‹ˆμ•„μ–΄ hy μ•„μ œλ₯΄λ°”μ΄μž”μ–΄ az
λ°”μŠ€ν¬μ–΄ eu λ²¨λΌλ£¨μŠ€μ–΄ be λΆˆκ°€λ¦¬μ•„μ–΄ bg
뱅골어 bn λ³΄μŠ€λ‹ˆμ•„μ–΄ bs μΉ΄νƒˆλ£¨λƒμ–΄ ca
체코어 cs μ›°μ‹œμ–΄ cy λ΄λ§ˆν¬μ–΄ da
독일어 de κ·Έλ¦¬μŠ€μ–΄ el μ˜μ–΄ en
μ˜μ–΄(영ꡭ) en-gb μ—μŠ€νŽ˜λž€ν† μ–΄ eo μŠ€νŽ˜μΈμ–΄ es
μŠ€νŽ˜μΈμ–΄ es μ—μŠ€ν† λ‹ˆμ•„μ–΄ et 페λ₯΄μ‹œμ•„μ–΄ fa
ν•€λž€λ“œμ–΄ fi ν”„λž‘μŠ€μ–΄ fr κ°ˆλ¦¬μ‹œμ•„μ–΄ gl
κ΅¬μžλΌνŠΈμ–΄ gu νžˆλΈŒλ¦¬μ–΄ he νžŒλ””μ–΄ hi
ν¬λ‘œμ•„ν‹°μ•„μ–΄ hr 헝가리어 hu μ•„μ΄μŠ¬λž€λ“œμ–΄ is
μΈλ„λ„€μ‹œμ•„μ–΄ id μ΄νƒˆλ¦¬μ•„μ–΄ it 일본어 ja
μ‘°μ§€μ•„μ–΄ ka μΉ΄μžνμ–΄ kk μΉΈλ‚˜λ‹€μ–΄ kn
ν•œκ΅­μ–΄ ko μΏ λ₯΄λ“œμ–΄ ku ν‚€λ₯΄κΈ°μŠ€μ–΄ ky
λΌνŠΈλΉ„μ•„μ–΄ lv λ¦¬νˆ¬μ•„λ‹ˆμ•„μ–΄ lt λ§ˆμΌ€λ„λ‹ˆμ•„μ–΄ mk
λ§λ ˆμ΄μ–΄ ms λͺ°νƒ€μ–΄ mt λ„€λœλž€λ“œμ–΄ nt
λ…Έλ₯΄μ›¨μ΄μ–΄ no λ„€νŒ”μ–΄ ne ν΄λž€λ“œμ–΄ pl
포λ₯΄νˆ¬κ°ˆμ–΄ pt 포λ₯΄νˆ¬κ°ˆμ–΄(브라질) pt-br λ£¨λ§ˆλ‹ˆμ•„μ–΄ ro
λŸ¬μ‹œμ•„μ–΄ ru μŠ¬λ‘œλ°”ν‚€μ•„μ–΄ sk μŠ¬λ‘œλ² λ‹ˆμ•„μ–΄ sl
μ•Œλ°”λ‹ˆμ•„μ–΄ sq μ„Έλ₯΄λΉ„μ•„μ–΄ (킀릴) sr μ„Έλ₯΄λΉ„μ•„μ–΄ (라틴) sr-latn
μŠ€μ›¨λ΄μ–΄ sv 타밀어 ta 텔루ꡬ어 te
νƒœκ΅­μ–΄ th ν„°ν‚€μ–΄ tr μš°ν¬λΌμ΄λ‚˜μ–΄ uk
우λ₯΄λ‘μ–΄ ur μš°μ¦ˆλ² ν¬μ–΄ uz λ² νŠΈλ‚¨μ–΄ vi
쀑ꡭ어 (간체) zh 쀑ꡭ어 (번체) zh-tw    

 

 

Get Sample Source Code

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="robots" content="noindex, nofollow">
  <title>Setting editor UI language</title>
  <script src="https://cdn.ckeditor.com/4.25.1-lts/standard-all/ckeditor.js"></script>
</head>

<body>
  <textarea cols="80" id="editor1" name="editor1" rows="10"></textarea>

  <script>
    CKEDITOR.replace('editor1', {
      language: 'es'
    });
  </script>

</body>
</html>

 

 

 

 

 


μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€ 자리 ν‘œμ‹œμž

 

Editor Placeholder ν”ŒλŸ¬κ·ΈμΈμ„ μ‚¬μš©ν•˜λ©΄ νŽΈμ§‘κΈ° μ½˜ν…μΈ κ°€ λΉ„μ–΄ μžˆμ„ λ•Œ ν”Œλ ˆμ΄μŠ€ν™€λ” ν…μŠ€νŠΈλ₯Ό ν‘œμ‹œν•  수 μžˆμŠ΅λ‹ˆλ‹€. ν”Œλ ˆμ΄μŠ€ν™€λ”λŠ” μ‚¬μš©μžκ°€ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ νŽΈμ§‘κΈ°λ₯Ό μ°ΎλŠ” 데 도움이 되며 μ½˜ν…μΈ λ₯Ό μž…λ ₯ν•˜λΌλŠ” λ©”μ‹œμ§€λ₯Ό ν‘œμ‹œν•©λ‹ˆλ‹€. μž…λ ₯μ—μ„œ μ‚¬μš©ν•˜λŠ” κΈ°λ³Έ DOM placeholder 속성과 μœ μ‚¬ν•˜κ²Œ μž‘λ™ν•©λ‹ˆλ‹€ .

 

 

기본적인 placeholder 섀정을 μ§„ν–‰ν•˜κΈ° μœ„ν•΄μ„œλŠ” 'CKEDITOR.config.editorplaceholder' 섀정을 ν†΅ν•΄μ„œ λ³€κ²½ν•  수 μžˆμŠ΅λ‹ˆλ‹€. CKEditor 폴더 λ‚΄, config νŒŒμΌμ„ μˆ˜μ • μ‹œμ—λŠ” μ•„λž˜ 섀정을 μ΄μš©ν•˜μ—¬ μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 

config.editorplaceholder = 'Type your comment…';

 

 

Get Sample Source Code

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="robots" content="noindex, nofollow">
  <title>Editor Placeholder</title>
  <script src="https://cdn.ckeditor.com/4.25.1-lts/standard-all/ckeditor.js"></script>
</head>

<body>
  <textarea cols="10" id="editor1" name="editor1" rows="10"></textarea>
  <script>
    CKEDITOR.replace('editor1', {
      extraPlugins: 'editorplaceholder',
      editorplaceholder: 'Start typing here...',
    });
  </script>
</body>
</html>

 

 

 

 

 

@Junesker


 

λ°˜μ‘ν˜•