PDA

View Full Version : نمایش صفحه ی وب



darkenerboy
سه شنبه 15 مرداد 1392, 00:04 صبح
سلام
اگه تا حالا epub خوان ها رو دیده باشید
به تناسب اندازه ی فونت شما و اندازه صفحه نمایش متن رو میشکنن و کل صفحات رو هم محاسبه میکنن
این کار چجوری انجام میشه ؟

topcoder
سه شنبه 15 مرداد 1392, 00:54 صبح
epub ها معمولا از html تشکیل شدن مثل وبپیج ها
کاری که این نرم افزارها ( مثل adobe ) میکنن اینه که نگاه میکنن به سایزه این فایلهای html رو اندازه میگیرن و اونارو گِرد میکنن و بر اساس اون تعداد صفحه هات رو اندازه میگیرن
به عنوان مثال یه پیج htlm اگر 138بایت حجم داشته باشه اینو گردش میکنه و 1مگ در نظرش میگیره و اگر یه پیج دیگه 1025 بایت حجم داشته باشه اونو 2مگ درنظر میگیره و به همین ترتیب تا اخر

اینجا (http://bookclubs.barnesandnoble.com/t5/NOOK-Book-Discussion/EPUBs-and-page-numbering/td-p/691602)میتونی کامل راجبش بخونی :)

darkenerboy
سه شنبه 15 مرداد 1392, 09:41 صبح
با تشکر
اون قسمتی که صفحه رو میشکنه رو چجوری انجام میده

اگه با کد راهتمایی کنین
ممنون میشم

topcoder
سه شنبه 15 مرداد 1392, 12:05 عصر
راستش قبلا خونده بودم که چون این epubها از html تشکیل شدن برای شکستنشون از javaScript استفاده میکنن

refreshSize: function () {
this.wrapperWidth = this.wrapper.clientWidth;
this.wrapperHeight = this.wrapper.clientHeight;
this.pageWidth = this.wrapperWidth;
this.maxX = -this.options.numberOfPages * this.pageWidth + this.wrapperWidth;
this.snapThreshold = this.options.snapThreshold === null ?
Math.round(this.pageWidth * 0.15) :
/%/.test(this.options.snapThreshold) ?
Math.round(this.pageWidth * this.options.snapThreshold.replace('%', '') / 100) :
this.options.snapThreshold;
}


کد کامل رو میتونی اینجا (https://codeload.github.com/cubiq/SwipeView/legacy.zip/master)ببینی
این یکی (http://www.siegmann.nl/epublib/android)هم خیلی خوبه و کمکت مبکنه اگر میخوایی epub درست کنی :)