diff --git a/lib/decoder.js b/lib/decoder.js index 1982481..a237d40 100644 --- a/lib/decoder.js +++ b/lib/decoder.js @@ -94,12 +94,8 @@ var JpegImage = (function jpegImage() { frame, components, resetInterval, spectralStart, spectralEnd, successivePrev, successive, opts) { - var precision = frame.precision; - var samplesPerLine = frame.samplesPerLine; - var scanLines = frame.scanLines; var mcusPerLine = frame.mcusPerLine; var progressive = frame.progressive; - var maxH = frame.maxH, maxV = frame.maxV; var startOffset = offset, bitsData = 0, bitsCount = 0; function readBit() { @@ -354,7 +350,7 @@ var JpegImage = (function jpegImage() { return offset - startOffset; } - function buildComponentData(frame, component) { + function buildComponentData(component) { var lines = []; var blocksPerLine = component.blocksPerLine; var blocksPerColumn = component.blocksPerColumn; @@ -620,7 +616,6 @@ var JpegImage = (function jpegImage() { } var jfif = null; var adobe = null; - var pixels = null; var frame, resetInterval; var quantizationTables = [], frames = []; var huffmanTablesAC = [], huffmanTablesDC = []; @@ -633,7 +628,7 @@ var JpegImage = (function jpegImage() { fileMarker = readUint16(); while (fileMarker != 0xFFD9) { // EOI (End of image) - var i, j, l; + var i, j; switch(fileMarker) { case 0xFF00: break; case 0xFFE0: // APP0 (Application Specific) @@ -741,7 +736,6 @@ var JpegImage = (function jpegImage() { } var componentsCount = data[offset++], componentId; - var maxH = 0, maxV = 0; for (i = 0; i < componentsCount; i++) { componentId = data[offset]; var h = data[offset + 1] >> 4; @@ -866,7 +860,7 @@ var JpegImage = (function jpegImage() { for (var i = 0; i < frame.componentsOrder.length; i++) { var component = frame.components[frame.componentsOrder[i]]; this.components.push({ - lines: buildComponentData(frame, component), + lines: buildComponentData(component), scaleX: component.h / frame.maxH, scaleY: component.v / frame.maxV }); diff --git a/test/fixtures/cmyk-grey.cmyk b/test/fixtures/cmyk-grey.rgba similarity index 100% rename from test/fixtures/cmyk-grey.cmyk rename to test/fixtures/cmyk-grey.rgba diff --git a/test/fixtures/cmyktest.cmyk b/test/fixtures/cmyktest.rgba similarity index 100% rename from test/fixtures/cmyktest.cmyk rename to test/fixtures/cmyktest.rgba diff --git a/test/fixtures/plusshelf-drawing.cmyk b/test/fixtures/plusshelf-drawing.rgba similarity index 100% rename from test/fixtures/plusshelf-drawing.cmyk rename to test/fixtures/plusshelf-drawing.rgba diff --git a/test/fixtures/rgb.rgb b/test/fixtures/rgb.rgba similarity index 76% rename from test/fixtures/rgb.rgb rename to test/fixtures/rgb.rgba index 8289c64..ca721e3 100644 --- a/test/fixtures/rgb.rgb +++ b/test/fixtures/rgb.rgba @@ -1,36 +1,46 @@ -~~~uuusss~~~iii^^^lll~~~}}}rHP16C.^x/v aX_zqx~~~)2=X~b >TANInDvIjd ^zkdhfSp$~5CRewúwwwccc迻s&yӰճ]Qi+"y#h  -xxr kgg"l,q2uYxhz˻ʿyyyxxxLLLͽ4*7׽pk%Z)t6  8 1(y l i -eb dGp5\6_AnAqItf|˫ۤ֡ݨgggQQQiz"HRm|  aad%z o$k5rSaYBir!AD:Aeuuummm>>>qqqHdq]jGzw/ls8vK}ZS6v6cj$LY':98[ Pw] l % - !}WɼȳlFiy:N-FE` -NoKnNtLJCB=;53-/36 :@ :B&4."$z8`T`jn|]XxOl.M8223;;-CBBSOdmfyinhgrpó)DKqxtxĿ@iw@(v qJh=OFRnlkSQPqonlji>>>GGGNNNRRRNNN???BBB[[[G_k#A .WJrEd4Aü{{{tttavsfff[[[aaasssd~~SSS||y|yy|yccczzzv}}}dddmqgWWWvvv|}||z```eeevvvnnn\\\vvvuuuvvvfffqqq___nnniiipppsss]]]~~~sssrrrxxxeeewwwEEE}}}uuu\\\fff^^^vvvyyykkkuuuiiirrrbbbuuu}}}~~~}}}zzzvvv|||jjjwwwuuunj̨ۙpoqxuw{hwsx²Ƚ¿Kpm0WR^h/AOmw}}}|Gy8+{ {+k+RgupvIRK~qlptt}#h{ ah{  0r;V0byro)Is~5x̿ieg\8 ?-tr_pxo!Eao(wz) ~ XxQuqv - DosYww||$ Ma( -#kLpt - o},nf^Bjcif/M4 - - -"qyN}!! -6c - ^ǥ3^\#y%Y^}" r q _y!/j)wy5Oev% zz!qV}$ #!$n-}   | |@Ub% -1r:{ -  -s~%2<[|%" z{~L  q % ad &-a]" ku9 _\'  -~th"  -$h|uXb{/ #g,Zk{vY63 - f|&:q h]%5*De|v&tEpVrT& -%,"wrt Yoh  !Qepq ~`~ 0 -!/Ymz z$ucj'[!)# _ɲ)&or(N !7Dpz'> %a  r!ulXtq&- -T y &;6rkfv|$]{ ~[  . -utu}nWp##1pw&ur -Zszf)# /_u ~pd~Lr (Ytt Bemй q  - bZv! -6Tiپq - g -\  + "  mq5vb)t:pL ]hxј6{b} w #J" a x dU~H ~ cf|(( "l -}[x[ R[u -#9^ YsOk|k}s g[r) W#`h)| ^t vh)1&Ur  i - -'}r{T'+i  qr 8X}an.hZ  .Hn2 _gbib>O@)/ k +")-Uu6 lN+y _4gxu / & */P   -mBfi}CQ vA`u 38-&~7r  y%u%r7v{q~rrrm.:F,?GHJJ::0#42AS3GCR]z >Xc$m0l?hlbc|ɵ˺d}k|zszxXQU=OQS,_n.GZƵtnnn_fjzü~~~}wsnx{|^lttt~}ܻ~|qwwwhhh222{{{~~~```tttWWWnnn}}}ppp~~~mmmeeedddzzzgggkkk{{{rrroooyyytttnnniii|||wwwllljjjttttttkkkmmmssswwwnnnsssfffnnnrrr~~~]]]xxxooonnnooozzzxxxmmm}}}oooQQQ}}}ooozzz666zzzkkkmmmsss{{{~~~vvvgggrrr}}}uuu|||bbbppp}}}___pppzzzlllfff}}}yyyiiiqqqsssmmmxxx|||ccceee||||||qqqvvvwwwzzzuuuvvvuuuhhhwww}}}qqqtttuuuxxxvvvvvv}}}qqqllllllrrr|||qqqpppuuuoooiiixxx}}}wwwnnn}}}eeetttwwwxxxrrr~~~qqqvvvxxxggglllgggoooiiigggppprrr~~~hhhxxx}}}ssskkk~~~jjjwwwjjjtttuuuqqqnnnttt}}}pppuuuzzzwwwgggttttttwwwhhh~~~{{{ttt~~~mmmnnnjjjuuuxxx}}}yyykkkzzzqqqpppsss{{{~~~ppp|||wwwyyyqqq}}}kkknnniiissspppoooggg{{{mmmjjjyyyxxx|||qqqhhhkkkooo}}}pppjjjtttrrrmmmwwwzzzwwwxxxgggyyyyyywwwmmmppptttjjjlllxxxlllpppyyynnnwwwyyyppp}}}~~~tttnnnmmmvvvzzzmmmlllgggxxxwwwzzzyyyxxx}}}sss|||www||||||xxxvvvpppuuulllvvvqqqoooyyy~~~kkkyyyzzzqqqxxxvvv}}}ooobbb\\\ttt{{{~~~jjjhhhtttbbb~~~[[[nnnxxxrrryyyWWWqqqvvv|||wwwqqq[[[xxxkkkvvv^^^gggrrr\\\rrr{{{nnnYYYrrrjjjwwwhhheee|||nnnrrrzzzmmmeeevvv~~~sssqqqxxxxxxrrrsssyyy~~~mmm}}}zzznnniiiyyyyyywwwxxxkkkpppqqqjjjzzzzzzoooyyygggnnnyyywww|||pppooosssxxxcccvvvqqqppp~~~lllwwwttt{{{ppp~~~vvvttttttmmm^^^{{{ooowwwkkk~~~}}}xxx[[[ooonnn \ No newline at end of file +{{{}}}vvvlllhhhdddmmm\\\SSSeeeooouuu}}}|||}}}lTW69C+Uw.n ^QOwjh|yɰttt%%9U +b9V9MFqG|LrR~Sw]|Z~qo[g"v7HZp˿ʿnnnZZZmeӾ^Qa| yc xtnfb +dj$q*vPsya~vϼvvv|||nnnQQQ~}Ϻio{ac +wuogffh(n8oDr~Z}yƴƼ̤ҰEEE555zzz +a~{,T f}  +vpofrfh<\tiJuw(BC2mQ`g7EQ/-1T +Rwdu  lOr̯PZe*5$1HX +[mVmXoH_?V9O/D%<%=(B%A +=O H^F_Up`{Zybl + B-4=^^^wwwvtW[j{Ϲa976FDCZXW[YX+++777AAAGGGCCC555;;;WWWvpp}}}llltttxxx|r{5MY+$<9Y SuHe+:mmmwwwhttbbbYYY]]]^^^[fkRRR~~~~WWW{{{~yyyqqq___mjc]]]tttlllutvvvvppp|||```@@@sssUUU```lllvvvNNNnnnqqqoootttpppuuujjjbbbdddbbbsssYYYtttlllaaa}}}qqqzzz___cccuuu111{{{hhh^^^TTTdddxxxhhhrrrdddhhhXXXpppqqqeeexxxqqq~~~|||```ccczzztttnnnvvvgggooojjjqqq][dtmf`p`]dceuokcbhibm{xZir