분명 표지를 넣었는데 서재에서 표지 이미지가 보이지 않을 때

전자책을 만들었는데 썸네일에 표지이미지가 보이지 않을 때가 있습니다.
'지금 하지 않으면....' 이란 책의 표지가 초록색으로 보이지요? 두칸 옆에 있게 같은 책이에요.
두 파일은 똑같습니다. 딱 2가지 빼면요.




윈도우에서도 표지가 보이는지 모르겠지만, 맥에서는 표지 설정이 안된 책은 이렇게 보입니다.



표지가 보이지 않는 책을 Sigil로 열어주세요.
표지에 해당하는 파일을 선택한 후 마우스 오른쪽 버튼을 누릅니다.


그럼 이렇게 바로가기 메뉴가 뜨고 중간 쯤에 [Add Semantics...]라는 메뉴가 나옵니다.
이 메뉴를 선택하세요.


[Add Semantics...]의 대화창입니다.
이 대화창에서 [표지]를 선택하세요.


아직 끝이 아닙니다.
표지 이미지 파일도 표지로 등록을 해줘야되요.
표지 이미지 파일을 선택한 다음 마우스 오른쪽 버튼을 누릅니다.
바로가기 메뉴가 나오면 [표지 그림]을 선택하세요.



뷰어에 따라 표지.xhtml 파일과 표지 이미지 중 하나를 표지로 보여줍니다. 
 중 하나만 하면 표지가 제대로 표시되지 않는 뷰어가 생기니 둘 다 해주시는게 좋아요.

이 두 정보는 opf라는 파일에 저장됩니다. 
opf에 표지 정보가 제대로 저장이 되면
탐색기에서 이렇게 표지가 보여요.



그리고 서재에서도 표지가 표시됩니다.


끝으로...
표지 정보를 제대로 넣지 않은 EPUB이 너무도 많아
국내 전자책 유통사에 등록된 EPUB은 opf의 표지 정보를 이용하지 않습니다.
전자책 파일 등록할 때 업로드 한 표지 이미지로 서재 표지 정보를 표시합니다.
그러니 테스트를 위해 유통사 뷰어에 올렸는데 표지정보가 보이지 않아도 걱정 안해도 되요.
물론, 당연히, 반드시 표지 정보를 넣어야 하지만
표지 정보를 깜빡 해도 서점에 서지정보 등록할 때 표지 이미지를 잘 올렸다면 유통에는 문제가 없습니다.

설정

트랙백

댓글

EPUB2로 해결할 수 없는 문제

안녕하세요~


오늘은 전자책으로 해결할 수 없는 문제를 짚어보려고합니다.


메일로 어떤 분이 문의를 주셨어요.


왼쪽 페이지 아래에 이미지가 들어가야 하는데 왼쪽엔 공백이 생기고 이미지가 오른쪽으로 넘어가는 문제였습니다. 


조금 다급하셨던 것 같은데 해결 방법이 없어 이미지를 줄이거나, 왼쪽/오른쪽 어울림 처리로 편집을 수정하시라는 답변을 드렸습니다.



오늘은 왜 이런 형태는 해결 방법이 없는지 설명드리려고 합니다.

해결 방법이 아주 없는건 아니에요. @media 룰을 이용해 화면 크기에 따라 다르게 대응하거나 Javascript 를 이용해 해결할 수 있습니다. 하지만 @media룰도, Javascript도 모두 EPUB3에서 사용할 수 있습니다. EPUB2에서는 사용할 수 없어요. 


결론은 편집을 바꾸는 방법 외에 EPUB2로는 해결할 수 없습니다.


이미지는 텍스트에 따라 위치가 바뀝니다. 종이책도 마찬가지예요. 모든 편집자들이 이렇게 텍스트와 텍스트 사이에 이미지가 배치되기를 원합니다.


그런데 텍스트가 많아 이미지가 들어갈 수 있는 영역이 이렇게 작다면 어떡해야 할까요?


종이책에서는 텍스트를 옮겨 해결할 수 있습니다. 텍스트를 오른쪽 페이지로 옮기고 이미자가 들어갈 위치를 만들 수 있지요.


종이책을 편집하던 분들은 전자책에서도 이렇게 해달라고 요구를 합니다. 저도 이런 요구를 많이 받았어요.


그런데 EPUB은 '가변적'입니다.

종이책은 편집이 끝나 종이에 인쇄를 하면 우주가 멸망해도 편집이 바뀌지 않습니다. 신이 장난을 친다면 모를까 절대 편집이 바뀔 일이 없지요.


종이책 편집자의 요구를 반영해 텍스트를 페이지 오른쪽에 옮겨봅니다.

그런데 독자가 글자 크기를 키운다면?

똑같은 문제가 다시 생깁니다.


독자가 글자 크기를 줄이면 문제가 있던 부분이 해결이 될 수 있습니다.


독자는 전자책을 볼 때 글자 크기를 몇으로 놓고 볼까요?


100명의 독자가 전자책을 본다면 100명 모두 다른 형태로 전자책을 봅니다. 똑같은 전자책을 보는 독자는 단 한명도 없습니다.


글자 크기, 줄간격, 화면 여백, 글꼴 배경색 등 독자가 원하는 형태로 바꿔 보기 때문에 특정 뷰어에서 특정 글자크기로 볼 때 편집이 이상해도 99%의 독자는 아무 이상 없이 볼 수 있고, 특정 뷰어, 특정 글자 크기에서 아무 문제가 없어도 99%의 독자는 편집이 엉망인 책을 볼 수 있습니다.



오늘 문의를 받은 이미지는 위에 설명한 상황보다 더 안좋았습니다. 이미지가 화면 한 페이지를 거의 차지할 정도로 컸거든요.

이런 상황이면 거의 모든 뷰어에서 이렇게 보일거예요. 뷰어 위쪽에 1~2줄만 텍스트가 들어가도 이미지는 다음 페이지로 넘어갈 수 밖에 없습니다.


이럴 때 저는 제작을 의뢰한 분께 설명을 드립니다.

이미지가 얼마나 중요하냐, 이미지의 편집을 바꿔도 되냐?

이미지의 위치를 바꿔도 문제가 없느냐?


편집자를 설득하기 어려운 경우도 있지만, 결과물을 보여주고 글자 크기를 조절해 가며 어떤 문제가 생기는지를 설명하면 대부분은 이해를 해줍니다. 


본문 중간에 들어가는 이미지는 이렇게 왼쪽/오른쪽 어울림 처리를 하거나, 이미지 크기를 줄여서 해결합니다. 이미지 크기를 줄여도 본문 아래에 공백이 나오는 문제는 생깁니다. 하지만 텍스트가 화면의 1/2 이상 들어가기 때문에 위에 1~2줄 텍스트가 보이고 나머지는 텅 빈 공백으로 남는 것 보다는 보기 좋지요.


이렇게 편집한 책이 있습니다. 얼마 전에 제작 과정 소개해 드린 책이에요.

여름오후 출판사에서 나온 '나에게 어울리는 삶을 살기로 했다'는 책의 본문 중간에 한페이지 짜리 삽화가 들어갑니다. 



하지만 위와 같은 문제가 생길 수 있어 본문 제일 끝에 삽화를 넣었습니다.

삽화가 본문의 특정 내용과 연결이 되지만, 본문 전체 맥락과도 연결되어 있어 본문 끝부분어 넣오도 어색하지 않았습니다. 

