네이버 뷰어용 전자책 제작시 필독!!

Tip&Tech 2018.04.27 10:28

어제 메일 하나를 받았어요.

전자책을 제작했는데 다른 뷰어에서는 의도한 대로 보이는 책이 네이버 뷰어에서만 이상하다는 내용이었습니다.

마진과 들여쓰기를 px로 줬는데 네이버 뷰어에서만 반영이 되지 않는다.

EPUB은 뷰어에 따라 표현성의 차이는 생길 수 있지만 스타일 자체가 반영이 안될 수는 없거든요.
예를 들어 px 단위를 무시하는 리디 뷰어라도 px로 설정한 값 자체는 반영이 됩니다. 다만 글자크기를 키우거나 할 때 고정값인 px를 가변값으로 강제로 변경해요. px로 설정한 크기는 뷰어의 글자 크기를 바꿔도 변경되면 안되는데, 리디 뷰어는 이를 무시하고 강제로 변경을 시킵니다. 중요한건, px를 일단 반영시키고(여기까지는 표준) 리디의 정책상 px 단위도 뷰어가 강제로 조절을 한다(이건 정책)는 점이에요.

지원사업 발표도 있고, 샘플 없이 메일만 와서 
샘플 보내주시면 확인해 보겠다고 답메일 보내드렸는데 네이버에 문의해 직접 해결했다는 메일을 받았어요.

결론부터 말씀 드리면, 네이버 뷰어가 표준을 지키지 않았습니다!!!!!!!!!

네이버에 유통시키는 콘텐츠라면 px 단위를 사용하지 마세요.

이전 글에서 유통사 별로 스타일이 다르게 보이는 것은 유통사의 정책이지 표준과는 상관 없다는 설명을 했습니다.

주요 유통사 뷰어 표현성 비교 http://cafe.naver.com/bookfactory/69484

표현성 문제로 스타일이 다르게 보인다면 전자책 스타일을 수정하거나, 유통사 정책을 바꿔야 합니다.
99.9%의 경우는 유통사 정책을 바꿀 능력이 안되기 때문에 스타일을 수정하지요.
아, 그냥 한곳은 무시하자~도 해결 방법이에요 ^^;

그런데 네이버 뷰어는 정책이 아닌 표준 문제입니다.
                               http://www.odpf.or.kr/standard/2017/12/07/odpf-kr-01-1-2011.html
3.2.3: Length(길이)
All non-zero coordinate and size values must have specified units. All units defined by CSS1 and CSS2 are supported:
0이 아닌 모든 좌표와 크기 값은 반드시 단위가 명시되어야 한다. CSS1과 CSS2에 의해 정의된 모든 단위가 지원된다.

IDPF는 EPUB2.0.1 OPS v1.0.1에서 CSS1과 CSS2에 의해 정의된 모든 단위를 지원하도록 표준문서에 명시했습니다.

그런데 네이버 뷰어는 px, pt 등의 고정값은 무시를 한다네요.
앞서 설명드린 리디 뷰어처럼 px나 pt를 강제로 가변값으로 변환하는건 정책이지만
전자책에 사용된 고정값 자체를 무시해서 여백이나 글자 크기가 변경되지 않는 것은 표준 위반으로 볼 수 있습니다.

여기서 잠깐!
저도 전자책 제작을 할 때 px나 pt 같은 고정값은 가급적 사용하지 말라고 권합니다.
글자나 이미지에 고정값을 사용하면 여러가지 문제가 생길 수 있습니다.

font-size는 글꼴의 크기를 지정할 때 사용한다. font-size에는 em, %, px 등의 값이 올 수 있다. 하지만 글꼴의 크기를 뷰어의 설정에서 조정하는 경우가 많기 때문에 크기를 변경할 수 있는 가변 사이즈(em, %) 사용을 권장한다. 뷰어에 따라 처리하는 방식이 다른데 일부 뷰어는 강제로 px를 뷰어 설정에 맞추는 경우가 있고, px는 글자 크기를 변경하지 않을 수도 있다. 그래서 px를 사용하게 되면 일부 글자가 아주 작거나 아주 크게 나올 수 있다. 

1em과 100%는 기기의 기본 글꼴 크기에 맞춰진다. 1em이나 100%를 기준으로 하면 크기나 해상도에 관계 없이 가독성이 보장된다. 하지만 px로 크기를 맞추면 5인치의 고해상도 기기에서는 글자가 아주 작게 표현되고, 10인치의 저해상도에서는 글자가 아주 크게 표현되는 등 일정한 크기를 보장할 수 없기 때문에 글자 크기가 내용에 직접적인 영향을 주는 경우가 아니라면 px는 피하는게 좋다.

출처: http://www.epubguide.net/40 [내맘대로의 EPUB 제작 가이드]

하지만 사용을 권하지 않는 것과 표준을 지키지 않는 것은 다른 문제예요.
전자책을 편집하다 보면 px를 사용해야 하는 경우가 있습니다. 
그러니 리디처럼 px의 고유 속성은 무시하더라도 px 값 자체를 무시해서는 안되는데 네이버는 표준을 어기고 px 자체를 무시한다네요.
저도 문의가 아니었으면 모를 뻔 한 내용입니다. 

제가 도움을 드리지 못했는데 직접 문제를 파악하고 답변까지 주신 질문자님께 감사드려요.

