
קובץ ה-EPUB שלכם תקין — Kobo חולקת על כך, והאשמה ב-Adobe
ספר שעבר את מאמת ה-EPUB הרשמי נדחה על ידי קוראי Kobo כ"פגום". הסיבה היא מנוע ה-RMSDK של Adobe, שמנתח ה-CSS שלו קפוא בערך מ-2013, ו-Kobo מנתבת אליו קבצי EPUB רגילים.
קובץ EPUB תקין לחלוטין נדחה על ידי קוראי Kobo כ"פגום", והעקבות מובילות למנוע ש-Adobe כתבה בסביבות 2010 ומאז לא עדכנה. המחבר, שמפרסם ספרים דיגיטליים בלי DRM, תיאר את המקרה בניתוח לאחר מעשה, אחרי שקורא דיווח שהספר החדש לא נפתח באף אחד ממכשירי ה-Kobo שלו, מדורות שונים.
הקובץ לא היה רשלני: הוא עבר בהצלחה epubcheck 3.3, מאמת התקן הרשמי של EPUB, ונפתח בלי בעיה ב-Amazon Kindle, ב-Apple Books וב-Thorium. גם גרסה שנבנתה לפי כללי EPUB2 הישנים יותר לא עבדה ב-Kobo.
שורת CSS אחת
הפריצה הגיעה כשהמחבר השבית את גיליון הסגנונות של הספר — והטקסט נטען לפתע. לאחר צמצום הגיליון התברר ששורה אחת אחראית: .copyright img { max-width: min(150px, 30vw); } — CSS Level 4 תקין לחלוטין. כשכתב אותה מחדש כ-max-width: 150px הישן, Adobe Digital Editions פתח את הקובץ כרגיל. קוראי Kobo משתמשים ב-RMSDK, ערכת Reader Mobile Software Development Kit — המנוע הקנייני של Adobe והליבה של Adobe Digital Editions. הוא נבנה ל-EPUB2 ורק הוקל בעדכון עבור EPUB3, והמנתח שלו לסגנונות קפוא בערך בשנת 2013: בלי flexbox, בלי grid, בלי פונקציות מתמטיות, בלי custom properties — וכשל שקט בכל מה שאינו מזוהה. לדברי המחבר, Adobe Digital Editions לא הציג שגיאה כלל; התגובה היחידה הייתה מסך לבן.
שני מנועים, וההבדל הוא סיומת הקובץ
עדכון לפוסט מוסיף של-Kobo יש למעשה שני מסלולי רינדור. קובצי EPUB רגילים מנותבים ל-RMSDK של Adobe, ואילו KEPUB — הפורמט הקנייני של Kobo — רץ על מנוע מבוסס WebKit שמתוחזק באופן פעיל. מה תקבלו נקבע לפי סיומת הקובץ בלבד: שינוי שם הספר ל-".kepub.epub" מעביר אותו למנוע WebKit, לפי תיעוד KoWiki שהמחבר מצטט.
למה epubcheck לא תופס את זה
epubcheck בודק גם CSS, אבל משווה את הקובץ למפרט ולא למגבלות של מנוע מסוים, ולכן ספר יכול להיות תואם לחלוטין ובכל זאת לקרוס במכשיר. מגיבים ב-Hacker News העמיקו את הבעיה: CSS מחייב מנתחים להתעלם בשקט מהצהרות שאינם מכירים מאז 1996, כך שהבעיה אינה מודרניות אלא יסודות חסרים. למי שנתקל באותו קיר, המחבר מפנה לכלי צד שלישי שסורק גיליון סגנונות אחר חוקים ששוברים את Kobo ומתקן אותם אוטומטית. הספר כבר פורסם מחדש בגרסה מתוקנת.
SiTech — פיתוח אתרים בכוח ה-AI
אנחנו בונים אתרים מהירים ומודרניים ומשלבים AI בתהליכי עבודה אמיתיים. יש לכם פרויקט או שאלה? נשמח לעזור.