html

EPUB은 좀 까다로운 파일입니다. 작은 오류라도 생기면 골치가 아프죠. 그래서 오류를 다 수정해야 하는데, Sigil은 이 오류를 수정하는 도구와 방법을 모두 포함하고 있습니다. 그러니까 Sigil의 사용법만 잘 익히면 완전한 EPUB 파일을 만들 수 있어요.

이 글에서는 Sigil의 도구를 활용해서 EPUB 파일의 오류를 확인하고 그 오류를 수정하는 간단한 방법을 알아보겠습니다. 오류 수정이 끝나면 EPUB 만들기도 끝이에요.

EPUB의 오류 검사, 수정하기

HTML 오류 수정하기

EPUB에 사용하는 파일은 기본적으로 HTML 파일이니까 HTML 기본 문법을 잘 따라야 합니다. IE나 크롬 같은 브라우저에서는 HTML 문법에 오류가 있어도 자체적으로 잘 알아서 표시해주지만 EPUB에서는 그렇지 않고 그냥 오류를 내버립니다. 따라서 문서를 만들 때 HTML 문법 오류가 있는지 매번 확인하고 이를 수정해야 해요.

그나마 다행인 건 미리보기 화면에서 아래 그림처럼 오류가 있는 곳을 아주 자세히 실시간으로 알려준다는 거예요.

Sigil의 미리보기 화면에서 오류 모습

 

가운데에 보면 22째 줄 24번째 글자에 오류가 있다고 그 위치를 알려주죠. 그리고 그 뒤에는 태그가 열리고 닫히는 데 문제가 있다는 내용까지 알려주고요. <p> 태그로 시작했으면 </p> 태그로 끝나야 하는데 이게 맞지 않아서 생기는 오류였습니다. 다른 태그도 마찬가지죠.

CSS 오류 검사하기

HTML 오류 수정에 이어 이번에는 CSS 오류 수정이에요. CSS 오류는 자체적으로 오류 검사를 하지 않고 외부의 W3C에서 실행합니다. CSS에 오류가 있더라도 EPUB 파일을 이용하는데 아무런 문제가 없어요. 하지만 오류가 없어야 만든 사람이 원하는 모양대로 나오죠. 그러니까 오류 검사를 해서 오류를 수정하세요.

 

Sigil 도구 메뉴 - FlightCrew로 EPUB 검증하기

 

EPUB 오류 검사, 수정하기

다음은 마지막으로 EPUB에 대한 오류 검사입니다. 도구 메뉴에 있는 "FlightCrew로 EPUB 검증하기(V) F7 "이에요. 이 오류는 꼭 수정해야 합니다. 여기에 오류가 생기면 EPUB이 제대로 만들어지지 않습니다.

이 도구를 실행하면 제일 아래에 오류 창이 생기고 오류의 자세한 설명이 나옵니다. 오류를 더블클릭하면 해당 오류가 있는 페이지의 줄로 이동하니까 오류를 찾기가 쉬울 거예요. 혹시 오류가 있는 곳으로 이동하지 않는다면 도구 메뉴의 검색 - 찾기 메뉴를 이용해서 찾을 수 있어요.

 

유효성 검사 결과 모습 1

 

HTML, PNG, JPG 파일에서 생기는 오류는 오류 내용을 읽어볼 필요도 없어요. 대부분 파일의 주소나 링크가 잘못되어서 생기는 오류입니다.

위 그림의 첫째 줄에서 Sigil_1.png 파일이 오류가 있다고 나오는데, 이 그림 파일을 사용하는 문서에서 이미지 파일의 주소가 틀린 경우죠. 그림 파일의 주소는 "/images/Sigil_1.png"인데, 이 경로가 틀린 거예요. 혹은 문서에서는 이 Sigil_1.png 파일을 넣는 소스 코드가 있는데, 이 그림 파일이 추가되어 있지 않을 때도 오류가 생겨요. 그때는 Images 폴더에 그림 파일을 추가해주면 됩니다.

123.xhtml 문서도 마찬가지로 경로가 틀렸거나 문서가 아예 추가되어 있지 않은 경우고요.

 

유효성 검사 결과 모습 2

 

세 번째 줄에 있는 OEBPS/content.opf 오류는 조금 다른데요. 이건 EPUB의 기본요소가 빠져있다는 뜻이에요. language와 title이 없다는 뜻인데, 이건 블로그를 전자책으로 5. Sigil 도구 활용하기에서 소개한 메타데이터 편집기에서 입력하면 됩니다.