긴 글이었지만, 결론은 이거예요.

네이버에 유통시키는 콘텐츠라면 px 단위를 사용하지 마세요.
그리고 네이버에 'px 단위는 왜 사용할 수 없느냐. 표준문서에 px도 지원하도록 되어 있다. 뷰어를 수정해 달라.'고 많은 분들이 요구해 주셨으면 합니다. 


설정

트랙백

댓글

주요 유통사 뷰어 표현성 비교

분류없음 2018.04.26 11:27
주요 유통사 뷰어 표현성 비교(모두 보기 http://bit.ly/2Fju5mG)

스타일/기능추가 스타일비고교보문고리디북스알라딘예스24
OS 지원 범위Android 4.44.0.44.0.44.0.4
저장위치내부/외부내부/외부내부/외부내부/외부
화면캡쳐자체기능사용차단
EPUB3✖︎
Fixed-layout✖︎✖︎✖︎
Script✖︎✖︎
MathML✖︎✖︎✖︎✖︎
팝업주석Footnote(같은 파일 안에 주석 포함)✖︎
display : none;기본 적용✖︎
CSS 적용✖︎
Endnote(다른 파일 안에 주석 포함)✖︎✖︎✖︎
글꼴 등 스타일✖︎✖︎✖︎
body
background-color
화면전체기본마진 제외화면전체기본마진 제외
border화면 전체, 첫페이지만, 밀림현상기본 마진 제외기본 마진 제외기본마진 제외, 첫페이지만
padding✖︎✖︎


작년 9월(http://epubguide.net/241)부터 틈날 때마다 조금씩 업데이트 하던건데 간만에 업데이트 해서 공유합니다.


표현성 비교가 왜 필요한지 모르는 분들을 위해 예를 하나 보여드릴게요.


아래 이미지만 봐도 감이 딱! 하고 오는 분이 계실거고, 아래 이미지의 의미가 무엇인지 파악이 안되는 분도 계실거예요.

전자책을 제작하며 표현성 문제를 경험하신 분들이라면 설명하지 않아도 이해하실거예요.


EPUB은 표준입니다. 적합성에 문제가 없는 EPUB은 어떤 EPUB 뷰어에서도 잘 보여요.

EPUB 표준문서에는 뷰어가 지켜야 하는 규칙도 들어있습니다. 이 규칙을 잘 지키면 표준 EPUB 뷰어예요.


만약 뷰어가 지켜야 하는 규칙이 10개인데 어떤 뷰어는 자체적인 규칙을 포함해 기본규칙10개 + 유통사 규칙 5개를 넣는다면?

이 역시 표준 뷰어입니다.


그리고, 이 부분이 표현성에서 중요한데,

IDPF 표준문서에 규칙을 지켜야 한다는 내용은 있지만 '어떻게' 지켜야 하는지에 대한 설명은 없습니다.

그래서 규칙1을 지킨다 해도 뷰어마다 규칙1이 적용되는 방식은 제각각일 수 있어요.


여기서 표현성 문제가 생깁니다.


표현성 비교표에서 body > background-color 항목을 보고 아래 이미지를 보세요.

모두 같은 EPUB입니다. 속성은 단 하나, 

<body style="background-color : red;">


교보 뷰어에서는 화면 전체가 빨간색으로 표현됩니다.




알라딘 뷰어 역시 화면 전체가 빨간색으로 표현됩니다.


리디 뷰어(캡쳐 방지때문에 일부만 보여요)는 뷰어의 자체 테두리가 있어 테두리 안쪽만 빨간색이 됩니다.



iBooks는 뷰어의 자체 테두리도 있고, 높이도 본문 내용에 따라 달라집니다.


캘리버는 교보, 알라딘처럼 전체가 빨간색입니다.


뷰어 모두 표준을 지켰습니다. 어떤게 더 좋다고 말 할 수도 없습니다. 각각 장단점이 있어요.

스타일은 하나인데 표준을 지킨 뷰어에서 같은 스타일이 조금씩 다르게 보입니다.

전자책 제작자라면 뷰어에서 스타일이 어떤 형태로 보이는지 잘 알아야되요.

그렇지 않으면 편집 프로그램에서 의도했던 대로 보이는데 유통사 뷰어에서는 다르게 표현될 수 있습니다.


주요 유통사 표현성 비교는

뷰어의 정책에 따라 큰 차이가 날 수 있는 CSS 스타일이나

전자책 편집에 활용할 만한 CSS3 스타일이

각 유통사 뷰어에서 어떻게 보이는지를 정리한 파일입니다.


CSS 외에도 편집에 쓰이는 기술들 중 뷰어에 따라 차이가 나는 것들도 포함되어 있습니다.


전자책 뷰어는 수시로 업데이트 되기 때문에 테스트 날짜를 표시했습니다.

테스트한 날짜에는 문제가 있는데 업데이트 해서 해결이 됐을 수도 있으니, 잘못된 부분 발견하시면 알려주세요.


그리고 전자책 만들다 표현성 문제가 있는 태그를 발견하시면 공유해주세요. 혼자서는 테스트 하기 어렵네요 ^^;

설정

트랙백

댓글

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

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




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



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


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


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


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



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

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



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


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

설정

트랙백

댓글


티스토리 툴바