EPUB2를 EPUB3로 변환해 보자 - 2) Sigil로 변환하기

앞 글(http://epubguide.net/224)에서 EPUB2를 EPUB3로 변환해야 하는 상황을 설명드렸습니다. 사족이 너무 길어져 글을 나누게 됐지만, 전자책을 만들다 보면 EPUB2를 EPUB3파일로 변환해야 하는 일이 생길 수 있습니다.


이번 글은 Sigil에서 EPUB2를 EPUB3로 변환하는 방법을 설명드리려고 합니다. 


EPUB2에서 epub:type 속성을 사용하거나 aside 등의 태그를 쓰면 아래처럼 오류가 발생합니다. 



뷰어에서 보면 아무 문제도 없지만, 유통사에 등록할 때 오류 때문에 등록이 안된다고 할 수 있어요.

오류를 없애는 방법은 2가지. 


1. 팝업 주석을 없애고 링크로 연결하거나 미주 처리 한다.

2. EPUB3로 바꾼다.


1번은 고려 대상이 아니기 때문에 EPUB3로 바꿔야 합니다. EPUB2를 EPUB3로 바꾸는 방법은 생각보다 간단해요.




1단계. 파일의 패키지 버전을 3.0으로 바꾼다



OPF 파일의 package version="2.0" 을 version="3.0"으로 수정합니다.

하지만 Sigil에서 수정을 하면 지원하지 않는 버전이라면서 2.0으로 바뀝니다. 

그래서 압축파일을 풀고(EPUB이 zip 압축 파일이라는건 설명 안하겠습니다.) 메모장이나 텍스트 에디터로 version="3.0"으로 수정을 합니다.


수정을 하면 다시 압축을 하고 확장자를 epub으로 수정합니다.




Sigil의 '기본설정'에서 파일 버전을 3.0으로 수정합니다.(안해도 될 것 같은데 확인해 보지는 않았어요)

그리고 파일을 Sigil에서 불러옵니다. 그럼 Sigil 상단 제목창에 EPUB3.0으로 표시됩니다.


여기까지 했다면 50%는 성공한거예요.





2단계. 목차를 생성한다.


EPUB2를 EPUB3 로 변환했기 때문에 NCX파일의 목차는 그대로 있습니다. 하지만 '차례' 창에 목차가 나타나지 않습니다. EPUB3 파일은 목차정보를 XHTML로 만들기 때문에 NCX파일이 필요 없습니다. NCX파일이 있으면 EPUB2 뷰어와 호환성을 유지할 수 있으니 EPUB2용 NCX 목차는 그대로 두고, EPUB3를 위한 nav.xhtml 파일로 목차를 새로 생성합니다. 


패키지 버전을 EPUB3로 변경하고 Sigil에서 불러오면 nav.xhtml이 하나 만들어집니다. 이게 EPUB3의 목차 파일입니다.



여기에 목차를 넣게 되는데, 목차를 만드는 방법은 EPUB2와 동일합니다.

메뉴의 [도구 > 차례 > Generate Table of Contents]로 생성합니다.






제목이 생성되면 오른쪽에 있는 '차례' 창에 목차가 표시됩니다.





3단계. 메타데이터를 수정합니다.


2단계까지 하고 EPUBCheck를 실행하면 오류가 몇개 나옵니다. 

그런데 오류를 보면 전부 OPF파일에서 발생한거예요.

아랫쪽에 toc.ncx 파일 오류가 있지만 이건 샘플파일 만들면서 NCX 파일을 정리하지 않아 그런거고, 정상적인 EPUB2파일이라면 2단계까지 했을 때 epub:type, aside, ruby 등의 오류는 사라지고 opf파일 오류만 남습니다. 



그리고 하늘색으로 폰트에 관한 INFO가 뜨는데 이건 오류가 아니라 신경쓰지 않아도 됩니다. (이렇게 쓰면 '몰라서 그러는거 아냐?' 라는 의심의 눈초리를 보내는 분이 계신데 ㅎㅎ, EPUB Publications 3.0.1에 있는 EPUB Core Media Types에 폰트는 OpenType, Woff를 지원하고 TTF는 없습니다. 그래서 TTF 폰트를 non-standard font type으로 인식하는 것 같아요^^)



opf파일 오류는 모두 메타데이터 때문입니다. EPUB2에서 EPUB3로 넘어가면서 메타데이터 정의가 많이 변경됐습니다. 그래서 EPUB2의 OPF파일에 있는 메타정보의 속성과 값을 변경해 줘야합니다.


EPUB3에서 필수로 요구하는 메타정보는 아래와 같습니다.


1. unique-identifier : <dc:identifier id=”pub-id”>urn:uuid:A1B0D67E-2E81-4DF5-9E67-A64CBE366809</dc:identifier>

2. 책 제목 : <dc:title>책 제목</dc:title>

3. 언어 : <dc:language>ko</dc:language>

4. 수정일 : <meta property=”dcterms:modified”>2011-01-01T12:00:00Z</meta>


여기에 추가로 '성실한' 편집자라면 ISBN, 출판사명(Publisher), 저자명 등의 추가 정보를 입력하면 됩니다.


Sigil의 메타데이터 편집기를 열고, 입력되어 있는 정보를 수정하면 되는데, 반드시 수정해야 하는 정보가 있고 EPUB2에 있는 정보를 그대로 사용할 수 있는 데이터도 있습니다.


메타 정보는 책마다 다르기 때문에 하나씩 설명하기는 어렵고 예로 보여드릴게요.


EPUB3 메타정보 

 EPUB2 메타정보

 

<dc:title>거울 나라의 앨리스</dc:title>

<dc:language>ko</dc:language>

<dc:identifier>urn:isbn:979-11-000000</dc:identifier>

<dc:publisher>심야책방</dc:publisher>

<dc:creator id="cre">루이스 캐럴</dc:creator>

<meta scheme="marc:relators" refines="#cre" property="role">aut</meta>

<dc:identifier id="BookId">urn:uuid:e0d7dc1c-afa9-49ba-9d25-1fce2f4857b1</dc:identifier>

<meta property="dcterms:modified">2017-06-02T14:30:40Z</meta>


<dc:title>거울 나라의 앨리스</dc:title> 


<dc:language>ko</dc:language>


<dc:identifier opf:scheme="ISBN">979-11-00000000</dc:identifier>


<dc:publisher>심야책방</dc:publisher>


<dc:creator opf:role="aut">루이스 캐럴</dc:creator>


<dc:identifier opf:scheme="UUID" id="BookId">urn:uuid:e0d7dc1c-afa9-49ba-9d25-1fce2f4857b1</dc:identifier>


<dc:date opf:event="modification">2017-06-02</dc:date>



빨간 색으로 표시된 부분이 수정되야 하는 메타데이터입니다. EPUB3에서는 opf:scheme, opf:role 등의 형식을 사용하지 않기 때문에 이 부분을 EPUB3에 맞게 수정을 합니다. 수정 방법은 간단합니다. 메타데이터 편집기에서 오류가 있는 정보를 삭제하고 다시 입력하면 되요.


이렇게 수정을 하고 EPUBCheck로 적합성 검증을 하면 오류가 사라집니다.



참고로, nav.xhtml은 전자책 뷰어에서 보이지 않습니다. 뷰어의 [목차] 메뉴에서 보는 정보여서 스타일로 편집을 하지 않아도 되지만, 그래도 스타일을 넣고싶다면 아래 두 태그의 스타일을 적용하면 됩니다.


/*목차*/ ol { margin-bottom : 1em; } li { font-size : 1em; margin-left : 1em; margin-bottom : 1em; list-style-type: none; }


제가 임의로 잡은거라, ol, li 태그의 스타일을 원하는 형태로 수정해 주면 됩니다.


그리고 이 목차 파일을 뷰어에서 볼 수 있게 하려면 opf 파일을 수정해 주세요.

<itemref idref="nav.xhtml" /> /*목차가 뷰어에 표시되고 [목차] 메뉴로 볼 수 있음*/

<itemref idref="nav.xhtml" linear="no"/> /*목차가 뷰어에 표시되지 않고 [목차] 메뉴로 볼 수 있음*/


여기까지 하고 저장을 하면 EPUB2 파일이 EPUB3 파일이 됩니다.

동영상, MP3 이런거 없어도 package version="3.0", nav.xhtml, 그리고 일부 메타정보가 수정되면 EPUB2와 똑같아 보여도 EPUB3 파일이에요.


오늘은 여기까지...




설정

트랙백

댓글


티스토리 툴바