아래 창이 열리는데요. 제목, 저자를 입력하고 언어를 선택하고 저장합니다. 그리고 다시 유효성 검증을 하면 오류가 사라질 거예요.

Sigil 메타데이터 편집기

 

오류 화면의 마지막 줄에 있는 toc.ncx 관련 오류는 위에 나오는 오류를 다 수정한 후에 블로그를 전자책으로 5. Sigil 도구 활용하기에서 소개한  도구 - 차례 - Generate Table of Contents를 실행하면 없어져요.

기본적으로 오류는 파일 관련 오류가 많고 나머지는 도구를 활용해서 수정할 수 있어요. 그러니까 도구 활용법을 잘 알아둬야 하죠.

이렇게 오류를 다 수정하고 나면 저장하세요. 그러면 EPUB 파일이 만들어집니다.

생각보다 귀찮은 작업이고 어려워 보이긴 하지만 두 세 번만 해보면 이해할 수 있어요. 수정해야 할 내용이나 사용하는 도구가 매번 같거든요. 이렇게 만든 EPUB 파일을 블로그에서 공유하거나 전자책 전문 사이트를 통해서 판매할 수도 있습니다.

함께 보면 좋은 글

블로그를 전자책으로 1. 전자책의 종류
블로그를 전자책으로 2. EPUB을 만들기 위한 준비
블로그를 전자책으로 3. Sigil에 대한 소개
블로그를 전자책으로 4. HTML, CSS 파일 만들기
블로그를 전자책으로 5. Sigil 도구 활용하기

<<    전자책    >>
 
그리드형

블로그를 전자책으로 만들기 쉬운 이유는 바로 둘 다 기본 형식이 HTML과 CSS로 되어 있어서예요. 물론 HTML로 된 문서가 아니더라도 전자책으로 만들 수 있긴 하지만 블로그의 글들은 이미 HTML로 되어 있으니 그 중간 과정을 많이 생략할 수 있죠.

Sigil에서 HTML, CSS 문서를 만드는 건 블로그의 스킨을 수정할 때나 글을 쓸 때 HTML, CSS를 사용하는 것과 완전히 같아요. 그러니까 스킨 수정을 많이 해봤거나 글을 쓸 때 HTML 모드를 이용해봤으면 별로 어렵지 않은 작업입니다. 물론 HTML, CSS에 대해서 전혀 몰라도 Sigil에서 문서를 만드는 건 가능하긴 한데 될 수 있으면 간단한 HTML, CSS에 대해서는 공부를 하는 것이 좋겠네요.

HTML, CSS 문서 만들기

CSS 문서 만들기

CSS 문서를 만드는 방법은 두 가지예요. 하나는 에디트플러스나 노트패드++ 등을 이용해서 CSS 파일을 만들어서 Sigil에 추가하는 거고요. 다른 하나는 Sigil에서 직접 만드는 거죠.

 

Sigil에서 파일 추가

도구 메뉴에 있는 "+" 모양의 아이콘을 선택하거나 책 찾아보기의 Style 폴더에 마우스 오른쪽을 클릭해서 "기존 파일 추가"를 하면 이미 만들어진 css 파일을 추가할 수 있어요. Sigil에서 직접 css 파일을 만들고 싶으면 위 그림의 마우스 오른쪽 메뉴에서 "빈 스타일시트 추가"를 선택하면 돼요. 그러면 빈 스타일시트 문서가 만들어지는데 거기에 css를 작성하세요.

CSS는 블로그를 전자책으로 2. EPUB을 만들기 위한 준비에서 간단히 다뤘던 수준이면 됩니다. body, p, ul, ol, blockquote 등에 사용할 것만 있으면 돼요.

body {
color:#333;
font-size: 14px;
font-family: NanumGothic, Sans-serif;
padding:20px 10px
}

h1 {
font-size: 2em;
margin: 15px
}

뭐 이런 식이 되겠죠.

