Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(289)

Issue 20220002: Add libpoppler PDF rasterizer (Closed)

Created:
7 years, 5 months ago by ducky
Modified:
7 years, 4 months ago
Reviewers:
vandebo (ex-Chrome), bungeman-chromium, Lei Zhang, djsollen1, edisonn, open-source-third-party-reviews
CC:
skia-review_googlegroups.com
Visibility:
Public.

Description

The CL adds libpoppler to DEPS and adds a libpoppler-cpp gyp target for Linux, Windows, and Mac. This does not currently change the GM tool to use poppler - that will be a refactor job in a separate CL. Several third-party libraries are pulled in, and platform-specific headers are included under third_party/(library name). Chromium style READMEs containing a description of the library, as well as a LICENSE file are also included in that directory. (is there a Skia-specific style for these?) Committed: http://code.google.com/p/skia/source/detail?r=10823

Patch Set 1 #

Patch Set 2 : Remove leftover freetype2 files #

Patch Set 3 : Update DEPS to point to googlesource mirror, update visibility on Mac build #

Patch Set 4 : Clean up poppler interface code #

Patch Set 5 : Revert gmmain.cpp (will be moved into a separate CL) #

Patch Set 6 : Cleanup #

Patch Set 7 : Fix cross-platform builds #

Patch Set 8 : Make rasterizer header internal #

Total comments: 25

Patch Set 9 : Improve style, fix windows build, remove dead code, make GPL more obvious #

Total comments: 15

Patch Set 10 : Merge latest tree with DEPS update #

Patch Set 11 : Remove leftover fontconfig #

Patch Set 12 : Remove leftover fontconfig; simplify popper configs #

Patch Set 13 : Limit poppler build to mac, win, linux #

Patch Set 14 : Add define for poppler builds #

Total comments: 10

Patch Set 15 : Update documentation #

Patch Set 16 : Fix Windows GYP defines #

Total comments: 4

Patch Set 17 : More cleanup; add iconv Windows instructions #

Total comments: 39

Patch Set 18 : Improve error handling #

Patch Set 19 : Style fixes for READMEs #

Total comments: 2

Patch Set 20 : Readme fixes #

Total comments: 4

Patch Set 21 : 80 cols #

Total comments: 22

Patch Set 22 : More gyp simplification, fixes top SkPDFRasterizer #

Patch Set 23 : Save alpha data to output PNG #

Total comments: 8

Patch Set 24 : Address review comments #

Total comments: 6

Patch Set 25 : Simplify freetype #

Patch Set 26 : Poppler gypfile simplification #

Unified diffs Side-by-side diffs Delta from patch set Stats (+14849 lines, -56 lines) Patch
A gyp/fontconfig.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 1 chunk +101 lines, -0 lines 0 comments Download
M gyp/freetype.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 2 chunks +29 lines, -56 lines 0 comments Download
A gyp/freetype.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 1 chunk +65 lines, -0 lines 0 comments Download
M gyp/gm.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +11 lines, -0 lines 0 comments Download
A gyp/iconv.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +44 lines, -0 lines 0 comments Download
A gyp/poppler.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 1 chunk +229 lines, -0 lines 0 comments Download
A src/utils/SkPDFRasterizer.h View 1 2 3 4 5 6 7 1 chunk +15 lines, -0 lines 0 comments Download
A src/utils/SkPDFRasterizer.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 1 chunk +73 lines, -0 lines 0 comments Download
A third_party/fontconfig/LICENSE View 1 chunk +28 lines, -0 lines 0 comments Download
A third_party/fontconfig/LICENSE.win View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +118 lines, -0 lines 0 comments Download
A third_party/fontconfig/README.chromium View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +41 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/fc-case/fccase.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +330 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/fc-glyphname/fcglyphname.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +781 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/fc-lang/fclang.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +4173 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/mac/config.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +358 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/mac/fcstdint.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +9 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/mac/src/fcalias.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +388 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/mac/src/fcaliastail.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +438 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/mac/src/fcftalias.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +12 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/mac/src/fcftaliastail.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +20 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/src/fcobjshash.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +317 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/windows/config.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +237 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/windows/dirent.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +50 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/windows/dirent.c View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +145 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/windows/fcstdint.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +237 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/windows/src/fcalias.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +368 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/windows/src/fcaliastail.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +738 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/windows/src/fcftalias.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +12 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/windows/src/fcftaliastail.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +26 lines, -0 lines 0 comments Download
A third_party/fontconfig/config/windows/unistd.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +4 lines, -0 lines 0 comments Download
A third_party/iconv/LICENSE View 1 chunk +482 lines, -0 lines 0 comments Download
A third_party/iconv/README.chromium View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +77 lines, -0 lines 0 comments Download
A third_party/iconv/config/aliases.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1719 lines, -0 lines 0 comments Download
A third_party/iconv/config/canonical.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +110 lines, -0 lines 0 comments Download
A third_party/iconv/config/canonical_dos.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +15 lines, -0 lines 0 comments Download
A third_party/iconv/config/canonical_local.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +2 lines, -0 lines 0 comments Download
A third_party/iconv/config/flags.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +157 lines, -0 lines 0 comments Download
A third_party/iconv/config/windows/config.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +926 lines, -0 lines 0 comments Download
A third_party/iconv/config/windows/iconv.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +244 lines, -0 lines 0 comments Download
A third_party/iconv/config/windows/localcharset.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +44 lines, -0 lines 0 comments Download
A third_party/poppler/LICENSE View 1 chunk +339 lines, -0 lines 0 comments Download
A third_party/poppler/README.chromium View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +34 lines, -0 lines 0 comments Download
A third_party/poppler/config/linux/config.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +259 lines, -0 lines 0 comments Download
A third_party/poppler/config/linux/poppler-config.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +174 lines, -0 lines 0 comments Download
A third_party/poppler/config/mac/config.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +259 lines, -0 lines 0 comments Download
A third_party/poppler/config/mac/poppler-config.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +174 lines, -0 lines 0 comments Download
A third_party/poppler/config/poppler-version.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +39 lines, -0 lines 0 comments Download
A third_party/poppler/config/windows/config.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +225 lines, -0 lines 0 comments Download
A third_party/poppler/config/windows/poppler-config.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +173 lines, -0 lines 0 comments Download