두 페이지로 보면 이렇고, 스마트폰으로 본다면 '갖다 놓으면 더 좋고요.'를 보고 다음 페이지에 삽화가 나오겠지요.


만약 이 삽화가 본문 중간에 나온다면 고민을 해야합니다. 이 이미지는 1/2 크기로 줄일 수도, 오른쪽/왼쪽 어울림 처리도 할 수 없거든요.

이런 상황이면 이미지 부분을 자르고 텍스트는 캡션으로 넣었을 것 같아요. 삽화 위에 텍스트가 얹힌 부분을 잘라내면 이미지 높이(height)가 1/2로 줄어듧니다. 그럼 왼쪽 빈 공간에 이미지가 들어가겠지요. 텍스트는 캡션 스타일을 잘 만들어 이미지 아래에 넣으면 어떨까요?

아니면 왼쪽 공백을 무시하고 한 페이지로 들어가는 것도 하나의 해결 방법입니다.


EPUB2에서는 이런 문제들이 종종 생깁니다. EPUB은 HTML로 구조를 만드는데 HTML은 페이지가 아닌 스크롤을 고려해 만든 언어예요. 그래서 스크롤 화면에서는 문제가 없지만 페이지 화면에서는 생기는 문제가 있습니다.


이런 문제를 해결하는 방법은 '그에 맞는 편집을 찾는다'인 것 같아요.


그래도, HTML과 CSS로 저 문제를 해결할 방법을 고민해 봐야겠네요 ^^

성공하면 공유하겠습니다~


설정

트랙백

댓글

[문의] 대논쟁 철학베틀 스타일

문의가 한참 없다가 2개가 한번에 들어왔어요. 그래서 두번째 문의도 정리해 봤습니다.


문의가 들어온 책은 '대논쟁! 철학 베틀'이에요.


책이 없어 리디북스 미리보기 화면을 보니 이렇게 되어 있네요.



문의 내용은 2개였습니다.


1. 꼭 알아두자 글상자의 테두리는 그릴 수 있겠는데 글상자 위에 있는 '꼭 알아두자' 이미지는 어떻게 테두리에 겹치나?


2. 철학자 이미지 옆에 대화(?) 내용이 나오는데 이건 표로 만드는건가?



* 1번 테두리에 겹친 그림 설명

1번은 저도 자주 사용하는 스타일이에요.

블로그에도 여러번 언급한 적이 있는 스타일입니다.

참고를 하시려면 샘플 파일이 있는 아래 글을 확인해보세요.


http://epubguide.net/206


이게 같은 스타일? 이라고 생각하시는 분은... 안계시겠지요 ^^?

같은 스타일입니다. 이미지 대신 텍스트가 들어가고, 왼쪽이 아닌 가운데라는 점만 다를 뿐 이미지를 테두리 위에 겹치는 원리는 똑같아요.


'대논쟁 철학베틀' 스타일도 만들어 봤습니다. 제가 만든 스타일은 이래요.


.box_note {

border-radius : 15px;

border : 3px solid brown;

margin : 5px;

padding : 5px;

}


.box_title {

margin-top : -25px;

}


<div class="box_note">

<div class="box_title"> <img alt="img_note" src="../Images/img_note.png"/></div>

<p>앨리스는 언니와 함께 강둑에 앉아 있었다. 아무 것도 하지 않고 있자니 점차 몹시 지루해졌다. 언니가 읽는 책을 한두 번 흘깃 보았는데 거기엔 그림도 없고 대화도 없었다. “그림도 없고 대화도 없으면 책이 도대체 무슨 쓸모가 있는거지?”라고 앨리스는 생각했다.</p>

</div>


이미지 상자 위치는 글상자 안쪽에 넣어도 되고 바깥쪽에 넣어도 됩니다. 별 차이 없어요.


<div class="box_title"> <img alt="img_note" src="../Images/img_note.png"/></div>


이 코드를 글상자 바깥에 두고 싶으면 margin-top 대신 margin-bottom을 쓰면 됩니다.



*2번 철학자 이미지 옆 대화 설명


이건 표가 아닙니다.

그냥 이미지 float:left; 처리한거예요.

근데 float:left; 하면 이런 문제가 생겨요.



텍스트가 이미지를 벗어나면 이미지 아래에 붙습니다.

이미지 아래에도 '여백'이 생겨야 하는데 그 공간에 텍스트가 들어차지요.

제가 왜 '여백'을 강조했을까요?

저걸 해결하는 방법은 완전 초보라도 다 아는 여백 속성, margin을 이용하면 되기 때문이에요.

CSS는 응용이 중요하고, 그리고 간단합니다.

여백이 필요하면 여백을 주면 되는거예요.


그래서 이런 스타일이 나왔습니다.

'헉...' 소리 날 정도로 간단하지요?

물론, 저는 다른 스타일은 하나도 안주고, 설명에 필요한 스타일만 넣었기 때문에 간단한거예요. 여기에 글꼴을 넣고, 글자 크기를 바꾸고 줄간격이나 정렬을 추가하면 됩니다.

.img_philo {

float : left;

display: inline-block;

}


.txt_talk {

margin-left : 80px;

}

* 참고로, 설명을 위해 픽셀을 쓰고 이미지 크기도 지정하지 않았어요. 이미지 크기 지정하고, 여백은 이미지 크기에 따라 변하도록 %나 em을 쓰면 더 좋아요. 작은 화면에서는 이미지가 작게, 큰 화면에서는 이미지가 크게 나와야 보기 좋거든요.


여기까지가 '대논쟁, 철학베틀'의 스타일일거예요.

최종 결과물은 이렇습니다.




아마 이 책 CSS 코드를 열어봐도 큰 차이는 없으리라 생각합니다 ㅎㅎ

하지만 이 코드에는 한가지 문제가 있어요.

화면이 가로로 넓을 경우에 철학자 이미지가 위쪽으로 올라갈거예요.



이 문제를 방지하는 코드를 넣었을지 모르겠는데, 샘플만 봐서는 안들어갔을 가능성이 커보이네요.

그래도 별 문제는 없습니다. 최근엔 EPUB뷰어가 이렇게 가로로 긴 화면이 나오도록 하지 않거든요. iBooks나 캘리벌로 책을 열고 가로를 길게 만들면 책과 비슷한 범위에서 1페이지로 자르거나 2페이지로 나눠 보여줍니다. 그러니 저렇게 나온다고 해도 크게 문제되지는 않을거예요.


그래도, 화면이 아무리 넓어도 문제가 생기지 않는게 더 좋지 않을까요?

그리고 편집할 때 코드도 조금 복잡해요. 철학자 얼굴이 들어가는 위치에 똑같은 코드가 반복적으로 들어가야 하거든요.


clear:both; 속성 생각하셨다면 박수~~~

하지만 clear:both;로도 해결되지 않습니다. 그리고 clear:both; 속성은 제대로 모르고 쓰면 오히려 독이 되기도 해요. 몇몇 편집자가 이미지마다 clear:both;를 넣는데, 화면 크기를 마구 바꾸다 보면 이미지가 전혀 엉뚱한 곳에 나오거든요. 유통중인 책에도 이런게 몇종 있습니다.



clear:both:를 쓰면 이런 결과가 나올 수 있어요. 좀 더 가혹한(?) 테스트 환경을 만들어 보면, 이런 결과가 나올 수도 있습니다.