나는 CSS가 뭔지 전혀 모르겠다 하시는 분은 간단한 방법이 있어요. 티스토리 스킨 편집의 HTML/CSS 편집에서 CSS를 그대로 가져다 쓰는 거예요. 다 가져올 필요는 없고, body 부분을 가져오세요. 그리고 스킨마다 다르긴 하겠지만 대부분 스킨에 .article 어쩌고 {  } 하는 부분이 있을 거예요. 여기를 다 복사해오는데 .article 부분은 삭제하고 복사하는 겁니다. 예를 들어 .article p {   } 이렇게 되어있다면 .article을 지우고 p {  }만, .article a {  }이라면 a { }만 복사하는 거죠.

나는 이마저도 모르겠다 하시는 분은 그냥 빈 문서 그대로 놓으세요. 따로 방법이 있어요.

HTML 문서 만들기

HTML 문서를 만드는 방법도 CSS 문서 만드는 방법과 별로 다르지 않아요. CSS 파일을 추가하는 것과 똑같습니다. 이미 만들어진 문서를 추가하거나 빈 HTML 문서를 추가하는 거죠.

HTML 문서를 만들 때는 WYSIWYG 방식인 책 보기와 HTML 소스를 직접 편집하는 코드 보기 두 가지 방식이 있어요. 편한 대로 골라서 사용하세요. 하지만 EPUB에서는 HTML에 문법 오류가 있으면 안 되니까 어찌 됐든 코드 보기 방식을 통해서 오류를 바로잡고, 자잘한 수정을 많이 해야 해요.

블로그의 글을 화면에 보이는 그대로 복사해서 "책 보기" 방식에 붙여넣으면 CSS를 style로 그대로 적용해요. 그러니까 CSS를 전혀 모르는 분들은 글을 그대로 복사해다 붙여넣는 방법을 이용하면 편리합니다.

그런데 그냥 그대로 붙여넣으면 CSS 한 줄이면 될 것도 모든 문단, 모든 요소에 style이 붙어서 코드 보기에서 편집하기에 좋지 않아요. 그래서 그냥 블로그의 텍스트만 복사해서 붙이고 CSS는 CSS 파일에 넣는 게 좋죠.

스타일이 적용되지 않은 단순한 글만 가져다 붙이고, 나머지 편집은 도구 모음의 아이콘을 이용하거나 직접 HTML을 이용해서 작성하면 작성하는 도중은 귀찮지만 나중에 보정을 할 때 훨씬 편해집니다.

주의해야 할 점은 사진이나 동영상도 모두 EPUB 안에 포함되어야 한다는 거예요. 그러니까 HTML 문서를 만들기 전에 해당 글에 있는 그림 파일은 모두 내려받아 놓으세요. 그냥 글 전체를 복사해서 붙이면 웹 주소에 있는 그림을 가져다가 보여주니까 제대로 된 거처럼 보이지만 나중에 EPUB을 만든 후에는 보이지 않으니까 꼭 직접 하나씩 다 넣어줘야 해요.

그림 파일은 넣을 때는 아래 그림의 아이콘을 이용해서 넣으면 됩니다. 그림을 추가하면 그 그림 파일은 자동으로 EPUB 안에 포함돼요. "책 찾아보기"의 Images의 하위 메뉴에 그림이 추가된 걸 볼 수 있을 거예요.

Sigil의 도구 메뉴 - 사진, 링크 등

 

그림도 문서처럼 전체를 "책 찾아보기"에 한 번에 추가한 다음에 문서를 편집할 때 넣을 수 있지만 그림을 하나씩 삽입하는 게 빠뜨리지 않고 실수를 줄이는 방법이죠.

그리고 또 주의해야 할 게 링크예요. 글을 그냥 그대로 복사해서 붙이면 링크 주소도 그대로 복사되죠. 예를 들어 블로그의 글에 있는 글을 복사했는데, 내용 중에 내부링크 http://mathbang.net/123이 들어있다면 이 http://mathbang.net/123이라는 글도 123.html이라는 이름으로 만들어서 EPUB 안에 넣어주고 링크 주소를 바꿔줘야 해요.

http://mathbang.net/123 → ./123.html

이 문서를 EPUB 안에 포함하지 않을 거라면 클릭이 되지 않도록 http://mathbang.net/123이라고 그냥 단순한 문자로 표시하는 게 좋아요.

링크 주소를 수정하는 게 어렵다면 일단 문서를 다 만들어서 책 목록보기에 파일을 다 추가한 후에 도구 메뉴를 이용해서 링크만 따로 연결해도 괜찮아요. 링크를 수정하는 건 위 그림에서 오른쪽 끝에 있는 클립모양의 아이콘을 이용합니다.

