Go to file
halcanary be27a118c2 SkPDF: SkPDFGraphicState Lookup hashtabled
In Release, running `dm --src skp --config pdf`, I get a
speedup of about 1.2%.

SkPDFGraphicState class:
-   Holds the subset of SkPaint that maps to a PDF Graphics
    State
-   These fields are easily comparable, making hashtable
    comparisons easy.

SkPDFCanon:
-   findGraphicState() takes a SkPDFGraphicState, not a SkPaint
-   fGraphicStateRecords is a SkHashSet, not a SkTDArray

SkPDFGraphicState:
-   mode_for_pdf() replaces logic inside equivalent(), but is
    only called once per lookup.
-   emitObject() no longer modifies the SkPDFGraphicState to
    cache the SkPDFDict stucture.  (Since it is de-duped,
    this get no speedup).
-   Static Functions that don't use the canon return a plain
    SkPDFDict now.  No need for fPopulated.

SkTHash.h
-   SkHashSet::forall added

SkPDFDevice; SkPDFShader
-   Updated for new SkPDFGraphicState interface.

BUG=skia:3585

Review URL: https://codereview.chromium.org/1046293002
2015-04-01 13:31:19 -07:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench Add timing SkCodec to nanobench. 2015-04-01 12:09:17 -07:00
bin tools: add sync-and-gyp script 2015-03-27 12:11:49 -07:00
debugger Debugger: remove dead feature (SkPicture offset display) & fix bug (unbalanced indents) 2015-03-26 10:08:04 -07:00
dm Creating a new wrapper for gif decoder 2015-04-01 06:58:48 -07:00
docs Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
example C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
experimental C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
forth Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
gm Revert of Implement approx-match support in image filter saveLayer() offscreen. (patchset #27 id:510001 of https://codereview.chromium.org/1034733002/) 2015-04-01 04:19:45 -07:00
gyp move Atlas Text Context to its own file 2015-04-01 12:40:54 -07:00
include Switch to one single bitmap text blob cache allocation 2015-04-01 11:30:28 -07:00
platform_tools Update the Android scripts to refresh device names and capabilities. 2015-04-01 12:15:39 -07:00
resources Ico test with embedded png 2015-04-01 12:09:22 -07:00
samplecode C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
site C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
src SkPDF: SkPDFGraphicState Lookup hashtabled 2015-04-01 13:31:19 -07:00
tests Implicit constructors for SkFunction are much more readable. 2015-04-01 13:08:50 -07:00
third_party Revert of Enable both static and dynamically linked libpng (patchset #4 id:60001 of https://codereview.chromium.org/1032253003/) 2015-04-01 11:20:12 -07:00
tools Turn on Chromium's top 25 page set 2015-03-31 10:59:15 -07:00
.gitignore git: add skps to .gitignore 2015-02-13 18:57:33 -08:00
AUTHORS Fix GIF transparency. 2015-02-04 21:31:23 -08:00
codereview.settings Automatically add a docs preview link and NOTRY=true when there are only docs changes. 2015-02-26 10:16:13 -08:00
CONTRIBUTING Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
CQ_COMMITTERS add new Skia team member to committers list 2015-02-03 11:10:57 -08:00
DEPS WIP: Added support for giflib, updated jpeg and png 2015-03-30 07:52:52 -07:00
Doxyfile C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
gyp_skia allow caller to override the default output directory for gyp 2014-09-29 11:42:25 -07:00
gyp_skia.py Roll gyp deps from 1765 to 1796. 2013-11-21 18:11:14 +00:00
HASHTAGS Fix cr SKPs naming 2015-03-31 08:03:02 -07:00
LICENSE Manually update copyright notices in files that defied the automated process 2011-07-28 14:24:55 +00:00
make.bat Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
make.py Run gyp on Win with --no-parallel -G config=$(BUILDTYPE), fix pylint 2015-03-03 13:15:38 -05:00
Makefile Run gyp with --no-parallel -G config=$(BUILDTYPE) 2015-03-03 06:05:56 -08:00
OWNERS add root files from chrome 2013-08-13 19:11:15 +00:00
PRESUBMIT.py Find the HASHTAGS file even if you are not at the checkout root. 2015-04-01 09:12:51 -07:00
README Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
README.chromium add root files from chrome 2013-08-13 19:11:15 +00:00
skia.gyp Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
SKP_VERSION Update SKP version 2015-03-29 01:19:04 -07:00
whitespace.txt Whitespace change to see if Android bots are fixed 2015-03-27 09:46:25 -07:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at https://skia.org.