두번째 문장은 두번째 이미지에 와야 하는데 첫번째 이미지에 모든 문장이 붙은 것 처럼 보여요.


<div class="img_philo"><img alt="img001" src="../Images/img001.png"/></div>


<p class="txt_talk">그래서 앨리스는 일어나는 것보다 데이지 꽃다발이나 만드는 게 낫겠다고 생각하고는 (뜨거운 날씨 때문에 몹시 졸리고 바보가 된 느낌이라서 당연히 그럴 수 있었을 것이다), 데이지 꽃을 뽑기 시작했다. 그때, 갑자기 분홍 빛 눈의 하얀 토끼 한 마리가 가까이 뛰어왔다.&nbsp;</p>


<div class="img_philo"><img alt="img002" src="../Images/img002.png"/></div>


<p class="txt_talk">그래서 앨리스는 일어나는 것보다 데이지 꽃다발이나 만드는 게 낫겠다고 생각하고는 (뜨거운 날씨 때문에 몹시 졸리고 바보가 된 느낌이라서 당연히 그럴 수 있었을 것이다), 데이지 꽃을 뽑기 시작했다. 그때, 갑자기 분홍 빛 눈의 하얀 토끼 한 마리가 가까이 뛰어왔다. 그래서 앨리스는 일어나는 것보다 데이지 꽃다발이나 만드는 게 낫겠다고 생각하고는 (뜨거운 날씨 때문에 몹시 졸리고 바보가 된 느낌이라서 당연히 그럴 수 있었을 것이다), 데이지 꽃을 뽑기 시작했다. 그때, 갑자기 분홍 빛 눈의 하얀 토끼 한 마리가 가까이 뛰어왔다.</p>


그리고 코드 문제(라기 보다는 편집상 불편함)도 있습니다.

대화형태고 철학자 얼굴이 100번도 넘게 나오는 책이라면 이미지를 삽입하는 코드가 무한 반복되겠지요.


그래서 저는 이렇게 수정을 했습니다.


<p class="txt_philo01">그래서 앨리스는 일어나는 것보다 데이지 꽃다발이나 만드는 게 낫겠다고 생각하고는 (뜨거운 날씨 때문에 몹시 졸리고 바보가 된 느낌이라서 당연히 그럴 수 있었을 것이다), 데이지 꽃을 뽑기 시작했다. 그때, 갑자기 분홍 빛 눈의 하얀 토끼 한 마리가 가까이 뛰어왔다. </p>

<p class="txt_philo02">그래서 앨리스는 일어나는 것보다 데이지 꽃다발이나 만드는 게 낫겠다고 생각하고는 (뜨거운 날씨 때문에 몹시 졸리고 바보가 된 느낌이라서 당연히 그럴 수 있었을 것이다), 데이지 꽃을 뽑기 시작했다. 그때, 갑자기 분홍 빛 눈의 하얀 토끼 한 마리가 가까이 뛰어왔다. 그래서 앨리스는 일어나는 것보다 데이지 꽃다발이나 만드는 게 낫겠다고 생각하고는 (뜨거운 날씨 때문에 몹시 졸리고 바보가 된 느낌이라서 당연히 그럴 수 있었을 것이다), 데이지 꽃을 뽑기 시작했다. 그때, 갑자기 분홍 빛 눈의 하얀 토끼 한 마리가 가까이 뛰어왔다.</p>


어때요? 코드가 훨씬 깔끔해 졌지요?

txt_philo01 클래스를 철학자별로 하나씩 만들어서 철학자의 대화에 넣어주면 됩니다.

이미지를 무한 반복해서 넣지 않아도 되서 html 코드가 깔끔해 졌어요. 그리고 화면이 올라가는 문제도 해결을 했습니다.



극한으로 가면 여전히 약간의 문제는 보여요. 이건 줄간격을 넓히면 해결되지만 줄간격이 너무 넓으면 본문이 보기 싫기 때문에 적정한 선에서 조절을 하면 됩니다.



텍스트가 위쪽 이미지 아래 바짝 붙는건 이미지 위아래에 투명한 여백을 살짝만 줘도 해결이 되요. margin을 이용해 해결할 수도 있고요.


업그레이드한 스타일을 적용한 최종 결과물은 이렇습니다. 정상적인 가독 상황이라면 업그레이드 해도 차이는 없어요. 하지만 편집 시간이 달라집니다. 100개의 div 태그+ 이미지 태그를 넣는 것 보다는 100개의 clsss를 넣는게 훨씬 간단해요.





업그레이드 스타일은 철학자마다 스타일이 하나씩 있어야 하기 때문에 CSS가 복잡해 질 수 있습니다.

철학자가 100명이고 철학자가 한번씩 나온다면 100명의 CSS를 만들기 보다는 div로 이미지를 넣는게 좋아요.

철학자가 10명이고, 철학자가 수다스러워서 한명당 수십번 얘기를 한다면 이 스타일이 더 좋고요.


업그레이드 스타일이 궁금하신 분은 메일 주세요.


여기 올린 내용은 마음대로 써도 되지만 최소한의 양심은 지켜야 하는데, 그러지 못한걸 몇번 보고 나니 저도 조심스러워지네요.

출처를 밝히는 것 까지도 바라지 않습니다. 참고를 했으면 최소한 '내가 만들었다'라고 하지는 말아야지요.

설정

트랙백

댓글

[문의]패턴(웨이브)을 넣은 테두리

오랜만에 문의가 들어와 만들어봤습니다.


테두리 샘플 이미지


샘플 이미지처럼 위쪽과 왼쪽에만 이런 물결무늬 테두리를 넣을 수 있냐는 문의였어요.

border를 쓰면 실선, 이중실선, 점선 등의 테두리는 만들 수 있는데 물결무늬는 표현이 되지 않습니다. 이런 물결무늬를 표현하려면 border-image 옵션을 써야되요.


border-image 참고 : https://www.w3schools.com/cssref/css3_pr_border-image.asp


이걸 참고해서 코드를 만들면 이렇습니다.


.wave_edge {


border : 30px solid transparent;

margin : 10px;

padding: 5px;

-webkit-border-image: url("../Images/wavebox.png") round;


border-image: url("../Images/wavebox.png") round;

border-image-slice: 36%;

}

 


사용한 테두리 이미지는 이거예요. 설명을 위해 급조한 이미지라 매끄럽지 않지만, 보다 정교하게 만들면 결과물이 더 깔끔하겠지요?


이미지 크기는 중요하지 않습니다. 이미지 크기와 물결무늬 크기는 아무 관계가 없습니다. 다만, 너무 작으면 물결무늬가 커졌을 때 흐릿하게 깨질 수 있으니 낮은 해상도보다 높은 해상도를 권해드려요.


그런데 border-image를 쓰면 이렇게 나옵니다. 문의는 특정면에만 테두리를 치는건데 4면 모두 테두리가 나오지요.




이 문제는 응용력을 조금만 발휘하면 해결할 수 있습니다.

답을 알면 '겨우 이런거야?' 라고 생각할 정도로 아주 아주 쉽지요.


4면 테두리가 아닌 2면만 테두리를 치고 싶다.


borde-left, border-top은 알잖아요.


그럼 border-image-left, border-image-top도 당연히 있을거예요.