EPUB 안에서 사용하는 그림, 동영상, 링크된 문서는 모두 EPUB 안에 포함되게 하는 것이 좋습니다. 그 안에서 모든 것을 다 할 수 있도록 말이죠. 반대로 말하면 EPUB 안에서 사용하는 그림, 동영상, 링크된 문서가 모두 EPUB 안에 있어야 해요. 파일이 없다면 아래 같은 오류 메시지가 나와요.

This OPS document is reachable but not present in the OPF <spine>. "Reachable" means that a reference of some kind that points to this resource exists in the epub.
  • 본문을 그대로 복사해서 붙이거나 문자만 붙인 후에 HTML 코드를 직접 편집
  • 사진, 동영상, 링크된 문서는 모두 EPUB 안에 포함시키고 그 링크도 EPUB 내부 링크로 수정

이 두 가지만 기억하면 되겠네요.

HTML과 CSS를 몰라도 글을 잘 붙여넣고, 편집기의 여러 기능을 사용하면 HTML, CSS 문서를 만들 수 있어요. 알면 더 좋은 문서를 만들 수 있겠지만 모른다고 해서 불가능한 건 아니니까 도전해 보세요. 그리고 하나씩 수정하다보면 HTML의 기본 문법에 대해서 이해할 수 있고, 이건 티스토리 블로그를 운영하는데 많은 도움이 됩니다.

함께 보면 좋은 글

블로그를 전자책으로 1. 전자책의 종류
블로그를 전자책으로 2. EPUB을 만들기 위한 준비
블로그를 전자책으로 3. Sigil에 대한 소개

<<    전자책    >>
 
그리드형

사실 전자책을 만드는 방법은 매우 쉬워요. 전자책을 판매할 수 있는 사이트들은 모두 전자책을 만들 수 있는 편집기와 변환 기능을 제공하니까요. 이런 편집기를 이용하면 그냥 문서 작성하듯이 전자책을 만들 수 있어요. 한글 파일이나 워드 파일을 만들고 이걸 전자책으로 변환할 수도 있고요. 티스토리 플러그인 중에 viaBook이라는 플러그인이 있는데, viaBook이 바로 전자책을 아주 쉽게 만들 수 있는 사이트입니다.

그에 비해 제가 쓰려고 하는 EPUB 만드는 방법은 귀찮고, 새로 배워야 하는 것도 많죠. 하지만 자기 손으로 만들어 먹는 집밥이 전자레인지에 돌려먹는 즉석식품보다 맛있는 것처럼 직접 EPUB을 만드는 것이 훨씬 더 좋은 결과물을 만들 수 있어요. 자기가 원하는 모습으로 만들기도 쉽고 나중에 수정하기도 더 쉽고요. 배포도 자유롭죠.

EPUB을 만들기 위한 준비

HTML

EPUB은 기본적으로 압축파일이에요. 이 압축 파일 안에 여러 파일이 들어가서 전자책이 되죠. 이 중에서 가장 중요한 파일은 xhtml 파일인데, 그냥 html 파일과 똑같아요. 그러니까 EPUB을 만들려면 HTML을 알아야 해요.

HTML을 많이 알면 좋지만 다 알 필요는 없고 필수로 들어가는 몇 가지만 알면 돼요.

hX: 제목
p: 문단
br: 줄 바꿈
a: 링크
ul: 순서 없는 목록
ol: 순서 있는 목록
li: 목록을 이루는 각 항목
blockequote: 인용구
img: 그림 넣기
object: 동영상 넣기

그 외에 div, span 정도만 알고 있으면 웬만한 epub은 다 만들 수 있어요.

왜냐하면 블로그 스킨을 꾸미는 데는 많은 HTML 요소들이 들어가지만 실제 본문을 쓸 때는 위에 나온 태그 정도만 필요하거든요.

블로그에 있는 글 하나를 선택해서 HTML 모드로 열어보세요. 실제 사용된 태그는 위에 있는 게 다 일 거예요.

CSS

HTML이 문서의 구조를 만드는 데 사용된다면 CSS는 디자인을 꾸미는 데 사용돼요.

글자 크기, 색, 정렬, 밑줄, 간격 등 모든 것을 할 수 있어요. CSS는 꾸미기 나름이라 꾸미고 싶은 정도에 따라 알아야 할 내용에 차이가 많아요.

