๋ง์ ์น ๊ฐ๋ฐ์๋ค์ด ์คํ๋ง์ ํ์ฉํด์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐํฉ๋๋ค. ๋ฌผ๋ก ๋ค๋ฅธ ํ๋ ์์ํฌ ๋๋ ๋ค๋ฅธ ์ธ์ด๋ค์ ์ด์ฉํด์๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ญ๋๋ค. ํ์๋ ์คํ๋ง ํ๋ ์์ํฌ๋ฅผ ์ด์ฉํด์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐํฉ๋๋ค. ๊ทธ๋์ ์ฌ๋ฌ ํ๋ซํผ ๊ฐ๋ฐ์ ์งํํ ๋ ๊ฒ์ํ ๊ตฌ์ฑ์ ํ์ํ ์๋ํฐ๋ฅผ ๋ณดํธ์ ์ผ๋ก ๋ง์ด๋ค ์ฌ์ฉํ๋ ์๋ํฐ๋ฅผ ์ ์ ํด ๊ตฌ์ฑํฉ๋๋ค. ๊ทธ ์ค, CKEditor๋ฅผ ์๋ํฐ๋ก ์ ์ ํ์ฌ ํ๋ซํผ์์ ์ฌ์ฉํ ์ ์๋๋ก ํฉ๋๋ค. ๋ฌผ๋ก ๋ค์ํ ์๋ํฐ๊ฐ ์กด์ฌํ๋ฏ๋ก ๊ทธ ์ค ํ๋๋ฅผ ์ ํํ์ฌ ํ๋ซํผ์ ๊ตฌ์ฑํ ์ ์์๊ฒ์ ๋๋ค. ์ค๋์ ์คํ๋ง ํ๋ ์์ํฌ๋ฅผ ํ์ฉํด CKEditor4 ์๋ํฐ๋ฅผ ์ ์ฉํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
CKEditor4 Builder ์ฌ์ฉํ๊ธฐ
1. CKEditor4 Builder ์ ์ํ๊ธฐ
์ 'CKEditor4 Builder ์ด๋' ์ ๋๋ฌ Builder ์ฌ์ดํธ์ ์ ์ํด์ฃผ์ธ์. ์ ์ํ๋ฉด ์๋์ ๊ฐ์ ํ๋ฉด์ด ๋ํ๋ฉ๋๋ค. Builder๋ CKEditor4 ๋ฒ์ ์ ๋ณด๋ค ๊ฐํธํ๊ฒ ์ค์ ํ๊ณ ์ค์ ๋ ์ฌ๋ฌ ์ ๋ณด๊ฐ ์ ์ฉ๋ ์๋ํฐ4๋ฅผ ๋ค์ด๋ก๋ ๋ฐ์ ์ ์๋ Builder ์ฌ์ดํธ์ ๋๋ค.
2. Builder ์ฌ์ดํธ์ ์ ์ํ์๋ง์ ๋ํ๋๋ Preset์ ์ ํํฉ๋๋ค.
- Basic : ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ์คํ์ผ(๊ตต๊ฒ, ๊ธฐ์ธ์์ฒด)๊ณผ ๊ฐ๋จํ ํ ์คํธ ์์ ์ต์ ๋ง ํฌํจํฉ๋๋ค. ์์ ํ ์คํธ ํธ์ง ์์ญ๊ณผ ๋น ๋ฅธ ์ ๋ ฅ ํ๋์ ์ด์์ ์ ๋๋ค.
- Standard : ๊ฐ์ฅ ํ์์ ์ธ ํ๋ฌ๊ทธ์ธ์ ํฌํจํ๋ ์ฌ์ ์ค์ . ํ์ฌ ์น ํ์ค์ ๋ฐ๋ผ HTML ์ฝํ ์ธ ๋ฅผ ์์ฑํ๋๋ฐ ๋์์ด ๋๋ W3C ํธํ ๋๊ตฌ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค.
- Full : ์ด์ ๋ฒ์ ์ CKEditor์์ ์ฐพ์ ์ ์๋ ๋๊ตฌ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. ์ฒ์๋ถํฐ ๋ชจ๋ ์ต์ ์ ์ํ๋ ์ฌ๋์๊ฒ ์ด์์ ์ ๋๋ค. ์ด ํจํค์ง์๋ ๋ชจ๋ ๊ณต์ ํ๋ฌ๊ทธ์ธ์ด ํฌํจ๋์ด ์์ง ์์ต๋๋ค.
ํ์๋ Choose Preset์์ 'Full' ํ์ ์ ์ ํํ์์ต๋๋ค.
3. ์ถ๊ฐ๋ก ์ฌ์ฉํ๊ณ ์ ํ๋ Plugins๋ฅผ ์ถ๊ฐ๋ก ์ค์ ํ๊ณ ์ํ๋ Skin๋ ์ค์ ํฉ๋๋ค.
Selected plugins์ Available Plugins ํญ๋ชฉ์ด ์์ต๋๋ค. ์ผ์ชฝ์ ํด๋นํ๋ Selected Plugins๋ ์ฌ์ฉํ๊ธฐ ์ํด์ ์ ํ๋ ํ๋ฌ๊ทธ์ธ ํญ๋ชฉ์ด๊ณ ์ค๋ฅธ์ชฝ์ ํด๋นํ๋ Available Plugins๋ ์ ํ ๊ฐ๋ฅํ ํ๋ฌ๊ทธ์ธ ํญ๋ชฉ์ ๋๋ค. ์ค๋ฅธ์ชฝ ํญ๋ชฉ์์ ํ๋ฌ๊ทธ์ธ ์ข ๋ฅ๋ฅผ ํ์ธ ํ ์ฌ์ฉํ๊ณ ์ ํ๋ ํ๋ฌ๊ทธ์ธ์ด ์๋ค๋ฉด ์ผ์ชฝ ํญ๋ชฉ์ ํด๋นํ๋ Selected Plugins ํญ๋ชฉ์ผ๋ก ์ฎ๊ฒจ ์ค์ ํฉ๋๋ค.
ํ์๋ ๊ธฐ์กด Preset์ ์ค์ ๋ ๊ทธ๋๋ก๋ฅผ ์ ์งํ๋ฉฐ ๋ค์ ๋จ๊ณ์ ํด๋นํ๋ Skin์ผ๋ก ๋์ด๊ฐ๋๋ค.
์ฌ์ฉ๊ฐ๋ฅํ ์คํจ์ ์ด 9๊ฐ๋ก ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค.
- Moono-Lisa
- Kama
- Moono
- Moono blue
- Office 2012
- Icy Orange
- Minimalist
- Flat
- N1Theme
4. ์๋ํฐ์์ ์ฌ์ฉํ ์ธ์ด๋ฅผ ์ค์ ํฉ๋๋ค.
์ผ์ชฝ์ ์๋ํฐ์์ ์ฌ์ฉํ ์ธ์ด ํญ๋ชฉ์ด๊ณ , ์ค๋ฅธ์ชฝ์ ์ ํ ์ธ์ด ํญ๋ชฉ์ ๋๋ค. ์ค๋ฅธ์ชฝ ํญ๋ชฉ์์ ์ํ๋ ๊ตญ๊ฐ์ ์ธ์ด๋ฅผ ์ ํํด ์ผ์ชฝ์ผ๋ก ์ฎ๊ฒจ ์ฌ์ฉ ์ธ์ด๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค.
5. ์ฌ๋ฌ ํญ๋ชฉ์ด ์ค์ ๋ CKEditor ์์ถํ์ผ์ ๋ค์ด๋ก๋ ๋ฐ๊ธฐ ์ํด์ ๋์ ํญ๋ชฉ์ ์ฒดํฌ ํ OS ๋ฒ์ ์ ํด๋นํ๋ ๋ฒํผ์ ํด๋ฆญํด ๋ค์ด๋ก๋๋ฅผ ์งํํด์ฃผ์ธ์.
์ผ์ชฝ ๋ฒํผ์ OS( Open Source ) ๋ฒ์ ์ด๊ณ , ์ค๋ฅธ์ชฝ ๋ฒํผ์ LTS(Long Term Support) ๋ฒ์ ์ ๋๋ค. CKEditor4๋ LTS๋ง 2028๋ ๋๊น์ง ์ ์ง๋ณด์ ๊ณํ์ด ์๋ค. ๊ทธ๋ฆฌ๊ณ LTS๋ ๋ผ์ด์ผ์ค ํค๊ฐ ํ์ํ๊ธฐ ๋๋ฌธ์ ๊ฐ๋จํ ์๋ํฐ ํ๋ฌ๊ทธ์ธ์ ์ฌ์ฉํ ์ ์๋๋ก OS ๋ฒ์ ์ผ๋ก ๋ค์ด๋ก๋๋ฅผ ์งํํฉ๋๋ค.
6. CKEditor4 ์์ถํ์ผ์ด ๋ค์ด๋ก๋ ๋์๋ค๋ฉด ์์ถ ํด์ ํฉ๋๋ค.
CKEditor4 ์ ์ฉํ๊ธฐ
1. STS๋ฅผ ์คํํฉ๋๋ค.
2. ํ๋ก์ ํธ ๋ด, static ํด๋์ ckeditor ํด๋๋ฅผ ๋ณต์ฌ + ๋ถ์ฌ๋ฃ๊ธฐ ํฉ๋๋ค.
ํ์๋ static ํด๋์ 'resources' ํด๋๋ฅผ ๋ง๋ค๊ณ ์์ถ ํด์ ํ ํด๋ ๋ด์ ์๋ ckeditor ํด๋๋ฅผ ๋ณต์ฌ + ๋ถ์ฌ๋ฃ๊ธฐ ํฉ๋๋ค.
3. ์๋ํฐ๋ฅผ ์ค์ ํ jspํ์ด์ง์์ CKEditor๋ฅผ ์ค์ ํฉ๋๋ค.
<html>
<head>
<title>์ผ๋ฐ๊ฒ์ํ</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.1/jquery.min.js"></script>
<script type="text/javascript" src="/resources/ckeditor/ckeditor.js"></script>
</head>
<body>
<form action="/board/insert" method="post">
์ ๋ชฉ : <input type="text" name="title" /><br/>
๋ด์ฉ : <textarea name="content" rows="5" cols="10"></textarea>
</form>
</body>
<script type="text/javascript">
$(function(){
CKEDITOR.replace("content");
});
</script>
</html>
CKEditor๋ textarea Element ์์ ์น์ด์ ์ฌ์ฉํ๋ ๋ฐฉ์์ด๊ธฐ ๋๋ฌธ์ textarea๊ฐ ํ์ํฉ๋๋ค. textarea์ name ์์ฑ์ ๊ฐ์ ์ค์ ํ๋ฉด CKEditor๊ฐ ์ค์ ๋ textarea์ ๋ชจ์ต์ ํ์ธํ ์ ์์ต๋๋ค.
4. ํ๋ก์ ํธ๋ฅผ ์คํํด ์ ์ฉ๋ ๋ชจ์ต์ ํ์ธํฉ๋๋ค.
@Junesker
'OPEN SOURCE > CKEditor4' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[CKEditor4] CKEditor๋? (1) | 2025.04.01 |
---|