Messages

Total messages: 33 (0 generated)
ducky
Here's a monster CL which pulls in 4 libraries (poppler and dependencies), complete with DEPS, ...
7 years, 4 months ago (2013-07-31 22:44:38 UTC) #1
vandebo (ex-Chrome)
Danny: please comment on anything you'd like to look scarier ;-) https://codereview.chromium.org/20220002/diff/21001/gyp/fontconfig.gyp File gyp/fontconfig.gyp (right): ...
7 years, 4 months ago (2013-08-01 17:49:51 UTC) #2
ducky
More style improvements, cleanup, and fixes. https://codereview.chromium.org/20220002/diff/21001/gyp/fontconfig.gyp File gyp/fontconfig.gyp (right): https://codereview.chromium.org/20220002/diff/21001/gyp/fontconfig.gyp#newcode67 gyp/fontconfig.gyp:67: ['skia_os == "linux"', ...
7 years, 4 months ago (2013-08-01 20:40:23 UTC) #3
vandebo (ex-Chrome)
https://codereview.chromium.org/20220002/diff/21001/third_party/fontconfig/linux/config.h File third_party/fontconfig/linux/config.h (right): https://codereview.chromium.org/20220002/diff/21001/third_party/fontconfig/linux/config.h#newcode1 third_party/fontconfig/linux/config.h:1: /* config.h. Generated from config.h.in by configure. */ On ...
7 years, 4 months ago (2013-08-02 15:48:54 UTC) #4
ducky
Simplified the poppler config files. The rest of them either depend on configure, the just-as-illegible ...
7 years, 4 months ago (2013-08-02 22:32:50 UTC) #5
vandebo (ex-Chrome)
https://codereview.chromium.org/20220002/diff/49001/src/utils/SkPDFRasterizer.cpp File src/utils/SkPDFRasterizer.cpp (right): https://codereview.chromium.org/20220002/diff/49001/src/utils/SkPDFRasterizer.cpp#newcode12 src/utils/SkPDFRasterizer.cpp:12: #endif On 2013/08/02 22:32:50, ducky wrote: > On 2013/08/02 ...
7 years, 4 months ago (2013-08-05 17:46:30 UTC) #6
ducky
Documentation updated. https://codereview.chromium.org/20220002/diff/49001/src/utils/SkPDFRasterizer.cpp File src/utils/SkPDFRasterizer.cpp (right): https://codereview.chromium.org/20220002/diff/49001/src/utils/SkPDFRasterizer.cpp#newcode12 src/utils/SkPDFRasterizer.cpp:12: #endif On 2013/08/05 17:46:30, vandebo wrote: > ...
7 years, 4 months ago (2013-08-05 20:43:48 UTC) #7
vandebo (ex-Chrome)
https://codereview.chromium.org/20220002/diff/76001/third_party/fontconfig/global/fc-case/fccase.h File third_party/fontconfig/global/fc-case/fccase.h (right): https://codereview.chromium.org/20220002/diff/76001/third_party/fontconfig/global/fc-case/fccase.h#newcode1 third_party/fontconfig/global/fc-case/fccase.h:1: /* On 2013/08/05 20:43:49, ducky wrote: > On 2013/08/05 ...
7 years, 4 months ago (2013-08-07 17:36:43 UTC) #8
ducky
More cleanup of the READMEs https://codereview.chromium.org/20220002/diff/76001/third_party/fontconfig/global/fc-case/fccase.h File third_party/fontconfig/global/fc-case/fccase.h (right): https://codereview.chromium.org/20220002/diff/76001/third_party/fontconfig/global/fc-case/fccase.h#newcode1 third_party/fontconfig/global/fc-case/fccase.h:1: /* On 2013/08/07 17:36:43, ...
7 years, 4 months ago (2013-08-08 00:43:19 UTC) #9
edisonn
https://codereview.chromium.org/20220002/diff/131001/gyp/gm.gyp File gyp/gm.gyp (right): https://codereview.chromium.org/20220002/diff/131001/gyp/gm.gyp#newcode63 gyp/gm.gyp:63: ['skia_os in ["linux", "mac", "win"]', { maybe it is ...
7 years, 4 months ago (2013-08-08 20:14:16 UTC) #10
ducky
https://codereview.chromium.org/20220002/diff/131001/gyp/gm.gyp File gyp/gm.gyp (right): https://codereview.chromium.org/20220002/diff/131001/gyp/gm.gyp#newcode63 gyp/gm.gyp:63: ['skia_os in ["linux", "mac", "win"]', { On 2013/08/08 20:14:17, ...
7 years, 4 months ago (2013-08-08 21:35:03 UTC) #11
Lei Zhang
https://codereview.chromium.org/20220002/diff/131001/gyp/freetype.gyp File gyp/freetype.gyp (right): https://codereview.chromium.org/20220002/diff/131001/gyp/freetype.gyp#newcode90 gyp/freetype.gyp:90: '../third_party/externals/freetype/src/pcf/pcf.c', alphabetical in each section. I take it the ...
7 years, 4 months ago (2013-08-08 21:47:55 UTC) #12
ducky
More style fixes! https://codereview.chromium.org/20220002/diff/131001/gyp/freetype.gyp File gyp/freetype.gyp (right): https://codereview.chromium.org/20220002/diff/131001/gyp/freetype.gyp#newcode90 gyp/freetype.gyp:90: '../third_party/externals/freetype/src/pcf/pcf.c', On 2013/08/08 21:47:56, Lei Zhang ...
7 years, 4 months ago (2013-08-09 22:14:57 UTC) #13
Lei Zhang
https://codereview.chromium.org/20220002/diff/131001/third_party/fontconfig/README.chromium File third_party/fontconfig/README.chromium (right): https://codereview.chromium.org/20220002/diff/131001/third_party/fontconfig/README.chromium#newcode6 third_party/fontconfig/README.chromium:6: License (Windows-specific files): LGPL On 2013/08/09 22:14:57, ducky wrote: ...
7 years, 4 months ago (2013-08-09 22:26:48 UTC) #14
ducky
Readme fixes https://codereview.chromium.org/20220002/diff/131001/third_party/fontconfig/README.chromium File third_party/fontconfig/README.chromium (right): https://codereview.chromium.org/20220002/diff/131001/third_party/fontconfig/README.chromium#newcode6 third_party/fontconfig/README.chromium:6: License (Windows-specific files): LGPL On 2013/08/09 22:26:48, ...
7 years, 4 months ago (2013-08-12 22:05:10 UTC) #15
Lei Zhang
No major concerns from me for the third party bits. https://codereview.chromium.org/20220002/diff/182001/third_party/fontconfig/README.chromium File third_party/fontconfig/README.chromium (right): https://codereview.chromium.org/20220002/diff/182001/third_party/fontconfig/README.chromium#newcode29 ...
7 years, 4 months ago (2013-08-14 02:15:28 UTC) #16
ducky
https://codereview.chromium.org/20220002/diff/182001/third_party/fontconfig/README.chromium File third_party/fontconfig/README.chromium (right): https://codereview.chromium.org/20220002/diff/182001/third_party/fontconfig/README.chromium#newcode29 third_party/fontconfig/README.chromium:29: Autogenerated files (consistent across platforms) added to third_party/fontconfig/config: On ...
7 years, 4 months ago (2013-08-14 02:27:01 UTC) #17
vandebo (ex-Chrome)
I was going to give this a last look before giving the ok, but I ...
7 years, 4 months ago (2013-08-14 15:41:37 UTC) #18
ducky
Yet more fixes... https://codereview.chromium.org/20220002/diff/191001/gyp/fontconfig.gyp File gyp/fontconfig.gyp (right): https://codereview.chromium.org/20220002/diff/191001/gyp/fontconfig.gyp#newcode73 gyp/fontconfig.gyp:73: 'FC_CACHEDIR='"/usr/local/var/cache/fontconfig"'', On 2013/08/14 15:41:37, vandebo wrote: ...
7 years, 4 months ago (2013-08-14 20:43:17 UTC) #19
vandebo (ex-Chrome)
https://codereview.chromium.org/20220002/diff/191001/src/utils/SkPDFRasterizer.cpp File src/utils/SkPDFRasterizer.cpp (right): https://codereview.chromium.org/20220002/diff/191001/src/utils/SkPDFRasterizer.cpp#newcode62 src/utils/SkPDFRasterizer.cpp:62: 255, r, g, b); On 2013/08/14 20:43:18, ducky wrote: ...
7 years, 4 months ago (2013-08-15 00:22:13 UTC) #20
ducky
https://codereview.chromium.org/20220002/diff/191001/src/utils/SkPDFRasterizer.cpp File src/utils/SkPDFRasterizer.cpp (right): https://codereview.chromium.org/20220002/diff/191001/src/utils/SkPDFRasterizer.cpp#newcode62 src/utils/SkPDFRasterizer.cpp:62: 255, r, g, b); On 2013/08/15 00:22:13, vandebo wrote: ...
7 years, 4 months ago (2013-08-15 01:19:11 UTC) #21
vandebo (ex-Chrome)
https://codereview.chromium.org/20220002/diff/207001/gyp/freetype.gyp File gyp/freetype.gyp (left): https://codereview.chromium.org/20220002/diff/207001/gyp/freetype.gyp#oldcode86 gyp/freetype.gyp:86: '../third_party/freetype/include_overrides', Apparently this is the way that skia does ...
7 years, 4 months ago (2013-08-15 16:12:56 UTC) #22
ducky
Hopefully one step closer to ending the never-ending CL... https://codereview.chromium.org/20220002/diff/207001/gyp/freetype.gyp File gyp/freetype.gyp (left): https://codereview.chromium.org/20220002/diff/207001/gyp/freetype.gyp#oldcode86 gyp/freetype.gyp:86: ...
7 years, 4 months ago (2013-08-15 21:38:13 UTC) #23
vandebo (ex-Chrome)
https://codereview.chromium.org/20220002/diff/212006/gyp/freetype.gyp File gyp/freetype.gyp (right): https://codereview.chromium.org/20220002/diff/212006/gyp/freetype.gyp#newcode119 gyp/freetype.gyp:119: 'include_dirs': [ Pull the other common things into the ...
7 years, 4 months ago (2013-08-15 23:17:13 UTC) #24
ducky
Yet another attempt to end the never-ending CL... https://codereview.chromium.org/20220002/diff/212006/gyp/freetype.gyp File gyp/freetype.gyp (right): https://codereview.chromium.org/20220002/diff/212006/gyp/freetype.gyp#newcode119 gyp/freetype.gyp:119: 'include_dirs': ...
7 years, 4 months ago (2013-08-16 02:18:51 UTC) #25
vandebo (ex-Chrome)
LGTM at long last
7 years, 4 months ago (2013-08-19 23:25:18 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/richardlin@chromium.org/20220002/237001
7 years, 4 months ago (2013-08-20 01:25:33 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/richardlin@chromium.org/20220002/237001
7 years, 4 months ago (2013-08-20 01:32:04 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/richardlin@chromium.org/20220002/237001
7 years, 4 months ago (2013-08-20 03:07:48 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/richardlin@chromium.org/20220002/232050
7 years, 4 months ago (2013-08-20 03:23:41 UTC) #30
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/richardlin@chromium.org/20220002/237001
7 years, 4 months ago (2013-08-20 03:36:42 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/richardlin@chromium.org/20220002/237001
7 years, 4 months ago (2013-08-20 16:32:11 UTC) #32
commit-bot: I haz the power
7 years, 4 months ago (2013-08-20 16:34:58 UTC) #33
Message was sent while issue was closed.
Change committed as 10823

Powered by Google App Engine
This is Rietveld 408576698