background: 배경
border: 테두리
color: 글자색
font-size: 글자 크기
font-family: 글꼴
margin: 바깥쪽 여백
padding: 안쪽 여백
text-align: 정렬
line-height:  줄 간격

여기에 class, id를 알면 됩니다.

생각보다 많이 몰라도 상관없죠? 블로그의 글에만 적용되는 CSS가 많지 않으니까요.

티스토리 블로그의 스킨을 수정할 수 있는 정도라면 HTML과 CSS를 충분히, 어쩌면 넘치게 알고 있다고 할 수 있죠.

혹시 모르는 HTML과 CSS가 있다면 W3Schools.com에서 공부할 수 있어요.

별로 어렵지 않은 HTML, CSS니까 다 이해하는데 한 두시간이면 될 거예요. EPUB 문서를 만들면서 실제 연습이 되니까요. 전자책을 만들 때 사용할 블로그의 글들이 한 두개만 있는 건 아니잖아요. 수십, 수백개의 문서를 이용하다보면 자연스럽게 터득하게 되죠.

함께 보면 좋은 글

블로그를 전자책으로 1. 전자책의 종류
txt, pdf, zip 파일을 epub으로 변환하기
전자책 무료 다운로드 - 직지 프로젝트 epub 파일

<<    전자책    >>
 
그리드형

블로그에 애드센스를 넣는 위치는 여러가지가 있지만 상단에 넣는 것이 가장 수익이 많이 나죠. 본문 위에 300x250를 두 개 넣거나 336x280을 한 개 넣는 경우를 제일 많이 본 것 같네요.

지금 이 블로그는 336x280을 본문 오른쪽에 넣고 있는데, 나름 수익이 괜찮아요. 미디어다음이나 네이버 뉴스에도 본문 오른쪽 상단에 광고가 있잖아요. 다음뷰의 뷰애드도 본문 오른쪽에 넣어야 하는 규정이 있어요.

개인적인 경험으로는 본문 상단에 한 개를 넣을 때는 텍스트 광고의 클릭율이 높고, 본문 오른쪽에 놓을 때는 이미지 광고의 클릭율이 높더라고요. 대체로 이미지 광고의 단가가 더 높기때문에 저는 본문 오른쪽 광고를 선택했어요.

애드센스를 본문 상단 오른쪽에 넣는 소스

간단한 html과 css만 알면 할 수 있어요.

알아야할 html은 div에요. 보통 다른 블로그의 글에 보면 table을 많이 사용하는데, table보다 div가 더 효과가 좋다는 것만 알려드릴께요. 자세한 건 이 글에서 논할 필요가 없으니까요.

알아야할 css는 margin과 float 두 개예요.

간단하죠?

이제 html과 css를 어떻게 조합해야 하는 지 알려드릴께요.

<div class="adsense">
애드센스 광고 코드
</div>

[샵샵_article_rep_desc_샵샵]

스킨 편집의 - html/css - skin.html에서 [샵샵_article_rep_desc_샵샵]을 찾아서 그 위에 애드센스 광고 코드를 넣으세요. 본문의 너비에 따라 300x250이나 336x280을 넣으시면 돼요.

.adsense {float:right;margin-left:20px;margin-bottom:10px}

다음은 style.css에 위 내용을 넣으세요. adsense 앞에 점(.)이 있는데, 이것까지 다 넣으셔야 해요. float:right 이 부분이 광고를 본문 오른쪽에 나타나게 하는 겁니다. margin-left는 애드센스 광고 왼쪽의 여백(본문과의 거리), margin-bottom은 애드센스 광고 아랫쪽의 여백의 크기를 나타내요.

애드센스 광고 본문 상단 오른쪽에 넣기 소스

자 끝났어요. 소스를 제대로 넣었다면 아래 그림처럼 나올거예요.

애드센스 광고 본문 상단 오른쪽에 넣기

애드센스의 수익은 블로그 주제에 따라서, 애드센스의 위치에 따라서, 광고의 크기에 따라서 달라지니가 자기 블로그에 맞는 걸 잘 선택해서 넣으세요. 여러가지 방법을 알아두었다가 이리저리 넣어보고 본인의 블로그에서 가장 수익을 많이 내는 방법을 찾아보세요.

그리드형

+ 최근글