.wave_edge {

border-right : 0;

border-bottom : 0;

border-top: 30px solid transparent;

border-left: 30px solid transparent;

margin : 10px;

padding: 5px;

-webkit-border-image: url("../Images/wavebox.png") round;

border-image: url("../Images/wavebox.png") round;

border-image-slice: 37%;

}


border-right : 0; border-bottom : 0;은 없어도 되는데(되야 하는데) 일부 뷰어에서 점선이 생기네요.

그래서 테두리가 필요 없는 부분은 필요 없다고 선언을 해버렸습니다.


제가 사용하는 CSS 속성이나 초보 편집자가 사용하는 CSS 속성은 별 차이가 없습니다. 정말 예외적인 스타일이 아니면 책 한권에 들어가는 속성은 거의 비슷해요.

다만 초보 편집자는 응용을 잘 하지 못합니다. CSS는 제한된 속성을 얼마나 잘 응용하느냐에 따라 결과물이 엄청난 차이를 보입니다.


아래는 특정 면만 테두리를 적용한 결과물이에요. 교보와 알라딘 뷰어에서 캡쳐했습니다.


이건 알라딘 뷰어에서 본 결과


이건 교보ebook 뷰어에서 본 결과입니다.



설정

트랙백

댓글

테이블(table) 안쪽 여백(padding)과 가운데 정렬하기

오랜만에 스타일 팁 올립니다.


어떤 분이 테이블 안쪽 여백과 테이블 가운데 정렬 방법을 물으셨어요.


테이블(table) 태그는 기본 속성(attribute)을 몇개 갖고 있습니다.


글자 영렬(align), 테두리 모양(border), 배경색(bgcolor), 폭(width)...


전자책 만들 때 이런 속성은 사용하지 마세요!!!!!


태그 기본 속성을 사용해도 별 문제는 없습니다. 그런데 W3C에서도, IDPF에서도 스타일 편집은 CSS로, 그것도 외부 CSS로 하도록 하는 추세입니다. 


만들어 놓은거라 써도 상관은 없는데 앞으로는 이런거 전부 없앨거야~


그래서 이런 속성들 대부분은 HTML5에서 지원을 하지 않습니다.


그럼 이런건 어떻게 해야할까요? 

아래 표를 보세요. 위쪽 표는 테두리 색과 border-collapse 만 적용했습니다. 확인이 편하게 하려고 적용한 속성이고 이 두 속성을 제외하면 아무 스타일도 적용하지 않았을 때 테이블이 이런 모습으로 보여요.


이런 테이블을 아래쪽 표처럼 안쪽 여백을 주고, 테이블 자체를 가운데 정렬하려면 어떻게 해야할까요?

 


안쪽 여백이니 padding,가운데 정렬이니 text-align : center;를 주면 되겠지요?

그런데 이게 안먹힙니다.


여기서 2가지 문제가 생겨요. padding을 어디에 줘야 하는지, 그리고 text-align으로 가운데 정렬이 되지 않을 때 어떻게 가운데 정렬을 하는지.


먼저 스타일 코드를 보세요.


table, tr, td {

border : 1px solid #FF0000;

border-collapse: collapse;

}


.cell_padding {

padding : 1em;

}


.table_center {

display : table;

margin-left : auto;

margin-right : auto;

}


<table class="table_center">

<tbody>

<tr>

<td class="cell_padding">

안쪽 여백, 테이블 가운데 정렬

</td>

<td class="cell_padding">

안쪽 여백, 테이블 가운데 정렬

</td>

</tr>

<tr>

<td class="cell_padding">

안쪽 여백, 테이블 가운데 정렬

</td>

<td class="cell_padding">

안쪽 여백, 테이블 가운데 정렬

</td>

</tr>

</tbody>

</table>


1. padding은 셀(td)에 적용한다.


테이블에서 글자가 들어가는 곳은 tr 태그 안쪽입니다. table, td는 테이블의 구조를 만드는 태그고, td가 텍스트가 들어가는 셀을 만드는 태그예요. 그러니 텍스트가 들어가는 셀에 여백을 주고 싶다면 td 태그에 스타일을 적용해야겠지요.


2. 테이블을 가운데 정렬하기


테이블이나 div같은 상자를 가운데정렬 할때는 text-align 속성이 제대로 적용되지 않습니다.

적용할 방법이 없는건 아닌데 그럼 코드가 복잡해져요.

이럴 때 margin-left : auto; margin-right : auto;를 사용해 보세요.


div 박스일때는 display : table; 혹은 display : box; 속성도 같이 지정해야 합니다.

여기서는 display :table;이 없어도 되지만, 확실히 해주기 위해 추가했어요.


끝으로... 테이블을 오른쪽 정렬 하고싶다면?

.table_center {

display : table;

margin-left : auto;

}


이렇게 스타일을 바꿔보세요. 그럼 가운데 있던 테이블으 오른쪽으로 정렬됩니다.





설정

트랙백

댓글

ttf vs otf 폰트

내용 추가-20170824

네이버 나눔명조 OTF파일은 안드로이드 계열에서 일부 특수문자와 한자가 표기되지 않는 문제를 확인했습니다. 문제가 수정되기 전까지 네이버 나눔명조를 쓸 때는 OTF가 아닌 TTF파일 사용을 권해드립니다.


전자책을 제작할 때 폰트 파일을 포함시킵니다.

특정 폰트를 사용하면 반드시 폰트 파일이 포함되야하지요.

그런데 폰트 파일도 여러 종류가 있습니다. 


ttf, otf, woff, bitmap.... 


가장 많이 사용하는 폰트는 ttf일거예요.

윈도우에서 사용하는 폰트고, 국내 무료 폰트는 ttf로 제공하는 곳이 많습니다.


하지만 IDPF에서 권하는 폰트는 OTF예요.


물론 의무사항은 아닙니다.(It is advisable for a Reading System to support the OpenType font format, but this is not a conformance requirement; a reading system may support no embedded font formats at all.)


IDPF에서는 OTF 폰트를 권하고 있지만 최근까지 뷰어가 OTF를 제대로 지원하지 못했습니다. 뷰어 문제는 아니었어요. 구 버전 안드로이드 중 일부에서 OTF를 넣으면 표현이 되지 않는 문제가 있었습니다. 그래서 저도 OTF보다는 TTF를 주로 사용했지요.


그런데 EPUB3를 제작해 보신 분들은 TTF 폰트 사용시 info메시지가 표시되는걸 경험하셨을 거예요.


오류는 아닙니다.

TTF 파일을 사용해도 아무 문제가 없어요.

그래도 저런 메시지가 뜨면 화장실 갔다 뒷처리 안한 것 처럼 개운하지 못합니다.

EPUB2에서는 저런 메시지가 표시되지 않아요. 그래도 IDPF 표준문서를 보면 폰트는 OTF를 포함시켜야 한다고 되어 있습니다.(At least one file in OpenType format should always be included in the list.)

* http://www.idpf.org/epub/20/spec/OPS_2.0.1_draft.htm#Section3.4


EPUB3.01문서에는 이를 좀 더 강하게 요구하고 있습니다. 

Core Media Type에 사용할 수 있는 폰트를 OTF, WOFF로 명시해 놨습니다.


* EPUB3.01 Core Media Type http://www.idpf.org/epub/301/spec/epub-publications.html#sec-core-media-types


EPUB2때처럼 강제사항은 아니지만(but this is not a conformance requirement;) EPUB3에서는 적합성 검사를 할 때 표준 폰트가 아니라는 메시지를 보여주고 있습니다. IDPF의 다음 정책을 예상해 볼 수 있을거예요.


