ספריית JavaScript בחינם לעיבוד מסמכים ב-EPUB

ספריית JavaScript בקוד פתוח לגישה ולעיבוד מסמכי EPUB בדפדפן ובמכשירים אחרים.

מחפש ספרייה פשוטה לשימוש שיכולה להציג מסמכי EPUB בתוך הדפדפן כמו גם במכשירים רבים אחרים. Epub.js היא ספריית JavaScript בקוד פתוח חזקה מאוד המאפשרת למתכנתים ולאפליקציות לגשת ולעבד מסמכי EPUB בדפדפן בקלות. EPUB הוא פורמט קובץ אלקטרוני פופולרי מאוד שנמצא בשימוש נרחב על ידי מפרסמים וצרכנים. הוא נתמך על ידי קוראי אלקטרוני ויישומי תוכנה רבים ברחבי עולם האינטרנט וניתן להמרה לפורמטים רבים אחרים (כגון PDF, Mobi ו-iBooks).

ה-Epub.js שימושי מאוד לטיפול בספרים אלקטרוניים מכיוון שהוא מספק ממשק לפונקציונליות נפוצה של ספר אלקטרוני כמו רינדור, התמדה ועימוד וכו'. ישנן מספר שיטות רינדור חשובות חלק של שיטת ברירת המחדל מציגה רק קטע בודד בכל פעם. ניתן להשתמש במנהל הרציף כדי להציג כמה קטעים שצריך כדי למלא את המסך, ולטעון מראש את הקטע הבא מחוץ למסך. קטע עקיפת הזרימה מבוסס על ההגדרות ב-OPF, ברירת המחדל לעימוד.

הספרייה כללה מספר תכונות חשובות לעבודה עם מסמכי EPUB, כגון חיפוש בתוך כל מסמך ה-EPUB, חיפוש בפרק הנוכחי, החלקה כדי להפוך דפים, יצירה ושמירת מיקומים, הפיכת דפים עם מקשי החצים ועוד רבים.

Previous Next

תחילת העבודה עם Epub.js

Epub.js זמין ב-npm, ראשית עליך להתקין את node.js ולאחר מכן תוכל להתקין את Epub.js במחשב שלך. אנא השתמש בפקודה הבאה להתקנה חלקה.

התקן את Epub.js דרך npm

 npm install

אתה יכול גם להתקין אותו באופן ידני; הורד את קבצי הגרסה העדכניים ביותר ישירות ממאגר GitHub.

עיבוד מסמכי EPUB בדרכים שונות באמצעות JavaScript

ספריית הקוד הפתוח Epub.js מאפשרת למתכנתי תוכנה להציג מסמכי EPUB בדרכים שונות בתוך יישומי JavaScript שלהם. הספרייה מציעה שתי שיטות רינדור שונות, כולל ברירת מחדל ורצף. ניתן להשתמש בשיטת העיבוד המוגדרת כברירת מחדל כדי להציג קטע בודד בכל פעם. מצד שני ניתן להשתמש במצב הרציף כדי להציג מספר חלקים לפי הצורך למלא את המסך ולטעון מראש את הקטע הבא מחוץ למסך.

עיבוד מסמכי EPUB בדרכים שונות בספריית Java


// Default Rendering
book.renderTo("area", { method: "default", width: "100%", height: "100%" });
// Continuous Rendering
book.renderTo("area", { method: "continuous", width: "100%", height: "100%" });
//Flow Overrides Paginated
book.renderTo("area", { flow: "paginated", width: "900", height: "600" });
//Scrolled: 
book.renderTo("area", { flow: "scrolled-doc" });

החל הוקס במסמכי EPUB באפליקציות JavaScript

ספריית Epub.js כללה תכונה שימושית מאוד הדומה לפלאגינים לאינטראקציה עם תוכן הספר ולתפעל אותו. הספרייה מיישמת אירועים אליהם ניתן להתחבר בקלות. לדוגמה, משתמשים יכולים לטעון סרטונים ישירות מקישורי YouTube לפני יישום הערות או הצגת תוכן פרק. הוקס היו צריכים אירוע להירשם אליו ויכולים להחזיר הבטחה לחסום עד שהם יסתיימו.

כיצד לטעון סרטונים מקישורי YouTube באמצעות Java API

  rendition.hooks.content.register(function(contents, view) {
    var elements = contents.document.querySelectorAll('[video]');
    var items = Array.prototype.slice.call(elements);
    items.forEach(function(item){
      // do something with the video item
    });
})

מניפולציה של מסמכי EPUB באמצעות JavaScript

הקוד הפתוח Epub.js סיפק פונקציונליות מלאה ליצירת מסמכי EPUB חדשים ולטפל בהם באמצעות כמה שורות של קוד JavaScript. קובץ עם סיומת epub הוא רק קובץ zip המכיל חבורה של HTML, תמונות ומטא נתונים על הספר האלקטרוני שלך. הספרייה מאפשרת לציין CSS וגופנים מותאמים אישית לעיצוב המסמך. הוא מספק מספר פונקציות חשובות לחיפוש בכל הספר או חיפוש בפרק נוכחי, החלקה כדי להפוך דפים, יצירה ושמירה של מיקומים וכן הלאה.

החלק כדי להפוך דפים במסמכי EPUB באמצעות Java API

 rendition.on("displayed", event => {
    let start = null;
    let end = null;
    const el = event.document.documentElement;
    el.addEventListener('touchstart', event => {
        start = event.changedTouches[0];
    });
    el.addEventListener('touchend', event => {
        end = event.changedTouches[0];
        let hr = (end.screenX - start.screenX) / el.getBoundingClientRect().width;
        let vr = (end.screenY - start.screenY) / el.getBoundingClientRect().height;
        if (hr > vr && hr > 0.25) return rendition.prev();
        if (hr < vr && hr < -0.25) return rendition.next();
        if (vr > hr && vr > 0.25) return;
        if (vr < hr && vr < -0.25) return;
    });
});
 עִברִית