poppler 2.2.0-x86-mingw32 → 2.2.1-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +5 -5
  3. data/ext/poppler/extconf.rb +1 -1
  4. data/lib/2.0/poppler.so +0 -0
  5. data/test/test_annotation.rb +3 -1
  6. data/test/test_page.rb +0 -18
  7. data/vendor/local/bin/cjpeg.exe +0 -0
  8. data/vendor/local/bin/djpeg.exe +0 -0
  9. data/vendor/local/bin/jpegtran.exe +0 -0
  10. data/vendor/local/bin/libjpeg-9.dll +0 -0
  11. data/vendor/local/bin/{libpoppler-44.dll → libpoppler-46.dll} +0 -0
  12. data/vendor/local/bin/libpoppler-cpp-0.dll +0 -0
  13. data/vendor/local/bin/libpoppler-glib-8.dll +0 -0
  14. data/vendor/local/bin/libsqlite3-0.dll +0 -0
  15. data/vendor/local/bin/pdfdetach.exe +0 -0
  16. data/vendor/local/bin/pdffonts.exe +0 -0
  17. data/vendor/local/bin/pdfimages.exe +0 -0
  18. data/vendor/local/bin/pdfinfo.exe +0 -0
  19. data/vendor/local/bin/pdfseparate.exe +0 -0
  20. data/vendor/local/bin/pdftocairo.exe +0 -0
  21. data/vendor/local/bin/pdftohtml.exe +0 -0
  22. data/vendor/local/bin/pdftoppm.exe +0 -0
  23. data/vendor/local/bin/pdftops.exe +0 -0
  24. data/vendor/local/bin/pdftotext.exe +0 -0
  25. data/vendor/local/bin/pdfunite.exe +0 -0
  26. data/vendor/local/bin/rdjpgcom.exe +0 -0
  27. data/vendor/local/bin/sqlite3.exe +0 -0
  28. data/vendor/local/bin/wrjpgcom.exe +0 -0
  29. data/vendor/local/include/jconfig.h +7 -1
  30. data/vendor/local/include/jmorecfg.h +68 -12
  31. data/vendor/local/include/jpeglib.h +19 -12
  32. data/vendor/local/include/poppler/cpp/poppler-document.h +104 -0
  33. data/vendor/local/include/poppler/cpp/poppler-embedded-file.h +55 -0
  34. data/vendor/local/include/poppler/cpp/poppler-font.h +91 -0
  35. data/vendor/local/include/poppler/cpp/poppler-global.h +111 -0
  36. data/vendor/local/include/poppler/cpp/poppler-image.h +71 -0
  37. data/vendor/local/include/poppler/cpp/poppler-page-renderer.h +66 -0
  38. data/vendor/local/include/poppler/cpp/poppler-page-transition.h +82 -0
  39. data/vendor/local/include/poppler/cpp/poppler-page.h +76 -0
  40. data/vendor/local/include/poppler/cpp/poppler-rectangle.h +84 -0
  41. data/vendor/local/include/poppler/cpp/poppler-toc.h +74 -0
  42. data/vendor/local/include/poppler/cpp/poppler-version.h +39 -0
  43. data/vendor/local/include/poppler/glib/poppler-annot.h +64 -0
  44. data/vendor/local/include/poppler/glib/poppler-enums.h +34 -0
  45. data/vendor/local/include/poppler/glib/poppler-features.h +1 -1
  46. data/vendor/local/include/poppler/glib/poppler-media.h +1 -1
  47. data/vendor/local/include/poppler/glib/poppler-page.h +61 -0
  48. data/vendor/local/include/poppler/glib/poppler-structure-element.h +357 -0
  49. data/vendor/local/include/poppler/glib/poppler.h +11 -1
  50. data/vendor/local/include/sqlite3.h +245 -89
  51. data/vendor/local/lib/girepository-1.0/Poppler-0.18.typelib +0 -0
  52. data/vendor/local/lib/libjpeg.a +0 -0
  53. data/vendor/local/lib/libjpeg.dll.a +0 -0
  54. data/vendor/local/lib/libjpeg.la +2 -2
  55. data/vendor/local/lib/libpoppler-cpp.a +0 -0
  56. data/vendor/local/lib/libpoppler-cpp.dll.a +0 -0
  57. data/vendor/local/lib/libpoppler-cpp.la +41 -0
  58. data/vendor/local/lib/libpoppler-glib.a +0 -0
  59. data/vendor/local/lib/libpoppler-glib.dll.a +0 -0
  60. data/vendor/local/lib/libpoppler-glib.la +2 -2
  61. data/vendor/local/lib/libpoppler.a +0 -0
  62. data/vendor/local/lib/libpoppler.dll.a +0 -0
  63. data/vendor/local/lib/libpoppler.la +4 -4
  64. data/vendor/local/lib/libsqlite3.a +0 -0
  65. data/vendor/local/lib/libsqlite3.dll.a +0 -0
  66. data/vendor/local/lib/libsqlite3.la +1 -1
  67. data/vendor/local/lib/pkgconfig/poppler-cairo.pc +2 -2
  68. data/vendor/local/lib/pkgconfig/poppler-cpp.pc +13 -0
  69. data/vendor/local/lib/pkgconfig/poppler-glib.pc +2 -2
  70. data/vendor/local/lib/pkgconfig/poppler-splash.pc +2 -2
  71. data/vendor/local/lib/pkgconfig/poppler.pc +1 -1
  72. data/vendor/local/lib/pkgconfig/sqlite3.pc +2 -2
  73. data/vendor/local/share/gir-1.0/Poppler-0.18.gir +2993 -169
  74. data/vendor/local/share/gtk-doc/html/poppler/PopplerAnnot.html +2674 -1137
  75. data/vendor/local/share/gtk-doc/html/poppler/PopplerAttachment.html +186 -133
  76. data/vendor/local/share/gtk-doc/html/poppler/PopplerDocument.html +2523 -1782
  77. data/vendor/local/share/gtk-doc/html/poppler/PopplerFormField.html +1071 -738
  78. data/vendor/local/share/gtk-doc/html/poppler/PopplerLayer.html +225 -146
  79. data/vendor/local/share/gtk-doc/html/poppler/PopplerMedia.html +276 -201
  80. data/vendor/local/share/gtk-doc/html/poppler/PopplerMovie.html +142 -101
  81. data/vendor/local/share/gtk-doc/html/poppler/PopplerPage.html +2191 -1421
  82. data/vendor/local/share/gtk-doc/html/poppler/PopplerStructureElement.html +3781 -0
  83. data/vendor/local/share/gtk-doc/html/poppler/annotation-glossary.html +30 -44
  84. data/vendor/local/share/gtk-doc/html/poppler/api-index-0-12.html +34 -39
  85. data/vendor/local/share/gtk-doc/html/poppler/api-index-0-14.html +27 -32
  86. data/vendor/local/share/gtk-doc/html/poppler/api-index-0-16.html +50 -55
  87. data/vendor/local/share/gtk-doc/html/poppler/api-index-0-18.html +23 -28
  88. data/vendor/local/share/gtk-doc/html/poppler/api-index-0-20.html +12 -15
  89. data/vendor/local/share/gtk-doc/html/poppler/api-index-0-22.html +18 -23
  90. data/vendor/local/share/gtk-doc/html/poppler/api-index-deprecated.html +12 -15
  91. data/vendor/local/share/gtk-doc/html/poppler/api-index-full.html +762 -280
  92. data/vendor/local/share/gtk-doc/html/poppler/ch01.html +12 -9
  93. data/vendor/local/share/gtk-doc/html/poppler/home.png +0 -0
  94. data/vendor/local/share/gtk-doc/html/poppler/index.html +7 -4
  95. data/vendor/local/share/gtk-doc/html/poppler/index.sgml +258 -269
  96. data/vendor/local/share/gtk-doc/html/poppler/left-insensitive.png +0 -0
  97. data/vendor/local/share/gtk-doc/html/poppler/left.png +0 -0
  98. data/vendor/local/share/gtk-doc/html/poppler/poppler-PopplerAction.html +454 -320
  99. data/vendor/local/share/gtk-doc/html/poppler/poppler-Version-and-Features-Information.html +102 -76
  100. data/vendor/local/share/gtk-doc/html/poppler/poppler-poppler.html +367 -278
  101. data/vendor/local/share/gtk-doc/html/poppler/poppler.devhelp2 +356 -409
  102. data/vendor/local/share/gtk-doc/html/poppler/right-insensitive.png +0 -0
  103. data/vendor/local/share/gtk-doc/html/poppler/right.png +0 -0
  104. data/vendor/local/share/gtk-doc/html/poppler/style.css +314 -104
  105. data/vendor/local/share/gtk-doc/html/poppler/up-insensitive.png +0 -0
  106. data/vendor/local/share/gtk-doc/html/poppler/up.png +0 -0
  107. data/vendor/local/share/man/man1/cjpeg.1 +23 -2
  108. data/vendor/local/share/man/man1/djpeg.1 +2 -2
  109. data/vendor/local/share/man/man1/jpegtran.1 +12 -4
  110. data/vendor/local/share/man/man1/pdfimages.1 +78 -7
  111. data/vendor/local/share/man/man1/pdfinfo.1 +6 -0
  112. data/vendor/local/share/man/man1/pdftocairo.1 +9 -17
  113. data/vendor/local/share/man/man1/pdftohtml.1 +1 -1
  114. data/vendor/local/share/man/man1/pdftoppm.1 +12 -0
  115. data/vendor/local/share/man/man1/pdftops.1 +10 -20
  116. data/vendor/local/share/man/man1/rdjpgcom.1 +1 -1
  117. data/vendor/local/share/man/man1/sqlite3.1 +72 -22
  118. metadata +34 -15
  119. data/lib/1.9/poppler.so +0 -0
  120. data/lib/2.1/poppler.so +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bdb7047460e11ec2af2502616e22a63b5ec6e3a2
