From 2f7a3268f10659b9770e44a6c7678221f8c925cc Mon Sep 17 00:00:00 2001 From: klutzy Date: Fri, 17 May 2013 23:23:47 +0900 Subject: [PATCH] Add best-fit mode --- css/styles.css | 4 ++++ img/iconic/sprite.png | Bin 5879 -> 6733 bytes lib/ComicBook.js | 26 ++++++++++++++++++++++++++ 3 files changed, 30 insertions(+) diff --git a/css/styles.css b/css/styles.css index f23cbe7..6febb75 100644 --- a/css/styles.css +++ b/css/styles.css @@ -142,6 +142,10 @@ #cb-toolbar button.cb-fit-width:hover { background-position: -24px -48px } #cb-toolbar button.cb-fit-width[disabled=disabled] { background-position: -48px -48px } +#cb-toolbar button.cb-fit-best { background-position: 0 -192px } +#cb-toolbar button.cb-fit-best:hover { background-position: -24px -192px } +#cb-toolbar button.cb-fit-best[disabled=disabled] { background-position: -48px -192px } + #cb-toolbar button.cb-read-direction#toleft{ background-position: 0 -144px } #cb-toolbar button.cb-read-direction:hover#toleft{ background-position: -24px -144px } diff --git a/img/iconic/sprite.png b/img/iconic/sprite.png index 50a74ceb12a07b883be47bd3ebb6339e09f0f816..b8c010a1b714fb29df1788cf2ca77eabe1f2518d 100644 GIT binary patch literal 6733 zcmY*e1yod9+dc>g($WnAb3qyT4o`##TG6Q{5HfSiPx1ONbXsD_#$IBI~`PvYxWvxE`? za3Jteff^HopAcfFSO8!qfT}4Q2jrsif~{%H7GuI+L~wn&!9{IKS}@LE;L!NUh5_2< zdw+v&$8g+KQ}Ac?$*ZiItjG_3bW2n5)u!7e<8A_+-do6_j_M~WMUkfx$^x+&)Ykkd zu{?AeT%y>RQD178P3=4OOT(jQM+cO55OPfHW8Yf7iE;y(nA170ZEkMv5&*EQo)!%} zT<2`|n_aJd(?6xvb07TqJthe&%d%#1rQ-_&BL~{wkzJD#s%%$0Dwdi@{IWQc8dcnu^}IA zc2`%|;QCmmuuVn15d1mnm-yk>m53yoi{>O++3{<(LXUhEnkHPakWvwOq9o7(K6m|n zodb^@J$>fw6pbqM#9h~umHw|IO{-cwsZJK=<{TXn=c<~TnxiW{F(!Z>MbYu`v30^% zhv_ZfSz}omYU)B}`JhHQSy?MOMn=BtfQF9Fh`jgufJ(*TO|j0=K<5Pwx-V%xzqeHt zH=j59PgsYU2bSRZ06yJaEkGR&3OUm)p8FuMT&2-;wf~Mbd_C_8sd?&D45b=VWt8 zN=mx!`UMYgd-CL@8Fn#0za@@qpL_FXe-GX$ofM83WsB4!uBfcURuvRD4nad?t%(Hm4r7Vn(zc2VT?Y5KrQtzl}ou$T-Y)0bj`0^93 zVZ}^gclCv>iY6|uT4L74kqEN%V_p#B;lu;ERM$x=sIOPK>>0_q?zMNzK~GOl6Ze1v zH7J>_Ol`PKgD%+55g7tz-}4*ZQcO*kQVe-;2({%-AFHx-DPF8l zHX;N|RhwpiXt$siBr3m?otzLTN+FDX`DCIBkR$+SiiX2d_~iwDOG}H_oax7msIr0r z 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 Q|AzqReOFq@*7H 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 KwQLo{Jmf!c>NY?C diff --git a/lib/ComicBook.js b/lib/ComicBook.js index cb4d699..5c9f371 100755 --- a/lib/ComicBook.js +++ b/lib/ComicBook.js @@ -243,6 +243,15 @@ function ComicBook(id, srcs, opts) { ComicBook.prototype.drawPage(); }) ) + .append( + $(document.createElement("button")) + .attr("title", "fit to page width/height") + .addClass("cb-fit-best") + .click(function(){ + options.zoomMode = "fitBest" + ComicBook.prototype.drawPage(); + }) + ) .append( $(document.createElement("button")) .attr("title", ((options.manga == true) ? "change reading direction to 'left-to-right'" : "change reading direction to 'right-to-left'")) @@ -601,6 +610,7 @@ function ComicBook(id, srcs, opts) { } var width = page.width; + var height = page.height; // reset the canvas to stop duplicate pages showing canvas.width = 0; @@ -642,6 +652,21 @@ function ComicBook(id, srcs, opts) { scale = zoom_scale break; + case "fitBest": + document.body.style.overflowX = "hidden"; + + var width_scale = (windowWidth() > width) + ? ((windowWidth() - width) / windowWidth()) + 1 // scale up if the window is wider than the page + : windowWidth() / width; // scale down if the window is narrower than the page + var windowHeight = window.innerHeight; + var height_scale = (windowHeight > height) + ? ((windowHeight - height) / windowHeight) + 1 // scale up if the window is wider than the page + : windowHeight / height; // scale down if the window is narrower than the page + + zoom_scale = (width_scale > height_scale)? height_scale : width_scale; + scale = zoom_scale; + break; + default: throw ComicBookException.INVALID_ZOOM_MODE+' '+options.zoomMode; } @@ -697,6 +722,7 @@ function ComicBook(id, srcs, opts) { // disable the fit width button if needed $("button.cb-fit-width").attr("disabled", (options.zoomMode === "fitWidth")); + $("button.cb-fit-best").attr("disabled", (options.zoomMode === "fitBest")); //Change the icon on the read direction if(options.manga == true)