Kobo gloゲット2012年は電子書籍元年。ということで、国内でAmazom Kindle,rakuten kobo共に出そろった(ソニーReaderはかなり前からあるけど)。結局、Amazonでも大衆価格にはもっていけず、KoboストアもKindkeストアも値段は変わらず。大体、文庫本だと電子書籍の値段は10%~20%下がったくらい。そして、amazonでその書籍の文庫本を見ると、マーケットプレイスで100円とか300円とかで売っているという・・。そして、kindle paperwhiteが200g程度、kobo gloが190g程度と、文庫本より重いし。何冊も入れておけるじゃん。という意見もあるが、音楽じゃないので、同時に読むのは1冊なのである。そして基本、電車の中でしか読まないのである。やっぱり使い道がない・・・。使い道がないんだけど、ちょっと使ってみたいという好奇心だけで年末にビックカメラで買ってしまったkobo gloであった。一応、Mac-OSXも対応している。
セットアップでトラブル 続きを読もうと、7巻以降をダウンロードして転送しようと思ったらもう2GB一杯だった。コミックを読もうとすると2GBは少ないな。コミックの場合何冊も端末に入れておけるのは重要かもしれない。 MacBookAir:.kobo tuck$ ls -al total 19184 drwxrwxrwx 1 tuck staff 4096 1 1 12:12 . drwxrwxrwx 1 tuck staff 4096 1 6 16:57 .. drwxrwxrwx 1 tuck staff 4096 12 31 13:24 Kobo -rwxrwxrwx 1 tuck staff 9713664 1 6 07:04 KoboReader.sqlite -rwxrwxrwx 1 tuck staff 4519 1 6 05:24 Trolltech.conf -rwxrwxrwx 1 tuck staff 33 12 31 22:32 affiliate.conf -rwxrwxrwx 1 tuck staff 67 12 31 13:23 device.salt.conf drwxrwxrwx 1 tuck staff 4096 12 31 22:37 dict drwxrwxrwx 1 tuck staff 61440 1 1 12:05 images drwxrwxrwx 1 tuck staff 4096 1 1 12:05 kepub drwxrwxrwx 1 tuck staff 4096 12 31 13:30 slideshow -rwxrwxrwx 1 tuck staff 83 1 6 06:48 version この中のKoboReader.sqliteがコンテンツを管理するデータベース。大したことしてないくせに、やたらデータベースのサイズがでかいな。いけねてねーなー。。sqliteなので、MacOS-Xだと標準でsqlite3が入ってる。 >sqlite3 KoboReader.sqlite とすれば、データベースの中身が見れる。 table|DbVersion|DbVersion|2|CREATE TABLE DbVersion( version INTEGER NOT NULL, PRIMARY KEY(version)) table|content|content|3|CREATE TABLE content( ContentID TEXT NOT NULL, ContentType TEXT NOT NULL, MimeType TEXT NOT NULL, BookID TEXT, BookTitle TEXT, ImageId TEXT, Title TEXT COLLATE NOCASE, Attribution TEXT COLLATE NOCASE, Description TEXT, DateCreated TEXT, ShortCoverKey TEXT, adobe_location TEXT, Publisher TEXT, IsEncrypted BOOL, DateLastRead TEXT, FirstTimeReading BOOL, ChapterIDBookmarked TEXT, ParagraphBookmarked INTEGER, BookmarkWordOffset INTEGER, NumShortcovers INTEGER, VolumeIndex INTEGER, ___NumPages INTEGER, ReadStatus INTEGER, ___SyncTime TEXT, ___UserID TEXT NOT NULL, PublicationId TEXT, ___FileOffset INTEGER, ___FileSize INTEGER, ___PercentRead INTEGER, ___ExpirationStatus INTEGER, FavouritesIndex NOT NULL DEFAULT -1, Accessibility INTEGER DEFAULT 1, ContentURL TEXT, Language TEXT, BookshelfTags TEXT, IsDownloaded BIT NOT NULL DEFAULT 1, FeedbackType INTEGER DEFAULT 0, AverageRating INTEGER DEFAULT 0, Depth INTEGER, PageProgressDirection TEXT, InWishlist BOOL NOT NULL DEFAULT FALSE, ISBN TEXT, WishlistedDate TEXT DEFAULT "0000-00-00T00??.000", FeedbackTypeSynced INTEGER DEFAULT 0, IsSocialEnabled BOOL NOT NULL DEFAULT TRUE, EpubType INT NOT NULL DEFAULT -1, Monetization INTEGER DEFAULT 2, ExternalId TEXT, Series TEXT, SeriesNumber TEXT, Subtitle TEXT, WordCount INTEGER DEFAULT -1, Fallback TEXT, PRIMARY KEY (ContentID) ) index|sqlite_autoindex_content_1|content|4| index|content_attribution_index|content|5|CREATE INDEX content_attribution_index \ ON content (Attribution) index|content_title_index|content|7|CREATE INDEX content_title_index ON content (Title) index|content_date_last_read_index|content|8|CREATE INDEX content_date_last_read_index \ ON content (DateLastRead) table|shortcover_page|shortcover_page|10|CREATE TABLE shortcover_page ( shortcoverId TEXT not null, PageNumber INTEGER, FormattedPage TEXT, PRIMARY KEY (shortcoverId, PageNumber)) index|sqlite_autoindex_shortcover_page_1|shortcover_page|11| table|volume_shortcovers|volume_shortcovers|12|CREATE TABLE volume_shortcovers( volumeId TEXT NOT NULL, shortcoverId TEXT NOT NULL, VolumeIndex INTEGER, PRIMARY KEY (volumeId, shortcoverId)) index|sqlite_autoindex_volume_shortcovers_1|volume_shortcovers|13| index|content_bookid_index|content|16|CREATE INDEX content_bookid_index ON content (BookID) table|content_keys|content_keys|17|CREATE TABLE content_keys ( volumeId TEXT NOT NULL, elementId TEXT NOT NULL, elementKey TEXT, PRIMARY KEY (volumeId, elementId)) index|sqlite_autoindex_content_keys_1|content_keys|18| table|publications|publications|20|CREATE TABLE publications ( publicationId TEXT NOT NULL, publicationName TEXT, mastheadImage TEXT, PRIMARY KEY (publicationId) ) index|sqlite_autoindex_publications_1|publications|21| table|Bookmark|Bookmark|22|CREATE TABLE Bookmark ( BookmarkID TEXT NOT NULL, VolumeID TEXT NOT NULL, ContentID TEXT NOT NULL, StartContainerPath TEXT NOT NULL, StartContainerChildIndex INTEGER NOT NULL, StartOffset INTEGER NOT NULL, EndContainerPath TEXT NOT NULL, EndContainerChildIndex INTEGER NOT NULL, EndOffset INTEGER NOT NULL, Text TEXT, Annotation TEXT, ExtraAnnotationData BLOB, DateCreated TEXT, ChapterProgress REAL NOT NULL DEFAULT 0, Hidden BOOL NOT NULL DEFAULT 0, Version TEXT, DateModified TEXT, Creator TEXT, UUID TEXT, PRIMARY KEY (BookmarkID) ) index|sqlite_autoindex_Bookmark_1|Bookmark|23| table|Event|Event|25|CREATE TABLE Event ( EventType INTEGER NOT NULL, FirstOccurrence TEXT, LastOccurrence TEXT, EventCount INTEGER DEFAULT 0, ContentID TEXT, ExtraData BLOB, Checksum TEXT, PRIMARY KEY (EventType, ContentID) ) index|sqlite_autoindex_Event_1|Event|26| table|Achievement|Achievement|27|CREATE TABLE Achievement( Acknowledged BOOL, CompleteDescription TEXT, DateCreated TEXT, Difficulty INTEGER, EventLogDescription TEXT, Hidden BOOL, Id TEXT NOT NULL, ImageId TEXT NOT NULL, IncompleteDescription TEXT, Name TEXT NOT NULL, Ordinal INTEGER, PercentComplete INTEGER, Presented BOOL, Synchronized BOOL, UserId TEXT, Checksum TEXT, FacebookImageId TEXT, PRIMARY KEY (Id) ) index|sqlite_autoindex_Achievement_1|Achievement|28| table|Rules|Rules|30|CREATE TABLE Rules( AchievementId TEXT, EventProperty TEXT, EventType TEXT, GoalValue TEXT NOT NULL, Id TEXT NOT NULL, Operation INT NOT NULL, ParentRuleId TEXT, ConjunctionType INT, IsConjunction BOOL, Checksum TEXT, PRIMARY KEY(Id)) index|sqlite_autoindex_Rules_1|Rules|31| index|content_mime_type|content|34|CREATE INDEX content_mime_type \ ON content (MimeType) index|volume_shortcovers_shortcoverId|volume_shortcovers|35|CREATE INDEX \ volume_shortcovers_shortcoverId ON volume_shortcovers (shortcoverId) table|volume_tabs|volume_tabs|39|CREATE TABLE volume_tabs ( volumeId TEXT NOT NULL, tabId TEXT NOT NULL DEFAULT 'abcdefff-ffff-ffff-ffff-fffffffffffd', PRIMARY KEY (volumeId, tabId)) index|sqlite_autoindex_volume_tabs_1|volume_tabs|41| index|volume_tabs_volumeId|volume_tabs|42|CREATE INDEX volume_tabs_volumeId \ ON volume_tabs (volumeId) table|ratings|ratings|45|CREATE TABLE ratings ( ContentID TEXT NOT NULL, Rating INTEGER, Review TEXT, DateModified TEXT NOT NULL, PRIMARY KEY(ContentID)) index|sqlite_autoindex_ratings_1|ratings|46| table|AbTest|AbTest|49|CREATE TABLE AbTest( FeatureId TEXT, Bit INT, DefaultValue INT, IsEnabled INT, Checksum TEXT, PRIMARY KEY(FeatureId)) index|sqlite_autoindex_AbTest_1|AbTest|50| table|ShelfContent|ShelfContent|55|CREATE TABLE ShelfContent ( ShelfName TEXT, ContentId TEXT, DateModified TEXT, _IsDeleted BOOL, _IsSynced BOOL, PRIMARY KEY(ShelfName, ContentId) ) index|sqlite_autoindex_ShelfContent_1|ShelfContent|56| index|shelfcontent_datemodified_index|ShelfContent|61|CREATE INDEX \ shelfcontent_datemodified_index ON ShelfContent (DateModified) table|Dictionary|Dictionary|62|CREATE TABLE Dictionary ( Suffix TEXT, Name TEXT, Installed BOOL, Size TEXT, LastModified TEXT, IsSynced BOOL, PRIMARY KEY(Suffix) ) index|sqlite_autoindex_Dictionary_1|Dictionary|63| table|content_settings|content_settings|64|CREATE TABLE content_settings ( ContentID TEXT NOT NULL, ContentType INTEGER NOT NULL, DateModified TEXT NOT NULL, ReadingFontFamily TEXT, ReadingFontSize INTEGER, ReadingAlignment TEXT, ReadingLineHeight REAL, ReadingLeftMargin INTEGER, ReadingRightMargin INTEGER, ReadingPublisherMode INTEGER, ActivityFacebookShare BIT default TRUE, PRIMARY KEY (ContentID, ContentType)) index|sqlite_autoindex_content_settings_1|content_settings|65| index|content_settings_index|content_settings|37|CREATE INDEX content_settings_index\ ON content_settings (ContentID, ContentType) table|Shelf|Shelf|68|CREATE TABLE Shelf ( CreationDate TEXT, Id TEXT, InternalName TEXT, LastModified TEXT, Name TEXT, Type TEXT, _IsDeleted BOOL, _IsVisible BOOL, _IsSynced BOOL, PRIMARY KEY(Id) ) index|sqlite_autoindex_Shelf_1|Shelf|69| index|shelf_id_index|Shelf|53|CREATE INDEX shelf_id_index ON shelf (Id) index|shelf_name_index|Shelf|54|CREATE INDEX shelf_name_index ON shelf (Name) index|shelf_creationdate_index|Shelf|58|CREATE INDEX shelf_creationdate_index\ ON shelf (CreationDate) table|user|user|43|CREATE TABLE user( UserID TEXT NOT NULL, UserKey TEXT NOT NULL, UserDisplayName TEXT, UserEmail TEXT, ___DeviceID TEXT, FacebookAuthToken TEXT, HasMadePurchase BIT DEFAULT FALSE, PRIMARY KEY (UserID)) index|sqlite_autoindex_user_1|user|59| テーブルが17,8個か。contentという名前のテーブルがメインの管理かな?。開いてみた。これは酷い・・。一ページずつ管理してやがる。しかもおすすめコンテンツとか、オンラインじゃなくても見れるようにその情報も同じテーブルに入ってる。そりゃー時間掛かる訳だよ。。ちなみに、今入ってる本は20冊程度。でcontentテーブルの行は4185行。1冊に付き200行分の情報を作る。これSDカードで拡張したら破綻しないか?。 MacBookAir:kepub tuck$ ls 16110a9a-7cb0-4e74-bc8a-78cc0ac37045 7f550471-a76b-4022-8cd5-3e60988828ea 1e45897d-e344-4a4c-95d2-0a030086c0c8 9aa3036c-4172-4ee3-ab84-4f24d35103f5 23525698-773e-43dc-8633-b709db23384a c919c6d1-8dc0-459e-b975-f1b15fd355c5 400c1bac-6594-4d9c-86a4-be3edc729350 da579bea-21b7-4e19-b10a-f17caf3ccf80 48e68ebe-4439-4e8f-92c7-2b063e2e80c3 dcccf970-a69b-4933-93af-89e81f172601 4ccbf1de-61a6-453e-99c6-789b3fc238af e2514579-dbe8-48fe-9208-5784df37474e 6aca459b-396c-4a15-bced-77722c5d6012 データベースと一致してさせてみると、BookIDってのがこいつと一致するらしい。 >select BookID,ImageID,BookTitle,IsEncrypted from content\ where BookTitle="ブラックジャックによろしく 第13巻"; 16110a9a-7cb0-4e74-bc8a-78cc0ac37045||ブラックジャックによろしく 第13巻|false 16110a9a-7cb0-4e74-bc8a-78cc0ac37045||ブラックジャックによろしく 第13巻|false 16110a9a-7cb0-4e74-bc8a-78cc0ac37045||ブラックジャックによろしく 第13巻|false 16110a9a-7cb0-4e74-bc8a-78cc0ac37045||ブラックジャックによろしく 第13巻|false 16110a9a-7cb0-4e74-bc8a-78cc0ac37045||ブラックジャックによろしく 第13巻|false ・ ・ とりあえず、暗号化は掛かってないぽいけど。けど、これ無料だからなぁ。ってことで、この16110a9a-7cb0-4e74-bc8a-78cc0ac37045をコピーして名前を「ブラックジャックによろしく 第13巻.kepub.epub」にする。さてと・・・読めない。普通のPC上のBookReaderでも、それをkobo gloに戻しても読めない。bl13.zipという名前に変えて解凍してみると、 MacBookAir:bl13.zip Folder tuck$ ls META-INF item mimetype rights.xml のように、ちゃんとコンテンツは入ってる。がxhtmlもjpgも開けない。。バイナリで見てみてもJPEGヘッダーがないし、xhtmlもテキストでなくバイナリ。こりゃーーDRM掛かっとるな。。 Category:”物!” | ||