iBooks 시리즈 메타 데이터


11

10.10의 iBooks에서는 책에 이미지와 같이 일련의 메타 데이터가있을 수 있습니다.

시리즈로 표시 될 수 있도록 외부 Epub (예 : ibook 스토어가 아닌)에 추가해야하는 메타 데이터는 무엇입니까?

series metadata


책이 iTunes의 일부일 때이 정보를 많이 편집 할 수있었습니다. 시리즈 제목은 TV 프로그램을 지원하기 위해 입력 한 편집 가능한 필드였습니다. 비디오 탭의 iTunes에서 TV 쇼 메타 데이터를 편집 할 때 여전히 볼 수 있습니다 (필드 이름은 책과 다릅니다). 현재 iBooks의 제한된 기능 (특히 메타 데이터 편집 부족)으로 인해이 정보는 iBooks 스토어에서 가져온 메타 데이터와 관련이 있습니다. 아마 iBooks SQLite DB에도있을 것입니다. 누군가가 거기서 찌르는 방법을 알고 있다면 그것에 대해 듣고 싶습니다.
Nick

답변:


12

나는 만들었지 만 꽤 까다 롭습니다.

개요:

당신은 Books.plist ~에 파일을 넣다 ~ / 라이브러리 / 컨테이너 / com.apple.BKAgentService / Data / Documents / iBooks / Books 당신이 시리즈에 갖고 싶은 책을 위해, 또한 BKSeries - *. sqlite 데이터베이스에 ~ / 라이브러리 / 컨테이너 / com.apple.iBooksX / Data / Documents / BKSeriesDatabase 그들과 시리즈.

다음은 내가 한 일입니다.

데이터베이스에는 4 개의 테이블이 있습니다. ZBKSERIESCHECK , ZBKSERIESITEM , Z_PRIMARYKEY Z_METADATA . 나는 처음 세 테이블 만 변경했다. "시리즈"는이 테이블의 책처럼 취급됩니다.

  1. 테이블에 책과 시리즈를 추가하십시오. ZBKSERIESCHECK . 표에는 5 개의 열이 있습니다.

    The table has 5 columns

    • Z_PK 기본 키입니다. 일련 번호 여야합니다.
    • Z_ENT Z_OPT 나는 방금 "1"로 끝냈다.
    • ZDATECHECKED 행이 작성된 날짜입니다. 제 경우에는 자동으로 할당되었습니다.
    • 자다 미드 책이나 시리즈의 고유 코드입니다.

    이것은 내가 추가 한 데이터가있는 테이블입니다.

    ID of the books and series

    내가 사용한 zAdamId는 Calibre에서 가져온 것이므로 어떤 숫자라도 사용할 수 있다고 가정합니다. 이 번호는 구입 한 시리즈 / 책과 다를 수 있습니다.

    zAdamId가 "1"인 행은 제 시리즈이고 다른 행은 책입니다.

  2. 테이블에있는 책과 시리즈 내의 관계를 추가하십시오. ZBKSERIESITEM . 이 테이블에는 16 개의 열이 있습니다.

    Table ZBKSERIESITEM

    • Z_PK , Z_ENT Z_OPT 이전 표에서 정의 된 것과 동일하지 않습니다. Z_PK 순차적이어야하며, Z_ENT Z_OPT 방금 "2"와 "1"로 완료했습니다.
    • 지콘터 zAdamId가 계열인지 여부를 정의합니다. "1"이 참이면 "0"이 거짓입니다.
    • 위치 첫 번째 책의 경우 "0"으로 시작하는 시리즈의 책 번호를 정의합니다.
    • 자다 미드 동일한 항목에 대해 이전 표에서 정의한 내용과 동일합니다.
    • 지우개 시리즈 / 서적의 저자입니다.
    • 제젠 시리즈 / 장르의 장르입니다.
    • ZSEQUENCEDISPLAYNAME 책이 시리즈의 구성원으로 표시되는 방법을 정의합니다. 예를 들어, 첫 번째 책의 경우 "Book 1"또는 "Volume 1"또는 "Vol.1"을 정의 할 수 있습니다. 이 문자열은 책 이름 앞에 붙습니다. 이 열은 계열에 대해 비어 있어야합니다.
    • 자 세리 사다 미드 책의 시리즈 zAdamId입니다. 시리즈의 경우 이것은 자다 미드 .
    • ZSERIESTITLE 시리즈의 이름입니다.
    • ZSORTTITLE ZTITLE 책이나 시리즈의 이름입니다.

    Table ZBKSERIESITEM contents

  3. 표 조정 Z_PRIMARYKEY .

    이 테이블에는 단 두 행만있는 것으로 나타났습니다. 앞의 각 표에 하나씩.

    Table Z_PRIMARYKEY

    여기에 Z_MAX 열의 MAX (*) 값 Z_PK 이전 표의 각. 예를 들어, 내 DB에서, 테이블 ZBKSERIESCHECK ( BKSeriesCheck ) 컬럼의 MAX (*) Z_PK "22"입니다.

  4. 변경 사항을 저장하십시오.

  5. Books.plist 파일. 시리즈의 각 책을 찾아 다음 키를 추가하십시오.

    • seriesAdamId 같이 번호 ~의 가치와 ZBKSERIESITEM ~ ZSERIESADAMID .
    • itemId 같이 번호 ~의 가치와 ZBKSERIESITEM ~ ZADAMID .
    • 시리즈 시퀀스 번호 같이 ~의 가치와 ZBKSERIESITEM ~ ZPOSITION + 1 . (테이블에서 "0"으로 시작한다는 것을 기억하십시오.)
    • 시리즈 제목 의 값을 가지는 String로서 ZBKSERIESITEM ~ ZTITLE .

    Books.plist file

  6. 파일을 저장하십시오. iBook을 닫으십시오 (처음부터 닫지 않았다면). 죽여라. com.apple.BKAgentService 방법. iBooks를 시작하십시오. 당신은 당신의 시리즈를 볼 수 있어야합니다.

    Results

