isbn 2.0.4 → 2.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. data/{README → README.md} +5 -11
  2. data/Rakefile +20 -14
  3. data/isbn.gemspec +23 -0
  4. data/lib/isbn.rb +2 -0
  5. data/test/isbn_spec.rb +1 -1
  6. metadata +29 -316
  7. data/VERSION +0 -1
  8. data/src/gocr-0.48/.cvsignore +0 -6
  9. data/src/gocr-0.48/AUTHORS +0 -7
  10. data/src/gocr-0.48/BUGS +0 -55
  11. data/src/gocr-0.48/CREDITS +0 -17
  12. data/src/gocr-0.48/HISTORY +0 -243
  13. data/src/gocr-0.48/INSTALL +0 -83
  14. data/src/gocr-0.48/Makefile +0 -193
  15. data/src/gocr-0.48/Makefile.in +0 -193
  16. data/src/gocr-0.48/README +0 -165
  17. data/src/gocr-0.48/READMEde.txt +0 -80
  18. data/src/gocr-0.48/REMARK.txt +0 -18
  19. data/src/gocr-0.48/REVIEW +0 -538
  20. data/src/gocr-0.48/TODO +0 -65
  21. data/src/gocr-0.48/bin/.cvsignore +0 -2
  22. data/src/gocr-0.48/bin/create_db +0 -38
  23. data/src/gocr-0.48/bin/gocr.tcl +0 -527
  24. data/src/gocr-0.48/bin/gocr_chk.sh +0 -44
  25. data/src/gocr-0.48/configure +0 -4689
  26. data/src/gocr-0.48/configure.in +0 -71
  27. data/src/gocr-0.48/doc/.#Makefile.1.6 +0 -39
  28. data/src/gocr-0.48/doc/.cvsignore +0 -2
  29. data/src/gocr-0.48/doc/Makefile +0 -39
  30. data/src/gocr-0.48/doc/Makefile.in +0 -39
  31. data/src/gocr-0.48/doc/example.dtd +0 -53
  32. data/src/gocr-0.48/doc/example.xml +0 -21
  33. data/src/gocr-0.48/doc/examples.txt +0 -67
  34. data/src/gocr-0.48/doc/gocr.html +0 -578
  35. data/src/gocr-0.48/doc/unicode.txt +0 -57
  36. data/src/gocr-0.48/examples/.#Makefile.1.22 +0 -166
  37. data/src/gocr-0.48/examples/4x6.png +0 -0
  38. data/src/gocr-0.48/examples/4x6.txt +0 -2
  39. data/src/gocr-0.48/examples/5x7.png +0 -0
  40. data/src/gocr-0.48/examples/5x7.png.txt +0 -2
  41. data/src/gocr-0.48/examples/5x8.png +0 -0
  42. data/src/gocr-0.48/examples/5x8.png.txt +0 -2
  43. data/src/gocr-0.48/examples/Makefile +0 -166
  44. data/src/gocr-0.48/examples/color.fig +0 -20
  45. data/src/gocr-0.48/examples/ex.fig +0 -16
  46. data/src/gocr-0.48/examples/font.tex +0 -22
  47. data/src/gocr-0.48/examples/font1.tex +0 -46
  48. data/src/gocr-0.48/examples/font2.fig +0 -27
  49. data/src/gocr-0.48/examples/font_nw.tex +0 -24
  50. data/src/gocr-0.48/examples/handwrt1.jpg +0 -0
  51. data/src/gocr-0.48/examples/handwrt1.txt +0 -10
  52. data/src/gocr-0.48/examples/inverse.fig +0 -20
  53. data/src/gocr-0.48/examples/matrix.jpg +0 -0
  54. data/src/gocr-0.48/examples/ocr-a-subset.png +0 -0
  55. data/src/gocr-0.48/examples/ocr-a-subset.png.txt +0 -4
  56. data/src/gocr-0.48/examples/ocr-a.png +0 -0
  57. data/src/gocr-0.48/examples/ocr-a.txt +0 -6
  58. data/src/gocr-0.48/examples/ocr-b.png +0 -0
  59. data/src/gocr-0.48/examples/ocr-b.png.txt +0 -4
  60. data/src/gocr-0.48/examples/polish.tex +0 -28
  61. data/src/gocr-0.48/examples/rotate45.fig +0 -14
  62. data/src/gocr-0.48/examples/score +0 -36
  63. data/src/gocr-0.48/examples/text.tex +0 -28
  64. data/src/gocr-0.48/gpl.html +0 -537
  65. data/src/gocr-0.48/include/.cvsignore +0 -2
  66. data/src/gocr-0.48/include/config.h +0 -36
  67. data/src/gocr-0.48/include/config.h.in +0 -36
  68. data/src/gocr-0.48/include/version.h +0 -2
  69. data/src/gocr-0.48/install-sh +0 -3
  70. data/src/gocr-0.48/make.bat +0 -57
  71. data/src/gocr-0.48/man/.cvsignore +0 -2
  72. data/src/gocr-0.48/man/Makefile +0 -29
  73. data/src/gocr-0.48/man/Makefile.in +0 -29
  74. data/src/gocr-0.48/man/man1/gocr.1 +0 -166
  75. data/src/gocr-0.48/src/.cvsignore +0 -4
  76. data/src/gocr-0.48/src/Makefile +0 -132
  77. data/src/gocr-0.48/src/Makefile.in +0 -132
  78. data/src/gocr-0.48/src/amiga.h +0 -31
  79. data/src/gocr-0.48/src/barcode.c +0 -846
  80. data/src/gocr-0.48/src/barcode.c.orig +0 -593
  81. data/src/gocr-0.48/src/barcode.h +0 -11
  82. data/src/gocr-0.48/src/box.c +0 -372
  83. data/src/gocr-0.48/src/database.c +0 -462
  84. data/src/gocr-0.48/src/detect.c +0 -943
  85. data/src/gocr-0.48/src/gocr.c +0 -373
  86. data/src/gocr-0.48/src/gocr.h +0 -288
  87. data/src/gocr-0.48/src/jconv.c +0 -168
  88. data/src/gocr-0.48/src/job.c +0 -84
  89. data/src/gocr-0.48/src/lines.c +0 -350
  90. data/src/gocr-0.48/src/list.c +0 -334
  91. data/src/gocr-0.48/src/list.h +0 -90
  92. data/src/gocr-0.48/src/ocr0.c +0 -6756
  93. data/src/gocr-0.48/src/ocr0.h +0 -63
  94. data/src/gocr-0.48/src/ocr0n.c +0 -1475
  95. data/src/gocr-0.48/src/ocr1.c +0 -85
  96. data/src/gocr-0.48/src/ocr1.h +0 -3
  97. data/src/gocr-0.48/src/otsu.c +0 -289
  98. data/src/gocr-0.48/src/otsu.h +0 -23
  99. data/src/gocr-0.48/src/output.c +0 -289
  100. data/src/gocr-0.48/src/output.h +0 -37
  101. data/src/gocr-0.48/src/pcx.c +0 -153
  102. data/src/gocr-0.48/src/pcx.h +0 -9
  103. data/src/gocr-0.48/src/pgm2asc.c +0 -2893
  104. data/src/gocr-0.48/src/pgm2asc.h +0 -105
  105. data/src/gocr-0.48/src/pixel.c +0 -537
  106. data/src/gocr-0.48/src/pnm.c +0 -533
  107. data/src/gocr-0.48/src/pnm.h +0 -35
  108. data/src/gocr-0.48/src/progress.c +0 -87
  109. data/src/gocr-0.48/src/progress.h +0 -42
  110. data/src/gocr-0.48/src/remove.c +0 -703
  111. data/src/gocr-0.48/src/tga.c +0 -87
  112. data/src/gocr-0.48/src/tga.h +0 -6
  113. data/src/gocr-0.48/src/unicode.c +0 -1314
  114. data/src/gocr-0.48/src/unicode.h +0 -1257
  115. data/src/jpeg-7/Makefile.am +0 -133
  116. data/src/jpeg-7/Makefile.in +0 -1089
  117. data/src/jpeg-7/README +0 -322
  118. data/src/jpeg-7/aclocal.m4 +0 -8990
  119. data/src/jpeg-7/ansi2knr.1 +0 -36
  120. data/src/jpeg-7/ansi2knr.c +0 -739
  121. data/src/jpeg-7/cderror.h +0 -132
  122. data/src/jpeg-7/cdjpeg.c +0 -181
  123. data/src/jpeg-7/cdjpeg.h +0 -187
  124. data/src/jpeg-7/change.log +0 -270
  125. data/src/jpeg-7/cjpeg.1 +0 -325
  126. data/src/jpeg-7/cjpeg.c +0 -616
  127. data/src/jpeg-7/ckconfig.c +0 -402
  128. data/src/jpeg-7/coderules.txt +0 -118
  129. data/src/jpeg-7/config.guess +0 -1561
  130. data/src/jpeg-7/config.sub +0 -1686
  131. data/src/jpeg-7/configure +0 -17139
  132. data/src/jpeg-7/configure.ac +0 -317
  133. data/src/jpeg-7/depcomp +0 -630
  134. data/src/jpeg-7/djpeg.1 +0 -251
  135. data/src/jpeg-7/djpeg.c +0 -617
  136. data/src/jpeg-7/example.c +0 -433
  137. data/src/jpeg-7/filelist.txt +0 -215
  138. data/src/jpeg-7/install-sh +0 -520
  139. data/src/jpeg-7/install.txt +0 -1097
  140. data/src/jpeg-7/jaricom.c +0 -148
  141. data/src/jpeg-7/jcapimin.c +0 -282
  142. data/src/jpeg-7/jcapistd.c +0 -161
  143. data/src/jpeg-7/jcarith.c +0 -921
  144. data/src/jpeg-7/jccoefct.c +0 -453
  145. data/src/jpeg-7/jccolor.c +0 -459
  146. data/src/jpeg-7/jcdctmgr.c +0 -482
  147. data/src/jpeg-7/jchuff.c +0 -1612
  148. data/src/jpeg-7/jcinit.c +0 -65
  149. data/src/jpeg-7/jcmainct.c +0 -293
  150. data/src/jpeg-7/jcmarker.c +0 -667
  151. data/src/jpeg-7/jcmaster.c +0 -770
  152. data/src/jpeg-7/jcomapi.c +0 -106
  153. data/src/jpeg-7/jconfig.bcc +0 -48
  154. data/src/jpeg-7/jconfig.cfg +0 -45
  155. data/src/jpeg-7/jconfig.dj +0 -38
  156. data/src/jpeg-7/jconfig.mac +0 -43
  157. data/src/jpeg-7/jconfig.manx +0 -43
  158. data/src/jpeg-7/jconfig.mc6 +0 -52
  159. data/src/jpeg-7/jconfig.sas +0 -43
  160. data/src/jpeg-7/jconfig.st +0 -42
  161. data/src/jpeg-7/jconfig.txt +0 -155
  162. data/src/jpeg-7/jconfig.vc +0 -45
  163. data/src/jpeg-7/jconfig.vms +0 -37
  164. data/src/jpeg-7/jconfig.wat +0 -38
  165. data/src/jpeg-7/jcparam.c +0 -632
  166. data/src/jpeg-7/jcprepct.c +0 -358
  167. data/src/jpeg-7/jcsample.c +0 -545
  168. data/src/jpeg-7/jctrans.c +0 -381
  169. data/src/jpeg-7/jdapimin.c +0 -396
  170. data/src/jpeg-7/jdapistd.c +0 -275
  171. data/src/jpeg-7/jdarith.c +0 -762
  172. data/src/jpeg-7/jdatadst.c +0 -151
  173. data/src/jpeg-7/jdatasrc.c +0 -212
  174. data/src/jpeg-7/jdcoefct.c +0 -736
  175. data/src/jpeg-7/jdcolor.c +0 -396
  176. data/src/jpeg-7/jdct.h +0 -393
  177. data/src/jpeg-7/jddctmgr.c +0 -382
  178. data/src/jpeg-7/jdhuff.c +0 -1309
  179. data/src/jpeg-7/jdinput.c +0 -384
  180. data/src/jpeg-7/jdmainct.c +0 -512
  181. data/src/jpeg-7/jdmarker.c +0 -1360
  182. data/src/jpeg-7/jdmaster.c +0 -663
  183. data/src/jpeg-7/jdmerge.c +0 -400
  184. data/src/jpeg-7/jdpostct.c +0 -290
  185. data/src/jpeg-7/jdsample.c +0 -361
  186. data/src/jpeg-7/jdtrans.c +0 -136
  187. data/src/jpeg-7/jerror.c +0 -252
  188. data/src/jpeg-7/jerror.h +0 -304
  189. data/src/jpeg-7/jfdctflt.c +0 -174
  190. data/src/jpeg-7/jfdctfst.c +0 -230
  191. data/src/jpeg-7/jfdctint.c +0 -4348
  192. data/src/jpeg-7/jidctflt.c +0 -242
  193. data/src/jpeg-7/jidctfst.c +0 -368
  194. data/src/jpeg-7/jidctint.c +0 -5137
  195. data/src/jpeg-7/jinclude.h +0 -91
  196. data/src/jpeg-7/jmemansi.c +0 -167
  197. data/src/jpeg-7/jmemdos.c +0 -638
  198. data/src/jpeg-7/jmemdosa.asm +0 -379
  199. data/src/jpeg-7/jmemmac.c +0 -289
  200. data/src/jpeg-7/jmemmgr.c +0 -1118
  201. data/src/jpeg-7/jmemname.c +0 -276
  202. data/src/jpeg-7/jmemnobs.c +0 -109
  203. data/src/jpeg-7/jmemsys.h +0 -198
  204. data/src/jpeg-7/jmorecfg.h +0 -369
  205. data/src/jpeg-7/jpegint.h +0 -395
  206. data/src/jpeg-7/jpeglib.h +0 -1135
  207. data/src/jpeg-7/jpegtran.1 +0 -272
  208. data/src/jpeg-7/jpegtran.c +0 -546
  209. data/src/jpeg-7/jquant1.c +0 -856
  210. data/src/jpeg-7/jquant2.c +0 -1310
  211. data/src/jpeg-7/jutils.c +0 -179
  212. data/src/jpeg-7/jversion.h +0 -14
  213. data/src/jpeg-7/libjpeg.map +0 -4
  214. data/src/jpeg-7/libjpeg.txt +0 -3067
  215. data/src/jpeg-7/ltmain.sh +0 -8406
  216. data/src/jpeg-7/makcjpeg.st +0 -36
  217. data/src/jpeg-7/makdjpeg.st +0 -36
  218. data/src/jpeg-7/makeadsw.vc6 +0 -77
  219. data/src/jpeg-7/makeasln.vc9 +0 -33
  220. data/src/jpeg-7/makecdep.vc6 +0 -82
  221. data/src/jpeg-7/makecdsp.vc6 +0 -130
  222. data/src/jpeg-7/makecmak.vc6 +0 -159
  223. data/src/jpeg-7/makecvcp.vc9 +0 -186
  224. data/src/jpeg-7/makeddep.vc6 +0 -82
  225. data/src/jpeg-7/makeddsp.vc6 +0 -130
  226. data/src/jpeg-7/makedmak.vc6 +0 -159
  227. data/src/jpeg-7/makedvcp.vc9 +0 -186
  228. data/src/jpeg-7/makefile.ansi +0 -220
  229. data/src/jpeg-7/makefile.bcc +0 -291
  230. data/src/jpeg-7/makefile.dj +0 -226
  231. data/src/jpeg-7/makefile.manx +0 -220
  232. data/src/jpeg-7/makefile.mc6 +0 -255
  233. data/src/jpeg-7/makefile.mms +0 -224
  234. data/src/jpeg-7/makefile.sas +0 -258
  235. data/src/jpeg-7/makefile.unix +0 -234
  236. data/src/jpeg-7/makefile.vc +0 -217
  237. data/src/jpeg-7/makefile.vms +0 -142
  238. data/src/jpeg-7/makefile.wat +0 -239
  239. data/src/jpeg-7/makejdep.vc6 +0 -423
  240. data/src/jpeg-7/makejdsp.vc6 +0 -285
  241. data/src/jpeg-7/makejdsw.vc6 +0 -29
  242. data/src/jpeg-7/makejmak.vc6 +0 -425
  243. data/src/jpeg-7/makejsln.vc9 +0 -17
  244. data/src/jpeg-7/makejvcp.vc9 +0 -328
  245. data/src/jpeg-7/makeproj.mac +0 -213
  246. data/src/jpeg-7/makerdep.vc6 +0 -6
  247. data/src/jpeg-7/makerdsp.vc6 +0 -78
  248. data/src/jpeg-7/makermak.vc6 +0 -110
  249. data/src/jpeg-7/makervcp.vc9 +0 -133
  250. data/src/jpeg-7/maketdep.vc6 +0 -43
  251. data/src/jpeg-7/maketdsp.vc6 +0 -122
  252. data/src/jpeg-7/maketmak.vc6 +0 -131
  253. data/src/jpeg-7/maketvcp.vc9 +0 -178
  254. data/src/jpeg-7/makewdep.vc6 +0 -6
  255. data/src/jpeg-7/makewdsp.vc6 +0 -78
  256. data/src/jpeg-7/makewmak.vc6 +0 -110
  257. data/src/jpeg-7/makewvcp.vc9 +0 -133
  258. data/src/jpeg-7/makljpeg.st +0 -68
  259. data/src/jpeg-7/maktjpeg.st +0 -30
  260. data/src/jpeg-7/makvms.opt +0 -4
  261. data/src/jpeg-7/missing +0 -376
  262. data/src/jpeg-7/rdbmp.c +0 -439
  263. data/src/jpeg-7/rdcolmap.c +0 -253
  264. data/src/jpeg-7/rdgif.c +0 -38
  265. data/src/jpeg-7/rdjpgcom.1 +0 -63
  266. data/src/jpeg-7/rdjpgcom.c +0 -515
  267. data/src/jpeg-7/rdppm.c +0 -459
  268. data/src/jpeg-7/rdrle.c +0 -387
  269. data/src/jpeg-7/rdswitch.c +0 -365
  270. data/src/jpeg-7/rdtarga.c +0 -500
  271. data/src/jpeg-7/structure.txt +0 -945
  272. data/src/jpeg-7/testimg.bmp +0 -0
  273. data/src/jpeg-7/testimg.jpg +0 -0
  274. data/src/jpeg-7/testimg.ppm +0 -4
  275. data/src/jpeg-7/testimgp.jpg +0 -0
  276. data/src/jpeg-7/testorig.jpg +0 -0
  277. data/src/jpeg-7/testprog.jpg +0 -0
  278. data/src/jpeg-7/transupp.c +0 -1533
  279. data/src/jpeg-7/transupp.h +0 -205
  280. data/src/jpeg-7/usage.txt +0 -605
  281. data/src/jpeg-7/wizard.txt +0 -211
  282. data/src/jpeg-7/wrbmp.c +0 -442
  283. data/src/jpeg-7/wrgif.c +0 -399
  284. data/src/jpeg-7/wrjpgcom.1 +0 -103
  285. data/src/jpeg-7/wrjpgcom.c +0 -583
  286. data/src/jpeg-7/wrppm.c +0 -269
  287. data/src/jpeg-7/wrrle.c +0 -305
  288. data/src/jpeg-7/wrtarga.c +0 -253