4
- data.tar.gz: 80cd211220a0b082573c239d1c1234c11421964b
3
+ metadata.gz: 7fbd163a340b57d36400ae3b88d47a8b0768f5c0
4
+ data.tar.gz: 016be96c275bbef923de1243e6760e1c6efee5f2
5
5
  SHA512:
6
- metadata.gz: 18229f889585e632d2fbe0d79ca422c0bf6e7b7f576500fcda9cb59d6efb14053337ba495669c2ff594b1bb8fcec287721cd08829d74bdc4e49c12a7f391b4ea
7
- data.tar.gz: cb44140a29e676a470b3b470ec18d4ca1376e7c55a99989692b4fcc11c613804987f4e61c1b9a31895f70cb5b73cbdb65213b10fd7fbd15cbdee1a4cb443a1f6
6
+ metadata.gz: 4dc368d37b1be1e2cd382873f4667d2a41941dc7a27566e2237f3ed8d52a67f7d5395fca3e564e9e29eef10d8d508a2b3b9b2d463cf145ae8cb22ebb9daf0428
7
+ data.tar.gz: b32292494cb1318897b15d205ee25b3b6a5c05931c9f4761aa7d520e29b5ac8f14955de092b8f98a903878f268a43fd8b6d14450247f40741734ce70e0edbdb1
data/Rakefile CHANGED
@@ -37,8 +37,8 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
37
37
  package.external_packages = [
38
38
  {
39
39
  :name => "libjpeg",
40
- :base_name => "jpeg-9",
41
- :archive_base_name => "jpegsrc.v9.tar.gz",
40
+ :base_name => "jpeg-9a",
41
+ :archive_base_name => "jpegsrc.v9a.tar.gz",
42
42
  :download_base_url => "http://www.ijg.org/files",
43
43
  :label => "libjpeg",
44
44
  :windows => {
@@ -48,9 +48,9 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
48
48
  },
49
49
  {
50
50
  :name => "sqlite-autoconf",
51
- :download_base_url => "http://www.sqlite.org/2013",
51
+ :download_base_url => "http://www.sqlite.org/2014",
52
52
  :label => "SQLite",
53
- :version => "3080200",
53
+ :version => "3080600",
54
54
  :compression_method => "gz",
55
55
  :windows => {
56
56
  :configure_args => [],
@@ -61,7 +61,7 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
61
61
  :name => "poppler",
62
62
  :download_base_url => "http://poppler.freedesktop.org",
63
63
  :label => "Poppler",
64
- :version => "0.24.5",
64
+ :version => "0.26.5",
65
65
  :compression_method => "xz",
66
66
  :windows => {
67
67
  :configure_args => [
@@ -61,7 +61,7 @@ setup_win32(module_name, base_dir)
61
61
  unless required_pkg_config_package([package_id, 0, 12, 0],
62
62
  :debian => "libpoppler-glib-dev",
63
63
  :redhat => "poppler-glib-devel",
64
- # :homebrew => "poppler", # need --with-glib option
64
+ :homebrew => "poppler",
65
65
  :macports => "poppler")
66
66
  exit(false)
67
67
  end
Binary file
@@ -79,6 +79,8 @@ class TestAnnotation < Test::Unit::TestCase
79
79
  end
80
80
 
81
81
  def assert_method_defined(object, method)
82
- assert_send([object, :method_defined?, method])
82
+ assert do
83
+ object.method_defined?(method)
84
+ end
83
85
  end
84
86
  end
@@ -30,24 +30,6 @@ class TestPage < Test::Unit::TestCase
30
30
  assert_kind_of(Poppler::Annotation, mapping.annotation)
31
31
  end
32
32
 
33
- def test_render
34
- only_poppler_version(0, 20, 0)
35
- document = Poppler::Document.new(image_pdf)
36
- page = document[0]
37
- png = StringIO.new
38
- png.set_encoding("ASCII-8BIT")
39
- Cairo::ImageSurface.new(:argb32, *page.size) do |surface|
40
- Cairo::Context.new(surface) do |context|
41
- page.render(context)
42
- end
43
- surface.write_to_png(png)
44
- end
45
- File.open(image_png, "rb") do |image|
46
- # TODO: support image diff
47
- assert_equal(image.read, png.string)
48
- end
49
- end
50
-
51
33
  private
52
34
  def find_first_image_mapping(document)
53
35
  document.each do |page|
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -18,11 +18,17 @@
18
18
  /* Define this if you get warnings about undefined structures. */
19
19
  /* #undef INCOMPLETE_TYPES_BROKEN */
20
20
 
21
- /* Define "boolean" as unsigned char, not int, on Windows systems. */
21
+ /* Define "boolean" as unsigned char, not enum, on Windows systems. */
22
22
  #ifdef _WIN32
23
23
  #ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */
24
24
  typedef unsigned char boolean;
25
25
  #endif
26
+ #ifndef FALSE /* in case these macros already exist */
27
+ #define FALSE 0 /* values of boolean */
28
+ #endif
29
+ #ifndef TRUE
30
+ #define TRUE 1
31
+ #endif
26
32
  #define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */
27
33
  #endif
28
34
 
@@ -2,7 +2,7 @@
2
2
  * jmorecfg.h
3
3
  *
4
4
  * Copyright (C) 1991-1997, Thomas G. Lane.
5
- * Modified 1997-2012 by Guido Vollbeding.
5
+ * Modified 1997-2013 by Guido Vollbeding.
6
6
  * This file is part of the Independent JPEG Group's software.
7
7
  * For conditions of distribution and use, see the accompanying README file.
8
8
  *
@@ -15,13 +15,22 @@
15
15
  /*
16
16
  * Define BITS_IN_JSAMPLE as either
17
17
  * 8 for 8-bit sample values (the usual setting)
18
+ * 9 for 9-bit sample values
19
+ * 10 for 10-bit sample values
20
+ * 11 for 11-bit sample values
18
21
  * 12 for 12-bit sample values
19
- * Only 8 and 12 are legal data precisions for lossy JPEG according to the
20
- * JPEG standard, and the IJG code does not support anything else!
21
- * We do not support run-time selection of data precision, sorry.
22
+ * Only 8, 9, 10, 11, and 12 bits sample data precision are supported for
23
+ * full-feature DCT processing. Further depths up to 16-bit may be added
24
+ * later for the lossless modes of operation.
25
+ * Run-time selection and conversion of data precision will be added later
26
+ * and are currently not supported, sorry.
27
+ * Exception: The transcoding part (jpegtran) supports all settings in a
28
+ * single instance, since it operates on the level of DCT coefficients and
29
+ * not sample values. The DCT coefficients are of the same type (16 bits)
30
+ * in all cases (see below).
22
31
  */
23
32
 
24
- #define BITS_IN_JSAMPLE 8 /* use 8 or 12 */
33
+ #define BITS_IN_JSAMPLE 8 /* use 8, 9, 10, 11, or 12 */
25
34
 
26
35
 
27
36
  /*
@@ -77,6 +86,48 @@ typedef char JSAMPLE;
77
86
  #endif /* BITS_IN_JSAMPLE == 8 */
78
87
 
79
88
 
89
+ #if BITS_IN_JSAMPLE == 9
90
+ /* JSAMPLE should be the smallest type that will hold the values 0..511.
91
+ * On nearly all machines "short" will do nicely.
92
+ */
93
+
94
+ typedef short JSAMPLE;
95
+ #define GETJSAMPLE(value) ((int) (value))
96
+
97
+ #define MAXJSAMPLE 511
98
+ #define CENTERJSAMPLE 256
99
+
100
+ #endif /* BITS_IN_JSAMPLE == 9 */
101
+
102
+
103
+ #if BITS_IN_JSAMPLE == 10
104
+ /* JSAMPLE should be the smallest type that will hold the values 0..1023.
105
+ * On nearly all machines "short" will do nicely.
106
+ */
107
+
108
+ typedef short JSAMPLE;
109
+ #define GETJSAMPLE(value) ((int) (value))
110
+
111
+ #define MAXJSAMPLE 1023
112
+ #define CENTERJSAMPLE 512
113
+
114
+ #endif /* BITS_IN_JSAMPLE == 10 */
115
+
116
+
117
+ #if BITS_IN_JSAMPLE == 11
118
+ /* JSAMPLE should be the smallest type that will hold the values 0..2047.
119
+ * On nearly all machines "short" will do nicely.
120
+ */
121
+
122
+ typedef short JSAMPLE;
123
+ #define GETJSAMPLE(value) ((int) (value))
124
+
125
+ #define MAXJSAMPLE 2047
126
+ #define CENTERJSAMPLE 1024
127
+
128
+ #endif /* BITS_IN_JSAMPLE == 11 */
129
+
130
+
80
131
  #if BITS_IN_JSAMPLE == 12
81
132
  /* JSAMPLE should be the smallest type that will hold the values 0..4095.
82
133
  * On nearly all machines "short" will do nicely.
@@ -252,7 +303,10 @@ typedef void noreturn_t;
252
303
  * Defining HAVE_BOOLEAN before including jpeglib.h should make it work.
253
304
  */
254
305
 
255
- #ifdef HAVE_BOOLEAN
306
+ #ifndef HAVE_BOOLEAN
307
+ #if defined FALSE || defined TRUE || defined QGLOBAL_H
308
+ /* Qt3 defines FALSE and TRUE as "const" variables in qglobal.h */
309
+ typedef int boolean;
256
310
  #ifndef FALSE /* in case these macros already exist */
257
311
  #define FALSE 0 /* values of boolean */
258
312
  #endif
@@ -262,6 +316,7 @@ typedef void noreturn_t;
262
316
  #else
263
317
  typedef enum { FALSE = 0, TRUE = 1 } boolean;
264
318
  #endif
319
+ #endif
265
320
 
266
321
 
267
322
  /*
@@ -299,11 +354,12 @@ typedef enum { FALSE = 0, TRUE = 1 } boolean;
299
354
  #define C_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/
300
355
  #define DCT_SCALING_SUPPORTED /* Input rescaling via DCT? (Requires DCT_ISLOW)*/
301
356
  #define ENTROPY_OPT_SUPPORTED /* Optimization of entropy coding parms? */
302
- /* Note: if you selected 12-bit data precision, it is dangerous to turn off
303
- * ENTROPY_OPT_SUPPORTED. The standard Huffman tables are only good for 8-bit
304
- * precision, so jchuff.c normally uses entropy optimization to compute
305
- * usable tables for higher precision. If you don't want to do optimization,
306
- * you'll have to supply different default Huffman tables.
357
+ /* Note: if you selected more than 8-bit data precision, it is dangerous to
358
+ * turn off ENTROPY_OPT_SUPPORTED. The standard Huffman tables are only
359
+ * good for 8-bit precision, so arithmetic coding is recommended for higher
360
+ * precision. The Huffman encoder normally uses entropy optimization to
361
+ * compute usable tables for higher precision. Otherwise, you'll have to
362
+ * supply different default Huffman tables.
307
363
  * The exact same statements apply for progressive JPEG: the default tables
308
364
  * don't work for progressive mode. (This may get fixed, however.)
309
365
  */
@@ -314,7 +370,7 @@ typedef enum { FALSE = 0, TRUE = 1 } boolean;
314
370
  #define D_ARITH_CODING_SUPPORTED /* Arithmetic coding back end? */
315
371
  #define D_MULTISCAN_FILES_SUPPORTED /* Multiple-scan JPEG files? */
316
372
  #define D_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/
317
- #define IDCT_SCALING_SUPPORTED /* Output rescaling via IDCT? */
373
+ #define IDCT_SCALING_SUPPORTED /* Output rescaling via IDCT? (Requires DCT_ISLOW)*/
318
374
  #define SAVE_MARKERS_SUPPORTED /* jpeg_save_markers() needed? */
319
375
  #define BLOCK_SMOOTHING_SUPPORTED /* Block smoothing? (Progressive only) */
320
376
  #undef UPSAMPLE_SCALING_SUPPORTED /* Output rescaling at upsample stage? */
@@ -2,7 +2,7 @@
2
2
  * jpeglib.h
3
3
  *
4
4
  * Copyright (C) 1991-1998, Thomas G. Lane.
5
- * Modified 2002-2012 by Guido Vollbeding.
5
+ * Modified 2002-2013 by Guido Vollbeding.
6
6
  * This file is part of the Independent JPEG Group's software.
7
7
  * For conditions of distribution and use, see the accompanying README file.
8
8
  *
@@ -39,12 +39,12 @@ extern "C" {
39
39
 
40
40
  #define JPEG_LIB_VERSION 90 /* Compatibility version 9.0 */
41
41
  #define JPEG_LIB_VERSION_MAJOR 9
42
- #define JPEG_LIB_VERSION_MINOR 0
42
+ #define JPEG_LIB_VERSION_MINOR 1
43
43
 
44
44
 
45
45
  /* Various constants determining the sizes of things.
46
- * All of these are specified by the JPEG standard, so don't change them
47
- * if you want to be compatible.
46
+ * All of these are specified by the JPEG standard,
47
+ * so don't change them if you want to be compatible.
48
48
  */
49
49
 
50
50
  #define DCTSIZE 8 /* The basic DCT block is 8x8 coefficients */
@@ -157,16 +157,21 @@ typedef struct {
157
157
  /* The downsampled dimensions are the component's actual, unpadded number
158
158
  * of samples at the main buffer (preprocessing/compression interface);
159
159
  * DCT scaling is included, so
160
- * downsampled_width = ceil(image_width * Hi/Hmax * DCT_h_scaled_size/DCTSIZE)
160
+ * downsampled_width =
161
+ * ceil(image_width * Hi/Hmax * DCT_h_scaled_size/block_size)
161
162
  * and similarly for height.
162
163
  */
163
164
  JDIMENSION downsampled_width; /* actual width in samples */
164
165
  JDIMENSION downsampled_height; /* actual height in samples */
165
- /* This flag is used only for decompression. In cases where some of the
166
- * components will be ignored (eg grayscale output from YCbCr image),
167
- * we can skip most computations for the unused components.
166
+ /* For decompression, in cases where some of the components will be
167
+ * ignored (eg grayscale output from YCbCr image), we can skip most
168
+ * computations for the unused components.
169
+ * For compression, some of the components will need further quantization
170
+ * scale by factor of 2 after DCT (eg BG_YCC output from normal RGB input).
171
+ * The field is first set TRUE for decompression, FALSE for compression
172
+ * in initial_setup, and then adapted in color conversion setup.
168
173
  */
169
- boolean component_needed; /* do we need the value of this component? */
174
+ boolean component_needed;
170
175
 
171
176
  /* These values are computed before starting a scan of the component. */
172
177
  /* The decompressor output side may not use these variables. */
@@ -215,10 +220,12 @@ struct jpeg_marker_struct {
215
220
  typedef enum {
216
221
  JCS_UNKNOWN, /* error/unspecified */
217
222
  JCS_GRAYSCALE, /* monochrome */
218
- JCS_RGB, /* red/green/blue */
219
- JCS_YCbCr, /* Y/Cb/Cr (also known as YUV) */
223
+ JCS_RGB, /* red/green/blue, standard RGB (sRGB) */
224
+ JCS_YCbCr, /* Y/Cb/Cr (also known as YUV), standard YCC */
220
225
  JCS_CMYK, /* C/M/Y/K */
221
- JCS_YCCK /* Y/Cb/Cr/K */
226
+ JCS_YCCK, /* Y/Cb/Cr/K */
227
+ JCS_BG_RGB, /* big gamut red/green/blue, bg-sRGB */
228
+ JCS_BG_YCC /* big gamut Y/Cb/Cr, bg-sYCC */
222
229
  } J_COLOR_SPACE;
223
230
 
224
231
  /* Supported color transforms. */
@@ -0,0 +1,104 @@
1
+ /*
2
+ * Copyright (C) 2009-2010, Pino Toscano <pino@kde.org>
3
+ *
4
+ * This program is free software; you can redistribute it and/or modify
5
+ * it under the terms of the GNU General Public License as published by
6
+ * the Free Software Foundation; either version 2, or (at your option)
7
+ * any later version.
8
+ *
9
+ * This program is distributed in the hope that it will be useful,
10
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ * GNU General Public License for more details.
13
+ *
14
+ * You should have received a copy of the GNU General Public License
15
+ * along with this program; if not, write to the Free Software
16
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
17
+ */
18
+
19
+ #ifndef POPPLER_DOCUMENT_H
20
+ #define POPPLER_DOCUMENT_H
21
+
22
+ #include "poppler-global.h"
23
+ #include "poppler-font.h"
24
+
25
+ namespace poppler
26
+ {
27
+
28
+ class document_private;
29
+ class embedded_file;
30
+ class page;
31
+ class toc;
32
+
33
+ class POPPLER_CPP_EXPORT document : public poppler::noncopyable
34
+ {
35
+ public:
36
+ enum page_mode_enum {
37
+ use_none,
38
+ use_outlines,
39
+ use_thumbs,
40
+ fullscreen,
41
+ use_oc,
42
+ use_attach
43
+ };
44
+
45
+ enum page_layout_enum {
46
+ no_layout,
47
+ single_page,
48
+ one_column,
49
+ two_column_left,
50
+ two_column_right,
51
+ two_page_left,
52
+ two_page_right
53
+ };
54
+
55
+ ~document();
56
+
57
+ bool is_locked() const;
58
+ bool unlock(const std::string &owner_password, const std::string &user_password);
59
+
60
+ page_mode_enum page_mode() const;
61
+ page_layout_enum page_layout() const;
62
+ void get_pdf_version(int *major, int *minor) const;
63
+ std::vector<std::string> info_keys() const;
64
+ ustring info_key(const std::string &key) const;
65
+ time_type info_date(const std::string &key) const;
66
+ bool is_encrypted() const;
67
+ bool is_linearized() const;
68
+ bool has_permission(permission_enum which) const;
69
+ ustring metadata() const;
70
+ bool get_pdf_id(std::string *permanent_id, std::string *update_id) const;
71
+
72
+ int pages() const;
73
+ page* create_page(const ustring &label) const;
74
+ page* create_page(int index) const;
75
+
76
+ std::vector<font_info> fonts() const;
77
+ font_iterator* create_font_iterator(int start_page = 0) const;
78
+
79
+ toc* create_toc() const;
80
+
81
+ bool has_embedded_files() const;
82
+ std::vector<embedded_file *> embedded_files() const;
83
+
84
+ static document* load_from_file(const std::string &file_name,
85
+ const std::string &owner_password = std::string(),
86
+ const std::string &user_password = std::string());
87
+ static document* load_from_data(byte_array *file_data,
88
+ const std::string &owner_password = std::string(),
89
+ const std::string &user_password = std::string());
90
+ static document* load_from_raw_data(const char *file_data,
91
+ int file_data_length,
92
+ const std::string &owner_password = std::string(),
93
+ const std::string &user_password = std::string());
94
+
95
+ private:
96
+ document(document_private &dd);
97
+
98
+ document_private *d;
99
+ friend class document_private;
100
+ };
101
+
102
+ }
103
+
104
+ #endif