노트

나는 이름을 짓지 않은 컬럼들을 비워 두었고 결과에 영향을 미치지 않았습니다.

네가 책을 많이 가지고있을 때 책과 시리즈를 제대로 올리는 것이 너무 어렵다고 생각한다. 언젠가는이 모든 일을 자동적으로하는 것을 보길 바랍니다.

이것은 나의 첫 번째 게시물입니다. 모두가 유용하다고 생각하기를 바랍니다.


1

나는 iBooks에서 책이 있다는 것을 알아 차렸다. ( 계승 ) iBooks가 시리즈의 멤버로 하이라이트하는 (제 경우에는 'The Farseer Trilogy'대신 'Eragon'이라고 부름). 이를 조사하기 위해 다운로드했습니다. 계승 (오래된 가상 머신에서) 레퀴엠을 사용하여 DRM을 제거 했으므로 책의 소스 코드를 훑어 볼 수있었습니다.

불행히도, 나는 나쁜 소식이있다. 나는 Sigil을 사용하여 'Eragon'이라는 단어를 검색했습니다. 'Eragon'이라는 단어는 epub 내의 메타 데이터에 아무 것도 나타나지 않습니다. 이는 가능하지 않음을 나타냅니다. iBook은 분명히 실제 epub 파일과 별도로 시리즈 정보를 유지합니다.


재미있는 점은, 다른 시리즈에서 2 권의 책을 추가 할 때 인터넷에 연결되어 있지 않을 때 함께 그룹화 된 이후로 여전히 iBook 데이터베이스에있는 어딘가에 아마도 어딘가에 저장되어 있다고 생각한다는 것입니다.
Bilal Syed Hussain

즉, 외부 출처에서 두 권의 책을 추가했거나 iBooks를 통해 두 권의 책을 구입하셨습니까?
John Coxon

나는 그들을 다른 컴퓨터에 가져 와서 ibooks가 있지만 인터넷이없는 컴퓨터로 옮겼습니다.
Bilal Syed Hussain

1

나는 해결책이있다 :

  1. iBooks 스토어로 가서 작업하려는 책 샘플을 다운로드하십시오.

  2. 확장자를 .epub에서 .zip으로 변경하십시오.

  3. 우편 번호를 추출하고 "OPS"(만화의 경우 OEBPS)라는 폴더를 삭제하십시오.

  4. 보유하고있는 eBook을 찾고 .epub에서 .zip으로 변경하십시오.

  5. 그것을 추출하고 OPS를 찾습니다.

  6. OPS를 샘플 전자 책 폴더로 이동하십시오.

  7. 샘플의 모든 파일을 선택하고 .zip을 만듭니다.

  8. Epub 확장을 변경하십시오.

  9. 시리즈의 각 도서에 대해 동일한 작업을 수행하십시오.

  10. iTunes로 드래그 앤 드롭.

  11. 동기화하고 거기에 간다!

iBook 상점에 들어가는 동안 조심하십시오. 편집 한 eBook이 보이면 "업데이트"라는 버튼이 표시됩니다. 업데이트를 클릭하지 마십시오. 다시 업데이트해야합니다.

sqlite를 편집하는 것보다 훨씬 쉬우 며 Mac 및 Windows에서 모두 작동합니다.


SRMed 전자 책에서 작동합니까?
Mark

샘플로 iBooks 스토어에 있다면 그렇습니다.
Dadiocoleman

0

나는 그것을 직접 시험해 보았고 epub을 저장하는 같은 폴더에있는 재생 목록에는 책 시리즈에 대한 정보가 있다는 것을 알게되었습니다. 메타 데이터 시리즈 제목과 seriesSequenceNumber가 설정됩니다. 하지만 불행히도 그것을 변경하지 않으면 책을 시리즈로 나열하지 못합니다. 또한 시리즈 제목 및 seriesSequenceNumber가 작동하지 않는다는 전자 책 자체의 메타 데이터를 설정합니다. 그런 다음 usr 폴더를 찾았습니다. 라이브러리 컨테이너 com.apple.IBooksX 데이터 BKSeriesDatabase 문서이지만 SQL 데이터베이스가 포함되어 있습니다. 정보가 거기에 저장되어 있을지도 모릅니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.