@@ -1,270 +0,0 @@
1
- CHANGE LOG for Independent JPEG Group's JPEG software
2
-
3
-
4
- Version 7 27-Jun-2009
5
- ----------------------
6
-
7
- New scaled DCTs implemented.
8
- djpeg now supports scalings N/8 with all N from 1 to 16.
9
- cjpeg now supports scalings 8/N with all N from 1 to 16.
10
- Scaled DCTs with size larger than 8 are now also used for resolving the
11
- common 2x2 chroma subsampling case without additional spatial resampling.
12
- Separate spatial resampling for those kind of files is now only necessary
13
- for N>8 scaling cases.
14
- Furthermore, separate scaled DCT functions are provided for direct resolving
15
- of the common asymmetric subsampling cases (2x1 and 1x2) without additional
16
- spatial resampling.
17
-
18
- cjpeg -quality option has been extended for support of separate quality
19
- settings for luminance and chrominance (or in general, for every provided
20
- quantization table slot).
21
- New API function jpeg_default_qtables() and q_scale_factor array in library.
22
-
23
- Added -nosmooth option to cjpeg, complementary to djpeg.
24
- New variable "do_fancy_downsampling" in library, complement to fancy
25
- upsampling. Fancy upsampling now uses direct DCT scaling with sizes
26
- larger than 8. The old method is not reversible and has been removed.
27
-
28
- Support arithmetic entropy encoding and decoding.
29
- Added files jaricom.c, jcarith.c, jdarith.c.
30
-
31
- Straighten the file structure:
32
- Removed files jidctred.c, jcphuff.c, jchuff.h, jdphuff.c, jdhuff.h.
33
-
34
- jpegtran has a new "lossless" cropping feature.
35
-
36
- Implement -perfect option in jpegtran, new API function
37
- jtransform_perfect_transform() in transupp. (DP 204_perfect.dpatch)
38
-
39
- Better error messages for jpegtran fopen failure.
40
- (DP 203_jpegtran_errmsg.dpatch)
41
-
42
- Fix byte order issue with 16bit PPM/PGM files in rdppm.c/wrppm.c:
43
- according to Netpbm, the de facto standard implementation of the PNM formats,
44
- the most significant byte is first. (DP 203_rdppm.dpatch)
45
-
46
- Add -raw option to rdjpgcom not to mangle the output.
47
- (DP 205_rdjpgcom_raw.dpatch)
48
-
49
- Make rdjpgcom locale aware. (DP 201_rdjpgcom_locale.dpatch)
50
-
51
- Add extern "C" to jpeglib.h.
52
- This avoids the need to put extern "C" { ... } around #include "jpeglib.h"
53
- in your C++ application. Defining the symbol DONT_USE_EXTERN_C in the
54
- configuration prevents this. (DP 202_jpeglib.h_c++.dpatch)
55
-
56
-
57
- Version 6b 27-Mar-1998
58
- -----------------------
59
-
60
- jpegtran has new features for lossless image transformations (rotation
61
- and flipping) as well as "lossless" reduction to grayscale.
62
-
63
- jpegtran now copies comments by default; it has a -copy switch to enable
64
- copying all APPn blocks as well, or to suppress comments. (Formerly it
65
- always suppressed comments and APPn blocks.) jpegtran now also preserves
66
- JFIF version and resolution information.
67
-
68
- New decompressor library feature: COM and APPn markers found in the input
69
- file can be saved in memory for later use by the application. (Before,
70
- you had to code this up yourself with a custom marker processor.)
71
-
72
- There is an unused field "void * client_data" now in compress and decompress
73
- parameter structs; this may be useful in some applications.
74
-
75
- JFIF version number information is now saved by the decoder and accepted by
76
- the encoder. jpegtran uses this to copy the source file's version number,
77
- to ensure "jpegtran -copy all" won't create bogus files that contain JFXX
78
- extensions but claim to be version 1.01. Applications that generate their
79
- own JFXX extension markers also (finally) have a supported way to cause the
80
- encoder to emit JFIF version number 1.02.
81
-
82
- djpeg's trace mode reports JFIF 1.02 thumbnail images as such, rather
83
- than as unknown APP0 markers.
84
-
85
- In -verbose mode, djpeg and rdjpgcom will try to print the contents of
86
- APP12 markers as text. Some digital cameras store useful text information
87
- in APP12 markers.
88
-
89
- Handling of truncated data streams is more robust: blocks beyond the one in
90
- which the error occurs will be output as uniform gray, or left unchanged
91
- if decoding a progressive JPEG. The appearance no longer depends on the
92
- Huffman tables being used.
93
-
94
- Huffman tables are checked for validity much more carefully than before.
95
-
96
- To avoid the Unisys LZW patent, djpeg's GIF output capability has been
97
- changed to produce "uncompressed GIFs", and cjpeg's GIF input capability
98
- has been removed altogether. We're not happy about it either, but there
99
- seems to be no good alternative.
100
-
101
- The configure script now supports building libjpeg as a shared library
102
- on many flavors of Unix (all the ones that GNU libtool knows how to
103
- build shared libraries for). Use "./configure --enable-shared" to
104
- try this out.
105
-
106
- New jconfig file and makefiles for Microsoft Visual C++ and Developer Studio.
107
- Also, a jconfig file and a build script for Metrowerks CodeWarrior
108
- on Apple Macintosh. makefile.dj has been updated for DJGPP v2, and there
109
- are miscellaneous other minor improvements in the makefiles.
110
-
111
- jmemmac.c now knows how to create temporary files following Mac System 7
112
- conventions.
113
-
114
- djpeg's -map switch is now able to read raw-format PPM files reliably.
115
-
116
- cjpeg -progressive -restart no longer generates any unnecessary DRI markers.
117
-
118
- Multiple calls to jpeg_simple_progression for a single JPEG object
119
- no longer leak memory.
120
-
121
-
122
- Version 6a 7-Feb-96
123
- --------------------
124
-
125
- Library initialization sequence modified to detect version mismatches
126
- and struct field packing mismatches between library and calling application.
127
- This change requires applications to be recompiled, but does not require
128
- any application source code change.
129
-
130
- All routine declarations changed to the style "GLOBAL(type) name ...",
131
- that is, GLOBAL, LOCAL, METHODDEF, EXTERN are now macros taking the
132
- routine's return type as an argument. This makes it possible to add
133
- Microsoft-style linkage keywords to all the routines by changing just
134
- these macros. Note that any application code that was using these macros
135
- will have to be changed.
136
-
137
- DCT coefficient quantization tables are now stored in normal array order
138
- rather than zigzag order. Application code that calls jpeg_add_quant_table,
139
- or otherwise manipulates quantization tables directly, will need to be
140
- changed. If you need to make such code work with either older or newer
141
- versions of the library, a test like "#if JPEG_LIB_VERSION >= 61" is
142
- recommended.
143
-
144
- djpeg's trace capability now dumps DQT tables in natural order, not zigzag
145
- order. This allows the trace output to be made into a "-qtables" file
146
- more easily.
147
-
148
- New system-dependent memory manager module for use on Apple Macintosh.
149
-
150
- Fix bug in cjpeg's -smooth option: last one or two scanlines would be
151
- duplicates of the prior line unless the image height mod 16 was 1 or 2.
152
-
153
- Repair minor problems in VMS, BCC, MC6 makefiles.
154
-
155
- New configure script based on latest GNU Autoconf.
156
-
157
- Correct the list of include files needed by MetroWerks C for ccommand().
158
-
159
- Numerous small documentation updates.
160
-
161
-
162
- Version 6 2-Aug-95
163
- -------------------
164
-
165
- Progressive JPEG support: library can read and write full progressive JPEG
166
- files. A "buffered image" mode supports incremental decoding for on-the-fly
167
- display of progressive images. Simply recompiling an existing IJG-v5-based
168
- decoder with v6 should allow it to read progressive files, though of course
169
- without any special progressive display.
170
-
171
- New "jpegtran" application performs lossless transcoding between different
172
- JPEG formats; primarily, it can be used to convert baseline to progressive
173
- JPEG and vice versa. In support of jpegtran, the library now allows lossless
174
- reading and writing of JPEG files as DCT coefficient arrays. This ability
175
- may be of use in other applications.
176
-
177
- Notes for programmers:
178
- * We changed jpeg_start_decompress() to be able to suspend; this makes all
179
- decoding modes available to suspending-input applications. However,
180
- existing applications that use suspending input will need to be changed
181
- to check the return value from jpeg_start_decompress(). You don't need to
182
- do anything if you don't use a suspending data source.
183
- * We changed the interface to the virtual array routines: access_virt_array
184
- routines now take a count of the number of rows to access this time. The
185
- last parameter to request_virt_array routines is now interpreted as the
186
- maximum number of rows that may be accessed at once, but not necessarily
187
- the height of every access.
188
-
189
-
190
- Version 5b 15-Mar-95
191
- ---------------------
192
-
193
- Correct bugs with grayscale images having v_samp_factor > 1.
194
-
195
- jpeg_write_raw_data() now supports output suspension.
196
-
197
- Correct bugs in "configure" script for case of compiling in
198
- a directory other than the one containing the source files.
199
-
200
- Repair bug in jquant1.c: sometimes didn't use as many colors as it could.
201
-
202
- Borland C makefile and jconfig file work under either MS-DOS or OS/2.
203
-
204
- Miscellaneous improvements to documentation.
205
-
206
-
207
- Version 5a 7-Dec-94
208
- --------------------
209
-
210
- Changed color conversion roundoff behavior so that grayscale values are
211
- represented exactly. (This causes test image files to change.)
212
-
213
- Make ordered dither use 16x16 instead of 4x4 pattern for a small quality
214
- improvement.
215
-
216
- New configure script based on latest GNU Autoconf.
217
- Fix configure script to handle CFLAGS correctly.
218
- Rename *.auto files to *.cfg, so that configure script still works if
219
- file names have been truncated for DOS.
220
-
221
- Fix bug in rdbmp.c: didn't allow for extra data between header and image.
222
-
223
- Modify rdppm.c/wrppm.c to handle 2-byte raw PPM/PGM formats for 12-bit data.
224
-
225
- Fix several bugs in rdrle.c.
226
-
227
- NEED_SHORT_EXTERNAL_NAMES option was broken.
228
-
229
- Revise jerror.h/jerror.c for more flexibility in message table.
230
-
231
- Repair oversight in jmemname.c NO_MKTEMP case: file could be there
232
- but unreadable.
233
-
234
-
235
- Version 5 24-Sep-94
236
- --------------------
237
-
238
- Version 5 represents a nearly complete redesign and rewrite of the IJG
239
- software. Major user-visible changes include:
240
- * Automatic configuration simplifies installation for most Unix systems.
241
- * A range of speed vs. image quality tradeoffs are supported.
242
- This includes resizing of an image during decompression: scaling down
243
- by a factor of 1/2, 1/4, or 1/8 is handled very efficiently.
244
- * New programs rdjpgcom and wrjpgcom allow insertion and extraction
245
- of text comments in a JPEG file.
246
-
247
- The application programmer's interface to the library has changed completely.
248
- Notable improvements include:
249
- * We have eliminated the use of callback routines for handling the
250
- uncompressed image data. The application now sees the library as a
251
- set of routines that it calls to read or write image data on a
252
- scanline-by-scanline basis.
253
- * The application image data is represented in a conventional interleaved-
254
- pixel format, rather than as a separate array for each color channel.
255
- This can save a copying step in many programs.
256
- * The handling of compressed data has been cleaned up: the application can
257
- supply routines to source or sink the compressed data. It is possible to
258
- suspend processing on source/sink buffer overrun, although this is not
259
- supported in all operating modes.
260
- * All static state has been eliminated from the library, so that multiple
261
- instances of compression or decompression can be active concurrently.
262
- * JPEG abbreviated datastream formats are supported, ie, quantization and
263
- Huffman tables can be stored separately from the image data.
264
- * And not only that, but the documentation of the library has improved
265
- considerably!
266
-
267
-
268
- The last widely used release before the version 5 rewrite was version 4A of
269
- 18-Feb-93. Change logs before that point have been discarded, since they
270
- are not of much interest after the rewrite.
data/src/jpeg-7/cjpeg.1 DELETED
@@ -1,325 +0,0 @@
1
- .TH CJPEG 1 "10 June 2009"
2
- .SH NAME
3
- cjpeg \- compress an image file to a JPEG file
4
- .SH SYNOPSIS
5
- .B cjpeg
6
- [
7
- .I options
8
- ]
9
- [
10
- .I filename
11
- ]
12
- .LP
13
- .SH DESCRIPTION
14
- .LP
15
- .B cjpeg
16
- compresses the named image file, or the standard input if no file is
17
- named, and produces a JPEG/JFIF file on the standard output.
18
- The currently supported input file formats are: PPM (PBMPLUS color
19
- format), PGM (PBMPLUS gray-scale format), BMP, Targa, and RLE (Utah Raster
20
- Toolkit format). (RLE is supported only if the URT library is available.)
21
- .SH OPTIONS
22
- All switch names may be abbreviated; for example,
23
- .B \-grayscale
24
- may be written
25
- .B \-gray
26
- or
27
- .BR \-gr .
28
- Most of the "basic" switches can be abbreviated to as little as one letter.
29
- Upper and lower case are equivalent (thus
30
- .B \-BMP
31
- is the same as
32
- .BR \-bmp ).
33
- British spellings are also accepted (e.g.,
34
- .BR \-greyscale ),
35
- though for brevity these are not mentioned below.
36
- .PP
37
- The basic switches are:
38
- .TP
39
- .BI \-quality " N[,...]"
40
- Scale quantization tables to adjust image quality. Quality is 0 (worst) to
41
- 100 (best); default is 75. (See below for more info.)
42
- .TP
43
- .B \-grayscale
44
- Create monochrome JPEG file from color input. Be sure to use this switch when
45
- compressing a grayscale BMP file, because
46
- .B cjpeg
47
- isn't bright enough to notice whether a BMP file uses only shades of gray.
48
- By saying
49
- .BR \-grayscale ,
50
- you'll get a smaller JPEG file that takes less time to process.
51
- .TP
52
- .B \-optimize
53
- Perform optimization of entropy encoding parameters. Without this, default
54
- encoding parameters are used.
55
- .B \-optimize
56
- usually makes the JPEG file a little smaller, but
57
- .B cjpeg
58
- runs somewhat slower and needs much more memory. Image quality and speed of
59
- decompression are unaffected by
60
- .BR \-optimize .
61
- .TP
62
- .B \-progressive
63
- Create progressive JPEG file (see below).
64
- .TP
65
- .BI \-scale " M/N"
66
- Scale the output image by a factor M/N. Currently supported scale factors are
67
- 8/N with all N from 1 to 16.
68
- .TP
69
- .B \-targa
70
- Input file is Targa format. Targa files that contain an "identification"
71
- field will not be automatically recognized by
72
- .BR cjpeg ;
73
- for such files you must specify
74
- .B \-targa
75
- to make
76
- .B cjpeg
77
- treat the input as Targa format.
78
- For most Targa files, you won't need this switch.
79
- .PP
80
- The
81
- .B \-quality
82
- switch lets you trade off compressed file size against quality of the
83
- reconstructed image: the higher the quality setting, the larger the JPEG file,
84
- and the closer the output image will be to the original input. Normally you
85
- want to use the lowest quality setting (smallest file) that decompresses into
86
- something visually indistinguishable from the original image. For this
87
- purpose the quality setting should be between 50 and 95; the default of 75 is
88
- often about right. If you see defects at
89
- .B \-quality
90
- 75, then go up 5 or 10 counts at a time until you are happy with the output
91
- image. (The optimal setting will vary from one image to another.)
92
- .PP
93
- .B \-quality
94
- 100 will generate a quantization table of all 1's, minimizing loss in the
95
- quantization step (but there is still information loss in subsampling, as well
96
- as roundoff error). This setting is mainly of interest for experimental
97
- purposes. Quality values above about 95 are
98
- .B not
99
- recommended for normal use; the compressed file size goes up dramatically for
100
- hardly any gain in output image quality.
101
- .PP
102
- In the other direction, quality values below 50 will produce very small files
103
- of low image quality. Settings around 5 to 10 might be useful in preparing an
104
- index of a large image library, for example. Try
105
- .B \-quality
106
- 2 (or so) for some amusing Cubist effects. (Note: quality
107
- values below about 25 generate 2-byte quantization tables, which are
108
- considered optional in the JPEG standard.
109
- .B cjpeg
110
- emits a warning message when you give such a quality value, because some
111
- other JPEG programs may be unable to decode the resulting file. Use
112
- .B \-baseline
113
- if you need to ensure compatibility at low quality values.)
114
- .PP
115
- The
116
- .B \-quality
117
- option has been extended in IJG version 7 for support of separate quality
118
- settings for luminance and chrominance (or in general, for every provided
119
- quantization table slot). This feature is useful for high-quality
120
- applications which cannot accept the damage of color data by coarse
121
- subsampling settings. You can now easily reduce the color data amount more
122
- smoothly with finer control without separate subsampling. The resulting file
123
- is fully compliant with standard JPEG decoders.
124
- Note that the
125
- .B \-quality
126
- ratings refer to the quantization table slots, and that the last value is
127
- replicated if there are more q-table slots than parameters. The default
128
- q-table slots are 0 for luminance and 1 for chrominance with default tables as
129
- given in the JPEG standard. This is compatible with the old behaviour in case
130
- that only one parameter is given, which is then used for both luminance and
131
- chrominance (slots 0 and 1). More or custom quantization tables can be set
132
- with
133
- .B \-qtables
134
- and assigned to components with
135
- .B \-qslots
136
- parameter (see the "wizard" switches below).
137
- .B Caution:
138
- You must explicitely add
139
- .BI \-sample " 1x1"
140
- for efficient separate color
141
- quality selection, since the default value used by library is 2x2!
142
- .PP
143
- The
144
- .B \-progressive
145
- switch creates a "progressive JPEG" file. In this type of JPEG file, the data
146
- is stored in multiple scans of increasing quality. If the file is being
147
- transmitted over a slow communications link, the decoder can use the first
148
- scan to display a low-quality image very quickly, and can then improve the
149
- display with each subsequent scan. The final image is exactly equivalent to a
150
- standard JPEG file of the same quality setting, and the total file size is
151
- about the same --- often a little smaller.
152
- .PP
153
- Switches for advanced users:
154
- .TP
155
- .B \-dct int
156
- Use integer DCT method (default).
157
- .TP
158
- .B \-dct fast
159
- Use fast integer DCT (less accurate).
160
- .TP
161
- .B \-dct float
162
- Use floating-point DCT method.
163
- The float method is very slightly more accurate than the int method, but is
164
- much slower unless your machine has very fast floating-point hardware. Also
165
- note that results of the floating-point method may vary slightly across
166
- machines, while the integer methods should give the same results everywhere.
167
- The fast integer method is much less accurate than the other two.
168
- .TP
169
- .B \-nosmooth
170
- Don't use high-quality downsampling.
171
- .TP
172
- .BI \-restart " N"
173
- Emit a JPEG restart marker every N MCU rows, or every N MCU blocks if "B" is
174
- attached to the number.
175
- .B \-restart 0
176
- (the default) means no restart markers.
177
- .TP
178
- .BI \-smooth " N"
179
- Smooth the input image to eliminate dithering noise. N, ranging from 1 to
180
- 100, indicates the strength of smoothing. 0 (the default) means no smoothing.
181
- .TP
182
- .BI \-maxmemory " N"
183
- Set limit for amount of memory to use in processing large images. Value is
184
- in thousands of bytes, or millions of bytes if "M" is attached to the
185
- number. For example,
186
- .B \-max 4m
187
- selects 4000000 bytes. If more space is needed, temporary files will be used.
188
- .TP
189
- .BI \-outfile " name"
190
- Send output image to the named file, not to standard output.
191
- .TP
192
- .B \-verbose
193
- Enable debug printout. More
194
- .BR \-v 's
195
- give more output. Also, version information is printed at startup.
196
- .TP
197
- .B \-debug
198
- Same as
199
- .BR \-verbose .
200
- .PP
201
- The
202
- .B \-restart
203
- option inserts extra markers that allow a JPEG decoder to resynchronize after
204
- a transmission error. Without restart markers, any damage to a compressed
205
- file will usually ruin the image from the point of the error to the end of the
206
- image; with restart markers, the damage is usually confined to the portion of
207
- the image up to the next restart marker. Of course, the restart markers
208
- occupy extra space. We recommend
209
- .B \-restart 1
210
- for images that will be transmitted across unreliable networks such as Usenet.
211
- .PP
212
- The
213
- .B \-smooth
214
- option filters the input to eliminate fine-scale noise. This is often useful
215
- when converting dithered images to JPEG: a moderate smoothing factor of 10 to
216
- 50 gets rid of dithering patterns in the input file, resulting in a smaller
217
- JPEG file and a better-looking image. Too large a smoothing factor will
218
- visibly blur the image, however.
219
- .PP
220
- Switches for wizards:
221
- .TP
222
- .B \-arithmetic
223
- Use arithmetic coding.
224
- .B Caution:
225
- arithmetic coded JPEG is not yet widely implemented, so many decoders will be
226
- unable to view an arithmetic coded JPEG file at all.
227
- .TP
228
- .B \-baseline
229
- Force baseline-compatible quantization tables to be generated. This clamps
230
- quantization values to 8 bits even at low quality settings. (This switch is
231
- poorly named, since it does not ensure that the output is actually baseline
232
- JPEG. For example, you can use
233
- .B \-baseline
234
- and
235
- .B \-progressive
236
- together.)
237
- .TP
238
- .BI \-qtables " file"
239
- Use the quantization tables given in the specified text file.
240
- .TP
241
- .BI \-qslots " N[,...]"
242
- Select which quantization table to use for each color component.
243
- .TP
244
- .BI \-sample " HxV[,...]"
245
- Set JPEG sampling factors for each color component.
246
- .TP
247
- .BI \-scans " file"
248
- Use the scan script given in the specified text file.
249
- .PP
250
- The "wizard" switches are intended for experimentation with JPEG. If you
251
- don't know what you are doing, \fBdon't use them\fR. These switches are
252
- documented further in the file wizard.txt.
253
- .SH EXAMPLES
254
- .LP
255
- This example compresses the PPM file foo.ppm with a quality factor of
256
- 60 and saves the output as foo.jpg:
257
- .IP
258
- .B cjpeg \-quality
259
- .I 60 foo.ppm
260
- .B >
261
- .I foo.jpg
262
- .SH HINTS
263
- Color GIF files are not the ideal input for JPEG; JPEG is really intended for
264
- compressing full-color (24-bit) images. In particular, don't try to convert
265
- cartoons, line drawings, and other images that have only a few distinct
266
- colors. GIF works great on these, JPEG does not. If you want to convert a
267
- GIF to JPEG, you should experiment with
268
- .BR cjpeg 's
269
- .B \-quality
270
- and
271
- .B \-smooth
272
- options to get a satisfactory conversion.
273
- .B \-smooth 10
274
- or so is often helpful.
275
- .PP
276
- Avoid running an image through a series of JPEG compression/decompression
277
- cycles. Image quality loss will accumulate; after ten or so cycles the image
278
- may be noticeably worse than it was after one cycle. It's best to use a
279
- lossless format while manipulating an image, then convert to JPEG format when
280
- you are ready to file the image away.
281
- .PP
282
- The
283
- .B \-optimize
284
- option to
285
- .B cjpeg
286
- is worth using when you are making a "final" version for posting or archiving.
287
- It's also a win when you are using low quality settings to make very small
288
- JPEG files; the percentage improvement is often a lot more than it is on
289
- larger files. (At present,
290
- .B \-optimize
291
- mode is always selected when generating progressive JPEG files.)
292
- .SH ENVIRONMENT
293
- .TP
294
- .B JPEGMEM
295
- If this environment variable is set, its value is the default memory limit.
296
- The value is specified as described for the
297
- .B \-maxmemory
298
- switch.
299
- .B JPEGMEM
300
- overrides the default value specified when the program was compiled, and
301
- itself is overridden by an explicit
302
- .BR \-maxmemory .
303
- .SH SEE ALSO
304
- .BR djpeg (1),
305
- .BR jpegtran (1),
306
- .BR rdjpgcom (1),
307
- .BR wrjpgcom (1)
308
- .br
309
- .BR ppm (5),
310
- .BR pgm (5)
311
- .br
312
- Wallace, Gregory K. "The JPEG Still Picture Compression Standard",
313
- Communications of the ACM, April 1991 (vol. 34, no. 4), pp. 30-44.
314
- .SH AUTHOR
315
- Independent JPEG Group
316
- .SH BUGS
317
- GIF input files are no longer supported, to avoid the Unisys LZW patent.
318
- (Conversion of GIF files to JPEG is usually a bad idea anyway.)
319
- .PP
320
- Not all variants of BMP and Targa file formats are supported.
321
- .PP
322
- The
323
- .B \-targa
324
- switch is not a bug, it's a feature. (It would be a bug if the Targa format
325
- designers had not been clueless.)