다행히 전자책을 볼 수 있는 최신 스마트기기에서는 TTF, OTF, WOFF 폰트를 모두 지원합니다. 유통사마다 차이는 있지만 TTF와 OTF는 지원이 됩니다.


IDPF에서 EPUB3.01 Core Media Type에 TTF를 제외시키고 OTF와 WOFF만 포함시켰다면 다음 표준에서는 OTF와 WOFF 사용을 조금 더 강하게 강제할 수 있습니다. 그렇게 될지는 결정이 나기 전까지 아무도 모르지만, 지금까지의 방향을 놓고 보면 그럴 가능성이 높다고 봐야겠지요.


물론 TTF를 사용할 수 없게 하지는 않을거예요. EPUB2.0문서에서도, 3.0 문서에서도 뷰어(Reading system)는 가능한 다양한 폰트를 지원하도록 하고 있습니다. 다만, OTF폰트는 반드시 하나를 포함시켜야 한다(At least one file in OpenType format should always be included in the list.)는 정책을 강하게 가져갈 수 있다는 의미예요.


오래 전에 테스트 했을 때 일부 OS에서 OTF 폰트에 문제가 있어 TTF를 주로 썼는데 앞으로는 TTF보다는 OTF를 활용해야 겠습니다. 


TTF를 쓴다고 문제가 되냐?

전혀 문제 될거 없습니다. 앞으로도 문제가 될 가능성은 아주 낮아요.

TTF를 쓰든 OTF를 쓰든 독자들은 아무 생각 없습니다. 독자는 책만 잘 보이면 불만이 없을거예요.


그래도 전자책을 제작하는 사람이라면 TTF와 OTF의 차이는 알고 있어야 하지 않을까요?


