EPUB 제작의 기초/EPUBCheck 오류

CSS 클래스 이름 "%1$s"을(를) 찾았지만, 패키지 문서에 "%2$s" 속성이 선언되지 않았습니다.

내.맘.대.로 2025. 9. 25. 08:59

Found CSS class name "%1$s" but no "%2$s" property was declared in the package document.

 

이 오류는 미디어 오버레이(Media Overlays), 즉 '소리 내어 읽기' 기능과 관련된 문제입니다.

오류의 의미는, 오디오 재생에 맞춰 텍스트를 강조하는 등 특별한 스타일을 담은 CSS 파일이 있지만, 이 CSS 파일이 미디어 오버레이 전용이라는 사실을 EPUB의 종합 설명서인 .opf 파일에 등록하지 않았다는 것입니다.


## 해결 방법

이 문제는 CSS 파일이 아닌 .opf 파일을 수정해야 해결됩니다.

  1. EPUB 프로젝트의 .opf 파일을 엽니다. (보통 content.opf 또는 package.opf 라는 이름입니다.)
  2. 파일 안에서 <manifest> 부분을 찾습니다.
  3. <manifest> 안에서 미디어 오버레이용 스타일이 포함된 CSS 파일에 해당하는 <item> 태그를 찾습니다.
  4. 해당 <item> 태그에 properties="media-overlay-style" 속성을 추가합니다.

### 수정 예시

  • 수정 전 .opf 파일:
  • XML
     
    <manifest>
      ...
      <item id="mo-styles" href="css/readaloud.css" media-type="text/css" />
      ...
    </manifest>
    
  • 수정 후 .opf 파일:
  • XML
     
    <manifest>
      ...
      <item id="mo-styles" href="css/readaloud.css" media-type="text/css" properties="media-overlay-style" />
      ...
    </manifest>
    

이렇게 properties 속성을 추가하면, 전자책 시스템은 해당 CSS 파일을 미디어 오버레이 기능의 일부로 올바르게 인식하게 됩니다.

반응형