오래 전에 OTF는 문제가 있으니 TTF를 권장한다는 글을 쓴 적이 있는데(http://epubguide.net/114), 그 내용을 바로잡기 위해 이 글을 작성합니다. 그때는 TTF가 더 나은 선택이었지만, 지금은 OTF가 '더' 적합합니다.




설정

트랙백

댓글

글꼴 암호화(난독) 처리

폰트 저작권 관련 내용을 살펴보다가 일부 유료 폰트는 임베디드 할 때 암호화(난독)를 해야한다는걸 알게 됐습니다. (요즘 폰트 유통사 매출이 좋지 않은가봐요. 낚시 공문 돌리네요ㅜ.ㅜ 종이책 표지를 전자책에 그대로 사용해도 딴지 걸어요. 저작권법 상에 문제는 없지만, 폰트 업체들의 사용 계약을 들이밀며... 돈 많은 출판사에서 '불공정 약관'으로 맞고소 안해주려나...)


전자책 DRM은 업체마다 조금씩 다르지만 대부분 이런 2단계로 처리합니다.


1. EPUB 파일 암호화

   - EPUB 파일은 zip 형태의 압축파일입니다. 

   - 전자책을 보려면 EPUB 파일을 다운로드 하는데 이 파일은 sdcard 등에 저장되기 때문에 복사가 쉬워요.

   - 하지만 EPUB 파일 자체에 암호를 걸어 EPUB 파일을 빼내도 다른 뷰어에서 볼 수 없습니다. 


2. 압축 해제된 파일의 개별 암호화

   - 다운 받은 EPUB 파일을 뷰어에서 볼 수 있도록 압축을 풀어놓습니다. 

   - 주요 콘텐츠(본문 xhtml 파일, 이미지 등)는 암호를 걸어 압축이 풀려있어도 볼 수 없습니다.

   - 메타데이터나 스타일 등 콘텐츠 내용이 담겨있지 않은 파일은 암호가 걸리지 않습니다.

   - 폰트 파일 역시 암호화가 되어 있지 않습니다.

       * 유통사마다 암호화 되는 파일이 다름


둘 중 한가지 방식이 아니고 1, 2단계가 모두 적용이 되는거예요. 

EPUB파일 자체를 내려받았을 경우는 문제가 되지 않습니다. 다만, 전자책을 보려면 압축이 풀려야 하는데 이때 폰트가 암호화되지 않아요. 유통사 DRM에서 폰트를 암호화 시키지 않기 때문에 전자책에 사용 가능한 라이선스를 구입해도 일부 폰트는 사용을 할 수 없습니다.


IDPF에서는 EPUB 파일에 폰트를 추가할 때 암호화를 시키도록 했기 때문에 유통사가 DRM으로 암호화 하지 않는다고 문제되지는 않아요. 그리고 DRM에서 폰트를 암호화 시키면 EPUB 파일에 암호화 된 폰트가 들어갔을 때 이중으로 암호가 걸려 다른 문제가 생길 수 있지요. 그래서 IDPF에서도 EPUB파일을 제작할 때 폰트를 암호화 하도록 표준을 제안했습니다.


폰트 암호화는 Sigil에서도 지원을 해요. 아주 간단히 클릭 몇번으로 암호화가 가능합니다. 

그런데 문제는 폰트 암호화를 뷰어가 지원하느냐예요.


아쉽게도 국내 유통사 중에 IDPF의 암호화 폰트를 지원하는 뷰어가 없네요.

뷰어가 지원을 안해도 콘텐츠는 볼 수 있어요. 다만 암호화된 폰트가 지원되지 않기 때문에 시스템 기본 폰트(혹은 뷰어 기본 폰트)로 책이 보입니다.


뷰어별 폰트 암호화 지원 여부(2017년 6월 22일 기준)

유통사

 구글 Playbook

리디움 

캘리버 

 iBooks

 국내 유통사*

 지원여부

 지원

지원 

지원

 지원

 미지원

* 국내 유통사 : 교보문고, 리디북스, 예스24, 알라딘


국내 전자책은 대부분 무료 폰트를 사용하고 있습니다. 

폰트 이용 범위 때문에 본문에는 네이버 나눔체, 코펍체, 은글꼴 등을 사용하는데 이제 표지 파일 같은 이미지에도 라이선스를 요구하는 추세입니다. 그럼 종이책과 다른 폰트로 전자책 표지를 만들거나 전자책까지 이용 가능한 라이선스를 구입해야겠지요.


전자책 라이선스까지 구입을 했다면 본문에 유료 폰트를 써도 됩니다. 이때 폰트 암호화가 필요한지 확인을 해야하고요.


아직은 국내 뷰어에서 폰트 암호화를 지원하지 않기 때문에 임베드시 암호화를 요구하는 폰트는 전자책에 사용하지 않는게 좋아요. 


낚시(?)질에 당하는 일 없도록 폰트 구입시 라이선스 사용 범위와 조건을 잘 확인해서 사용하세요~






설정

트랙백

댓글

단위 em의 의미, 그리고 이미지로 글자 넣을때 편리한 팁

전자책 편집을 하다보면 em, px, %, pt, cm 등 다양한 단위가 나옵니다. 그 중에 가장 많이 나오는 단위가 em과 px에요.


px는 큰 이슈가 없습니다. 절대적인 크기이기 때문에 변하지 않습니다. 뷰어에 따라 글자크기나 일부 설정이 변경될 수 있고, 해상도에 따라 같은 화면크기(예를 들면 5")에서 1px의 크기가 다를 수는 있지만, 어째든 1px이라는건 변함 없지요.


그런데 em은 가변적인 크기입니다. 그기가 마음대로 변해요. 이런 가변크기는 %도 있어요. 글자 크기를 얘기할 때 100%를 1em이라고 설명하곤 합니다. 


font-size : 100%; = font-size : 1em;


강의를 듣는 분들이 대부분 초보라 %와 em의 차이를 설명하면 더 혼란을 느끼실 것 같아 이렇게 얘기하는데 엄밀히 두 단위는 차이가 있습니다. 


1em은 '시스템 기본 글자 크기'라고 설명할 때도 있습니다. 하지만 이것도 정확한 1em의 의미는 아니에요.


아래 예를 볼까요?


.test_1em {

font-size : 1em;

}


.test_2em {

font-size : 2em;

}


.font_change {

font-size : 1em;

}


<div class="font_change">

<p class="test_1em">em의 의미</p>


<p class="test_2em">em의 의미</p>

</div>


두 문단의 글자 크기는 어떻게 보일까요?

test_1em의 글자 크기는 1em입니다.

test_2em의 글자 크기는 2em이고요.

그런데 div의 font_change의 글자 크기는 1em이에요.


1em이 시스템의 기본 글자 크기라면 두 문단의 글자 크기가 같아야되요.

그런데 text_2em의 글자 크기는 2em으로 나옵니다. 아래 이미지 1번이 test_1em, 2번이 test_2em이에요.


1em의 정확한 의미는 '현재의 글자 크기'예요. 


이러면 또 설명이 어려워집니다.


test_1em 속성(font-size : 1em;)이 지정된 문단에서 1em은 위 이미지 1번 크기예요. test_2em(font-size 2em;)이 지정된 문단에서 1em은 2번 크기예요.


한번에 이해를 하신 분도 계시겠지만 좀 헷갈릴 수 있어요. test_2em은 분명 2em으로 글자 크기가 지정돼 있는데 1em이 2em 크기라는 얘기잖아요.


다시 예를 들어볼게요.(font_?em이 font-size : ?em이라 생각해 주시고...)


이런 글자 크기의 문장을 만들고 싶어요.


<p>이런 <span class="font_2em">글자 크기</span>의 문장을 만들고 싶어요</p>


이건 이해가 쉽게 되지요? 기본 글자보다 큰 글씨니까 2em을 주면 되잖아요. 


이런 글자 크기의 문장을 만들고 싶어요.


<p class="font_2em">이런 <span class="font_?em">글자 크기</span>의 문장을 만들고 싶어요">


이건 어떤가요? font_?em 속성의 글자 크기는 몇 em일까요?(글자 크기가 1/2라고 가정하고)


1em이라고 생각한 분은 틀렸습니다.

0.5em이라고 생각한 분이 맞아요.


본문 글자 크기가 2em인데, 글자 크기를 1/2로 줄이려면 1em이어야 하지 않나요? 그런데 1/4인 0.5em이 되야한다니요?


1em의 글자 크기는 '현재 글자 크기'입니다. 그러니 <p class="font_2em">으로 감싸인 부분의 글자 크기가 '현재의 글자 크기'가 됩니다. 따라서 <span class="1em">은 <p class="font_2em">과 같은 크기인거예요.


설명이 무지 복잡하고 난해하지요? ㅜ.ㅜ 

설명 능력이 부족해 이보다 쉽게는 설명을 못하겠네요. 직접 스타일을 만들어 테스트해 보면 쉽게 이해하실거예요.


em은 %와 다릅니다.


em은 글자 크기를 기준으로 해요.

%는 단위가 적용된 개체를 기준으로 하고요.


따라서 글자 크기 1em은 100%와 같습니다. 1em은 글자크기이고, 글자에 적용된 100%는 글자 크기를 기준으로 하기 때문이에요.


그런데 이미지에 적용되면 둘은 큰 차이를 보입니다. 





이 이미지는 가로 46px, 세로 28픽셀 이미지예요. 이 이미지에 em과 %를 지정해 볼게요.


.img_h_1em {

height : 1em;

}

.img_h_100p {

height : 100%;

}


<p><img class="img_h_1em" alt="img" src="../Images/img.png"/>의 의미(이미지 height 1em)</p>

<p><img class="img_h_100p" alt="img" src="../Images/img.png"/>의 의미(이미지 height 100%)</p>


결과



이미지 height : 100%;와 이미지 height : 1em;일때 두 이미지의 결과를 보세요.


이걸 보고 '아!' 하고 무릎을 탁 치는 분이 계셨으면 좋겠어요.


느낌이 팍! 하고 오지 않나요?

저는 이걸 깨닫고 그동안 만들었던 많은 책을 떠올리며 '전부 수정했으면 좋겠다'는 생각을 했거든요.


무슨 얘기냐고요?


폰트에 없는 특수 한자, 특수 문자, 이미지로 된 글머리 기호...


예를 들어 훈민정음 언해본을 EPUB으로 만든다고 생각해 보세요.

언해본을 위해 폰트를 넣을 수 없는 상황이고.

텍스트로 넣으면 이렇게 보입니다.



나눔 옛한글 글꼴이 배포되기 전에는 훈민정음 언해본을 제대로 표현할 수 있는 폰트가 많지 않았어요. 그리고 유료였지요. 전자책 만들려고 비싼 유료 폰트를 사기 힘든 영세 출판사에서는 글자를 이미지로 만들어 넣을 수 밖에 없었습니다. 그럼 이런 문제가 생겨요.



글자 크기를 키우면 이미지로 된 글자가 너무 작아지고,



글자 크기를 줄이면 이미지로 된 글자만 너무 켜지고


좀 과장이 섞여있지만 경험해 보신 분들은 100% 공감하실거예요.


이럴때 em을 쓸 수 있어요.



글자 크기에 따라 이미지가 커졌다가



글자 크기가 작아지면 이미지도 작아짐


sample.epub 파일을 첨부하니 참고하세요.


1em은 '현재 글자 크기'의 단위입니다.

현재 문단의 글자가 3em이라면, 이 문단 안에 스타일을 넣을 때는 3em이 1em의 글자크기라 생각하고 스타일을 적용해야되요. 설명이 깔끔하지 못하지만, 연습해보시면 이해 할 수 있을거예요.


그리고 em은 이미지에도 사용할 수 있습니다.

이미지와 글자 크기를 딱 맞춰야 할 때 em을 쓰면 글자 크기가 변경되도 이미지가 그에 맞춰 변경되요. 대신 글자를 이미지로 넣었다면 이미지 크기는 기본 글자 크기의 4배 정도로 크게 넣어주세요. 그래야 독자들이 글자 크기를 키워도 이미지가 깨지지 않아요. 기본 글자 크기에 이미지를 딱 맞추면 글자를 키웠을 때 이미지 글자가 깨져보입니다. 


설정

트랙백

댓글

네이버 나눔명조 사용시 주의하세요.(2017. 06. 16일자 기준)

이 글은 2017년 6월 16일에 작성됐습니다. 네이버 나눔글꼴이 업데이트 되면 이 글 내용은 신경쓰지 않으셔도 되요.


전자책 만들 때 네이버 나눔명조 사용하시는 분들은 아래 내용 확인하고 작업하세요.


폰트 파일에도 버전이 있습니다. 폰트도 오류가 생길 수 있고 새로운 코드가 추가될 수도 있어요. 그럼 새로운 버전을 내게 됩니다. 사용자들은 폰트 버전을 확인하는 경우가 별로 없어 '나눔명조'하면 모두 똑같다고 생각을 하지만 버전에 따라 다를 수 있습니다.


제가 갖고 있는 나눔명조 파일은 


나눔명조 v3.01

나눔명조 v3.011

모바일 나눔명조


나눔명조 v3.01과 나눔명조 v3.011은 파일명이 똑같이 NanumMyeongjo.ttf(otf), 글자 모양도 똑같아 그냥 보면 구분이 되지 않습니다. 파일 버전을 확인하려면 폰트 관리자로 열어봐야되요.



폰트 관리자로 파일을 열면 이렇게 폰트 버전을 확인할 수 있습니다.


갑자기 폰트 얘기를 왜 꺼냈냐 하면, 나눔명조 3.01버전에 문제가 있어서 이 버전으로 전자책을 만들면 모바일 뷰어에서 오류가 나기 때문이에요.


아래 이미지를 보세요. 같은 EPUB 파일에 한쪽은 나눔명조3.01, 다른 한쪽은 나눔명조3.011 버전을 적용했을 때 모바일(안드로이드) 기기에서 이렇게 보입니다. 본문에 나눔명조를 적용했는데 3.01은 굴림/고딕 계열의 시스템폰트로 대체됩니다. 


왼쪽이 나눔명조 3.01 오른쪽이 3.011 버전. 폰트 외 모든 설정은 동일함


이 문제를 확인한건 한참 됐는데 그동안은 문제라 생각하지 않았어요. 네이버 홈페이지(http://hangeul.naver.com/font)에서 최신 버전(3.011)을 배포하고 있었거든요. 1년 전인지 2년 전인지는 정확히 기억 안나지만 문제를 파악하고 새로 폰트를 내려받았을 때 수정된 버전이 올라와 있었습니다. 수정 버전을 넣으니 정상으로 보였고요. 


그런데 최근(2017년 7월 16일 기준) 다시 받아보니 문제가 있는 구버전 파일로 바뀌었습니다. 

이유는 모르겠지만 최근에 네이버에서 나눔명조 파일을 다운로드 받은 분이라면 나눔명조 파일로 전자책을 만들면 안드로이드 계열 스마트폰에서는 명조 글꼴이 반영되지 않을거예요. 아이폰 계열은 확인해 보지 못했습니다. 


PC는 나눔명조3.01이 반영되기 때문에 휴대폰에서 확인하지 않으면 이상 없다고 생각하고 유통사에 등록할 수 있습니다. 그러니 등록 전에 꼭 휴대폰에서 확인을 해보세요.



만약 나눔명조를 반영했는데 나눔명조가 아닌 시스템 기본 폰트가 반영됐다면 이 폰트를 다운받아 사용하세요. 


은바탕도 비슷한 문제가 있습니다. 은바탕은 버전이 1.02로 동일한데 2008년에 수정된 배포본이 있어요. 버전 변경은 되지 않아 나눔명조처럼 버전으로 확인은 어렵고, EPUB 파일에 넣어 스마트폰 뷰어로 확인해 봐야 문제가 있는지 알 수 있습니다.


은글꼴에 문제가 있는 분은 이 파일을 다운받아 사용하시면 정상으로 보일거예요.




이 글은 2017년 6월 16일에 작성됐습니다. 네이버 나눔글꼴이 업데이트 되면 이 글 내용은 신경쓰지 않으셔도 되요.

설정

트랙백

댓글

전자책(EPUB)의 품질(Quality)

얼마 전 모 출판사 영업자를 만났습니다.

전자책 제작과 관련해 얘기를 하는데 제작 업체와 스타일을 맞춰 만족할 만한 수준까지 오는데 1년 가까이 걸렸다고 하더군요. 이 작업을 다시 하고싶지 않아 같은 업체에 제작을 계속 맡긴다고 했습니다.


이 얘기를 듣고 깜짝 놀랐습니다.

무슨 스타일을 맞추는데 1년식이나 걸리지?

종이책을 기준으로 스타일을 잡고, 출판사에서 수정해 달라는 부분 수정하면 되는데 스타일을 잡는데 1년이 걸린다는건 상식적으로 이해가 되지 않았습니다.  


그런데 최근에 제게 문의를 주신 출판사 대표님을 보고 출판사와 제작사 사이에 무슨 일이 벌어지는지 이해를 할 수 있게 됐습니다. 출판사 대표님이 제작사에 콘텐츠 문제를 몇가지 얘기하며 수정을 요청했는데 제작사에서는 대표님이 전자책을 잘 몰라 그런다며 'EPUB의 특성'이라는 답변을 받았다고 합니다. 정말 대표님의 전자책에 대한 이해가 낮아서 그런건지 저한테 샘플을 보내 확인해 달라고 하셨습니다. 


전자책(EPUB) 파일은 뷰어로 봅니다.

뷰어로 볼 때 글자와 이미지가 제대로 보이면 문제 없다고 생각하지요.

그런데 뷰어로 보이는 부분이 전부가 아닙니다.

뷰어에 글자와 이미지 같은 콘텐츠가 배치되도록 하는 HTML과 CSS라는 코드가 정말 중요합니다.

제가 얘기하는 전자책의 품질은 이 부분입니다.


제가 확인한 제작사의 EPUB은 품질이 형편없었습니다. 

이름만 대면 알만한 규모가 큰 제작사였는데 이 파일을 만든 사람이 전자책 제작 경험이 있나 싶을 정도로 수준이 낮았습니다. 이러니 스타일 잡는데 1년이나 걸리지 하는 생각이 들더군요.


1. 불필요한 코드와 스타일 남발의 문제


* 콘텐츠와 제작사 공개를 원치 않아 내용 파악이 가능할 정도만 남기고 모자이크 처리를 했습니다. 모자이크 윤곽만으로 설명에 대한 이해가 어렵더라도 양해 부탁드립니다. 


불필요한 스타일과 코드가 가득한 제작사의 EPUB(왼쪽)과 이를 수정한 코드


제작사의 EPUB은 필요 없는 코드와 스타일이 가득했습니다. CSS 스타일시트에 정의하지 않은 스타일시트가 본문에 쓰이기도 했고, 


들어갈 이유가 '전혀' 없는 코드도 가득했습니다. 수십만원을 받고 전자책 제작을 전혀 모르는 사람이 편집 프로그램으로 대충 만든 결과물을 제공했던 것이지요.



<span> 태그는 단독으로 쓰일 이유가 전혀 없다. 


쓸 필요가 없는 <span>태그를 남발하고 class="db dbron2 co_23" 같은 의미 없는 속성을 반복해서 사용한다. <p class="txt b1 t1"> <p class="txt b1 t1"> 같은 속성도 쓸 이유가 전혀 없는데 거의 모든 본문에 사용됐다. 



이렇게 만든 결과물이 뷰어에서 제대로 보일리 없습니다. 아래 이미지는 제작사에서 만든 결과물이 뷰어에서 글자크기, 페이지 구분에 따라 어떤 문제가 생기는지 보여줍니다.



이미지의 배치 순서를 보면 아래처럼 오른쪽 어울림 처리한 작은 이미지가 먼저 나오고, 가운데 정렬 된 큰 이미지가 다음에 나와야 한다.(수정한 파일)




제작사의 원본 파일은 일부 뷰어에서는 제대로 보이지만 글자크기나 화면 크기에 따라 엉뚱한 결과가 나온다. 뒷쪽에 들어간 가운데 정렬 이미지가 먼저 나오고, 오른쪽 어울림으로 넣은 이미지가 본문 내용과 상관 없는 자리에 배치됐다.(제작사 원본 파일)


이런 문제는 'EPUB의 특성'이 아닙니다. 그냥 제작을 잘못 한 것 뿐입니다. 그런데 이 문제를 수정해 달라고 하자 EPUB의 특성이라는 답변을 받았다고 합니다. 쓸데 없는 코드가 반복되고, 필요 없는 스타일을 의미 없이 추가하다 보면 제작하는 프로그램에서는 제대로 보이지만 다른 뷰어에서는 엉뚱한 결과가 나올 수 밖에 없습니다. 이 문제를 샘플이 아주 잘 보여주고 있습니다.





2. '실력 없음'은 EPUB의 특성이 아니다.


문제는 이 뿐 아닙니다. 편집자가 CSS의 속성에 대한 이해만 조금 있어도 해결할 수 있는 문제조차 수정이 제대로 되지 않았다고 합니다. 



아래 이미지를 보면(모자이크 처리로 문제점이 한눈에 들어오지 않을 수 있습니다) 왼쪽 이미지는 본문 안에 배치된 사진이 화면 상단에 여백 없이 붙습니다. 오른쪽 이미지는 화면 상단과 사진 사이에 여백이 들어가지요.


배경색이 없었다면 본문 사진의 상단 여백은 아무 문제가 되지 않습니다. 그런데 본문에 배경색이 들어가면 오른쪽 처럼 상단에 여백이 없을 경우 편집에 문제가 있는 것 처럼 보입니다. 편집자라면 당연히 눈에 거슬릴테고 수정을 요청하겠지요.



왼쪽이 제작사, 오른쪽이 수정한 파일. 이미지에 여백을 살짝 주면 해결할 수 있다. 절대 EPUB의 특성 때문에 생기는 현상이 아니다.


EPUB의 특성은 맞습니다. 글자 크기나 화면 크기에 따라 사진이 앞쪽에 들어갈 수도 있고 텍스트 사이에 나올 수도 있습니다. 이렇게 화면 위에 텍스트 없이 사진이 먼저 나오지 않을 수 있지요. 저도 이런 부분을 놓치고 편집한 적이 많이 있습니다.


그런데 검수 과정에서 눈에 띄지 않아 지나친 것과, 출판사에서 문제점을 발견해 수정을 해 달라고 했는데 'EPUB의 특성' 운운하며 문제가 없다고 답변한 것은 차원이 다릅니다. 이 문제 역시 간단히 수정할 수 있었음에도 불구하고 제대로 조치를 취하지 않았다면 이건 실력이 없는것입니다. 



이런 예는 또 있습니다. 아래 이미지는 원래 본문에 텍스트와 오른쪽 어울림으로 이미지가 배치돼야 합니다. 그런데 이 역시 글자크기/화면 크기에 따라 이렇게(왼쪽 이미지) 본문 끝에 배치가 되었습니다. 어떤 뷰어에서는 제대로 보이지만 뷰어에 따라 이런 엉뚱한 결과가 나온 것입니다. 이 역시 간단히 수정을 할 수 있었습니다(오른쪽 이미지) 

수정을 하고 나니 어떤 뷰어에서도 오른쪽과 같은 오류는 나오지 않았습니다. 항상 왼쪽 이미지처럼 본문과 배치가 됐습니다. 수정이 어렵지도 않습니다. CSS에서 속성 한두개만 수정하면 끝나는 아주 간단한 작업입니다. 



이미지는 글자크기/화면 크기와 상관 없이 편집자가 배치한 곳에 표시되야 한다. 본문과 상관 없는 곳에 이미지가 표시되서는 안된다





3. 진짜 EPUB의 특성일 수도 있다. 하지만 방법이 없는건 아니다.


'EPUB의 특성'으로 어쩔 수 없는 부분도 있습니다. 아래처럼 이미지 아래에 텍스트로 캡션을 넣을 경우 한 페이지 내에 이미지와 캡션이 들어갈 공간이 없으면 다음 페이지로 텍스트가 넘어갑니다. 이건 진짜 EPUB의 특성으로 태그와 CSS를 이용해 해결하기 어렵습니다.


그래도 해결 방법이 전혀 없는건 아닙니다. 

저는 전자책을 제작할 때 캡션을 텍스트로 넣을지, 이미지로 넣을지를 고민합니다. 대부분 텍스트로 넣는데 간혹 텍스트를 이미지에 포함시키기도 합니다. 어떤 경우에 이미지로 넣는지 설명은 불가능합니다. 책의 특성에 따라 그때 그때 달라지기 때문이지요.




이 책에도 이미지 크기가 세로로 길어 캡션이 다음페이지로 넘어가는 경우가 생겼습니다. 대표님은 이게 마음에 들지 않아 한 페이지에 표시되기를 원했습니다. 


이 경우 해결 방법은 2가지입니다. 이미지에 텍스트를 넣어 다음 페이지로 넘어가지 않도록 하는 방법과 '제대로 된 설명'을 통해 이 문제를 받아들이도록 하는 것이지요. 저라면 제대로 된 설명을 해서 설득을 했을 것입니다. 


EPUB의 특성은 맞는데 'EPUB의 특성이니 어쩔 수 없다'는 말도 안되는 답변 대신, 왜 이런 문제가 생기고, 이미지로 넣었을 때의 장단점과 텍스트로 넣을 때의 장단점을 제대로 전달한 후 선택을 하도록 했어야합니다.




꾸준히 책을 내는 규모있는 출판사는 1년씩 걸려 스타일을 잡아주고, 가끔 전자책을 제작하는 작은 규모의 출판사에는 'EPUB의 특성'이라며 간단히 수정할 수 있는 것 조차 수정하지 않았다는건 말이 되지 않습니다.


그 전에, 스타일을 맞추는데 1년이 걸린다는 것 자체가 말이 되지 않습니다. HTML과 CSS에 대해 제대로 이해를 하고, 전자책이 홈페이지와 어떤 차이가 있는지를 알면 스타일을 맞추는데 1년이 걸리지 않습니다. 책 한권만 작업하면 출판사가 원하는 편집이 무엇인지 파악할 수 있어야지요.


출판사도 '전자책의 품질'에 관심을 가져야 합니다. 제작사에 맡겨놓고 결과물을 제대로 보지 않으면 이런 문제가 계속 생길 수 밖에 없습니다. 제작사에서 온 EPUB 파일을 유통사 뷰어에 넣고 제대로 보이는지 문제는 없는지 확인해야 합니다. 확인해서 문제가 있다면 수정을 해달라고 요구를 해야하고요.


끝으로...

전자책(EPUB)은 종이책과 다릅니다. 그래서 늘 종이책과 전자책을 똑같이 만들지 말라고 강조를 합니다. 하지만 이 차이를 제작 실력 부족을 감추기 위해 사용해서는 안됩니다. 전자책과 종이책은 분명 다르지만 'EPUB의 특성'을 핑계로 수정 가능한 '문제'를 EPUB의 '특성'으로 속이는 짓을 하는 전자책 제작자는 사라졌으면 하는 바람입니다. 



(출판사 대표님의 요청으로 일부 내용을 수정했습니다.)


설정

트랙백

댓글


티스토리 툴바