bungeman@google.com
1ddd7c3928
Change pdfTransform to asAffine.
...
http://codereview.appspot.com/4704044/
git-svn-id: http://skia.googlecode.com/svn/trunk@1851 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-13 19:41:55 +00:00
bsalomon@google.com
b3b8dfa313
Fix path iter returned pt on close, test path close pt in unit test.
...
Review URL: http://codereview.appspot.com/4715044/
git-svn-id: http://skia.googlecode.com/svn/trunk@1849 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-13 17:44:36 +00:00
tomhudson@google.com
47e0a09052
Replace vsnprintf with vsnprintf_s; add code to reproduce issue to StringTest;
...
fix another Windows test failure.
git-svn-id: http://skia.googlecode.com/svn/trunk@1829 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-08 17:49:22 +00:00
reed@google.com
2b75f4279a
add asABlur() to maskfilters, so devices like gpu and pdf can query them.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1816 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-07 13:43:38 +00:00
vandebo@chromium.org
2ef12d4bb5
[PDF] Add a concept of a substitute object to the SkPDFCatalog class.
...
Code by Arthur Hsu, original code review: http://codereview.appspot.com/4650060/
Review URL: http://codereview.appspot.com/4639102
git-svn-id: http://skia.googlecode.com/svn/trunk@1812 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-06 23:31:24 +00:00
vandebo@chromium.org
d3a8c94dfd
A bit set class. Will be used for font subsetting.
...
Committed on behalf of arthurhsu@chromium.org with a few final nits.
Original CL: http://codereview.appspot.com/4627077
Review URL: http://codereview.appspot.com/4657070
git-svn-id: http://skia.googlecode.com/svn/trunk@1788 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-02 01:26:37 +00:00
tomhudson@google.com
ee69472409
Remove compile warning by removing unnecessary output.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1783 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-07-01 20:22:01 +00:00
tomhudson@google.com
3a1f6a06cc
SkStringPrintf helper fucntion + a new unit test for it.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1766 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-30 14:39:52 +00:00
epoger@google.com
f65817c3c0
remove last vestiges of intentional break
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1753 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-29 14:34:52 +00:00
epoger@google.com
33250842da
fix intentional break
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1751 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-29 14:26:14 +00:00
epoger@google.com
601d1baa75
another intentional break
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1750 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-29 14:14:24 +00:00
epoger@google.com
3721a7a053
fix intentional break
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1749 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-29 13:55:12 +00:00
epoger@google.com
2278a7809e
intentional error to exercise buildbot emails
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1748 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-29 13:41:47 +00:00
reed@google.com
8a85d0c493
replace detach/getStream apis on dynamicwstream with SkData
...
http://codereview.appspot.com/4657046/
git-svn-id: http://skia.googlecode.com/svn/trunk@1714 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-24 19:12:12 +00:00
reed@google.com
6f2b44d2ff
add (disabled) tests for common angles
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1708 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-24 18:13:39 +00:00
tomhudson@google.com
fc1539a040
Experimental framework for fast quadratic subdivision density computation code.
...
Lets us test multiple implementations of the code that determines how many
points to divide a quadratic into and guarantee that estimates are within
a factor of two of the conservative computation.
git-svn-id: http://skia.googlecode.com/svn/trunk@1701 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-24 15:43:24 +00:00
reed@google.com
8d0b5770f8
rename public SkDataRef to SkData
...
rename animator's internal SkData to SkDataInput
git-svn-id: http://skia.googlecode.com/svn/trunk@1697 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-24 13:07:31 +00:00
reed@google.com
70442a6cf7
add copyToData() to dyanamicwstream
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1695 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-23 21:48:04 +00:00
epoger@google.com
d33f75c7be
Move PointTest.cpp out of tests/core into tests/ ; the other arrangement was
...
"clever" but was causing build problems.
git-svn-id: http://skia.googlecode.com/svn/trunk@1604 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-15 18:49:21 +00:00
epoger@google.com
1fd56dc6e1
Implement SkPoint::Normalize() for SK_SCALAR_IS_FIXED and add performance warning to its declaration
...
http://codereview.appspot.com/4582043/
git-svn-id: http://skia.googlecode.com/svn/trunk@1602 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-15 18:04:58 +00:00
reed@google.com
1622c99150
add
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1589 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-14 19:22:21 +00:00
epoger@google.com
baa677b248
delete all old (non-Gyp) buildfiles
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1583 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-14 18:35:08 +00:00
reed@google.com
da9fac0aa1
add row/col major getters, plus unit-tests
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1564 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-13 14:46:52 +00:00
reed@google.com
125002a94c
update SkMatrix44
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1559 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-09 19:13:41 +00:00
epoger@google.com
bf083a9a20
fix windows compile errors in "tests"
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1547 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-08 18:26:08 +00:00
tomhudson@google.com
ddab2276cb
Duplicates code from GrPathUtils to verify that an approximation for the number
...
of points in a quadratic curve is within +/- 2x the value determined by the
previous expensive method.
Running a similar approximation method on the Guimark2 HTML5 Charting demo drops
the share of time spent in SkPoint::distanceToLineSegmentBetweenSqd() from 4.57%
to under 0.6%, although SkPath::Iter::next(), SkPath::lineTo(), and
GrPathUtils::quadraticPointCount() all increase a bit.
Using a similar approximation method for SampleSlides.cpp produces visually
reasonable results. Without a relevant gm (it looks like gm/pathfill.cpp doesn't
have explicit quadratics?) I'm not sure how to get a better output quality
test.
We could avoid code duplication by:
- have two implementations in GrPathUtils (computedQuadraticPointCount() &
estimatedQuadraticPointCount() are my working titles)
- use a #define to select between them at compile time
- expose both of them in the header file for this test to access
git-svn-id: http://skia.googlecode.com/svn/trunk@1540 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-06-08 14:46:28 +00:00
reed@google.com
103c036218
pass correct size to read(buffer, ...) tests
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1398 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-23 12:28:48 +00:00
reed@google.com
dde0956375
add cross-process option to gpipe
...
add unittests for reader32 and writer32
git-svn-id: http://skia.googlecode.com/svn/trunk@1397 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-23 12:21:05 +00:00
epoger@google.com
bcc56836ea
tiny document-only change
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1391 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-20 17:35:46 +00:00
epoger@google.com
1f75399dce
fix PathTest for SKIA_SCALAR=fixed
...
http://codereview.appspot.com/4528083/
git-svn-id: http://skia.googlecode.com/svn/trunk@1371 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-18 20:23:30 +00:00
vandebo@chromium.org
6cc26da383
[PDF] Fix PDF primitives test for fixed scalars.
...
110999 is out of range for SkFixed (+/- 32767)
BUG=269
Review URL: http://codereview.appspot.com/4530051
git-svn-id: http://skia.googlecode.com/svn/trunk@1365 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-18 17:08:05 +00:00
epoger@google.com
2047f00e46
get tests closer to passing for SKIA_SCALAR=fixed
...
http://codereview.appspot.com/4532064/
git-svn-id: http://skia.googlecode.com/svn/trunk@1351 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-17 17:36:59 +00:00
reed@google.com
b54455e440
Change getConvexity() to now compute it if the value is set to kUnkown.
...
Change behavior for degenerate paths: now those return kConvex instead of kUnknown
git-svn-id: http://skia.googlecode.com/svn/trunk@1330 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-16 14:16:04 +00:00
reed@google.com
85b6e399d5
detect more than one loop in computeconvexity
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1326 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-15 20:25:17 +00:00
reed@google.com
7c42481c9d
migrate more tests from GrPath.cpp
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1325 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-15 04:38:34 +00:00
reed@google.com
04863fa14a
add Convexity enum to SkPath
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1324 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-15 04:08:24 +00:00
epoger@google.com
a8fd79d407
make tests return nonzero if failing
...
http://codereview.appspot.com/4545042/
git-svn-id: http://skia.googlecode.com/svn/trunk@1323 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-13 19:26:48 +00:00
epoger@google.com
6e7a7b3b1d
Another tiny comment-only change to trigger buildbot
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1322 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-13 15:15:11 +00:00
epoger@google.com
4b8117db70
Tiny comment-only change to trigger buildbot
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1321 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-13 15:01:59 +00:00
epoger@google.com
189520db79
Fix intentional breakage in previous commit
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1313 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-12 13:50:57 +00:00
epoger@google.com
262d5f78c0
Intentional breakage to test notifications, will fix quickly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1312 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-12 13:48:24 +00:00
epoger@google.com
540fb22fe9
Tiny comment-only change to trigger update
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1311 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-12 13:39:43 +00:00
epoger@google.com
67d78b18d3
Fix my intentional break.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1307 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-11 18:51:01 +00:00
epoger@google.com
76c5847bcd
Intentionally break tests, will fix quickly.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1305 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-11 18:45:12 +00:00
epoger@google.com
f28b78b0bb
Another comment-only change to test notifications
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1304 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-11 18:32:30 +00:00
epoger@google.com
823c973d3d
Tiny comment-only change to test notifications
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1302 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-11 18:10:18 +00:00
reed@google.com
75595d9392
update
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1232 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-03 21:27:49 +00:00
vandebo@chromium.org
1e1c36f4f8
Add comparison and assignment to SkClipStack (and fix an optimization bug).
...
Review URL: http://codereview.appspot.com/4423085
git-svn-id: http://skia.googlecode.com/svn/trunk@1230 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-05-03 16:26:09 +00:00
epoger@google.com
69731aa60c
Another tiny comment-only change to trigger svn update
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1191 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-26 19:31:33 +00:00
epoger@google.com
9395a7e696
Tiny comment-only change to trigger SVN update in buildbot
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1184 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-26 14:58:35 +00:00
reed@google.com
83acbe0a78
add test for premultiplycolor
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1167 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-22 19:18:20 +00:00
epoger@google.com
e05aec3b45
tiny test commit
...
http://codereview.appspot.com/4432053
git-svn-id: http://skia.googlecode.com/svn/trunk@1163 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-20 15:54:09 +00:00
reed@google.com
13659f1f8d
handle overflow
...
note: gradient caller doesn't so we can still draw wrong when the caller
converts its initial fx from float->fixed. Perhaps SkClampRange should offer
a float interface as well.
git-svn-id: http://skia.googlecode.com/svn/trunk@1149 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-18 19:59:38 +00:00
reed@google.com
63c1ad82fc
add fFx1 field, returning where to start the iterator for fCount1 range
...
add unittest
git-svn-id: http://skia.googlecode.com/svn/trunk@1145 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-18 14:15:36 +00:00
vandebo@chromium.org
fb0b0edd86
[PDF] If the clip is empty, we shouldn't bother actually drawing anything.
...
Plus, fix ifdef for flate test.
Review URL: http://codereview.appspot.com/4420041
git-svn-id: http://skia.googlecode.com/svn/trunk@1141 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-15 20:01:17 +00:00
reed@google.com
43c50c8c77
add reflection asColorMode to SkColorFilter (for gpu)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1126 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-14 15:50:52 +00:00
reed@google.com
c0d4aa2088
fix asMode() to always succeed if the xfermode was built from a Mode
...
update dox to reflect this
update test
git-svn-id: http://skia.googlecode.com/svn/trunk@1121 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-04-13 21:12:04 +00:00
reed@google.com
772813afa6
add code to test different premul techniques (disabled right now)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@1030 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-30 22:34:45 +00:00
reed@google.com
e733071abe
add refcnt helper to metadata
...
add unittests for metadata
git-svn-id: http://skia.googlecode.com/svn/trunk@1019 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-30 18:23:21 +00:00
reed@google.com
2ade0863c3
abort drawing if srcRect is outside of the bitmap bounds
...
git-svn-id: http://skia.googlecode.com/svn/trunk@951 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-17 17:48:04 +00:00
reed@google.com
ddbf4c85de
remove unused methods from SkRefPtr, as a check-point for better understanding
...
what we want to do with this class.
git-svn-id: http://skia.googlecode.com/svn/trunk@903 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-08 16:06:06 +00:00
vandebo@chromium.org
094316bd28
[PDF] Restrict scalars to the range that PDF understands.
...
* Add a config flag to ignore the restrictions
* Apply restriction to both SkPDFScalar and scalars used in content streams.
* +/- 32,767 for the integer part.
* +/1 1/65536 for the fraction part.
Review URL: http://codereview.appspot.com/4240050
git-svn-id: http://skia.googlecode.com/svn/trunk@882 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-04 03:15:13 +00:00
reed@google.com
8072e4fdc8
bump SkStrAppendScalar_MaxSize to 14 to accomodate the largest string now that
...
scalar->string uses %.8g. Floats have at most 8 significant digits, plus we add
more space for sign, decimal point and exponent.
add tests to check these limits.
git-svn-id: http://skia.googlecode.com/svn/trunk@872 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-03-01 15:44:08 +00:00
reed@google.com
fa06e52803
use sprintf to generate float->string for SkString routines, removing the
...
worry of first converting the scalar to a fixed.
git-svn-id: http://skia.googlecode.com/svn/trunk@865 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-28 21:29:58 +00:00
reed@google.com
f4888c4b45
add simple test for SkBitmap::getColor()
...
git-svn-id: http://skia.googlecode.com/svn/trunk@859 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-25 19:50:19 +00:00
reed@google.com
a67573e25f
http://codereview.appspot.com/4233041/
...
Add templated version of SkAutoTUnref.
Add unittests for it.
Remove unused helper apis on SkAutoUnref.
git-svn-id: http://skia.googlecode.com/svn/trunk@858 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-25 18:10:29 +00:00
reed@google.com
bdee9fc778
add tests for SkClipStack
...
git-svn-id: http://skia.googlecode.com/svn/trunk@828 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-22 20:17:43 +00:00
reed@google.com
f9e7132075
add tests for pushing on back as well as front
...
git-svn-id: http://skia.googlecode.com/svn/trunk@827 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-22 19:56:18 +00:00
reed@google.com
4c09d5cd4b
rename SkDeque::Iter to SkDeque::F2BIter, since it runs front-to-back (in preparation
...
for another iter that runs back-to-front (B2FIter).
add unittest for Deque
git-svn-id: http://skia.googlecode.com/svn/trunk@821 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-22 13:16:38 +00:00
reed@android.com
d413445531
update to work correctly for scalar == fixed or float
...
git-svn-id: http://skia.googlecode.com/svn/trunk@780 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-09 02:24:26 +00:00
reed@google.com
077910e20c
add SkScalarIsFinite(), and use it for a more portable impl of SkRect::isValidCoords()
...
git-svn-id: http://skia.googlecode.com/svn/trunk@775 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-08 21:56:39 +00:00
vandebo@chromium.org
4854327772
[PDF] Add support for xfermodes / blend modes.
...
- Change SkGraphicState to track and set the blend mode (xfermode) for modes built in to PDF (non porter duff modes + src over).
- Add SkXfermode::asMode() to retrieve xfermode as an enum for non porter duff modes.
- Move SkXfermode.cpp around a bit to support asMode() -- Generally move utility functions toward the top of the file.
- Make SkPDFFormXObject an isolated transparency group, as it used for saveLayer, which draws on transparent, not the device background.
- Set the graphic state in drawDevice and drawBitmap in order to get the right xfermode and alpha.
Review URL: http://codereview.appspot.com/4131043
git-svn-id: http://skia.googlecode.com/svn/trunk@774 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-08 19:28:07 +00:00
reed@google.com
62047cf198
clear the convex-hint in reset() and rewind(), to match its state in a newly
...
created path.
todo: convexity perhaps should be tristate: yes, no, unknown
git-svn-id: http://skia.googlecode.com/svn/trunk@768 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-07 19:39:09 +00:00
reed@google.com
534240f605
hide divide-by-zero from the compiler, to avoid the warning
...
git-svn-id: http://skia.googlecode.com/svn/trunk@766 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-07 19:08:59 +00:00
wjmaclean@chromium.org
ff1ec2f1a8
Add unit test for SkRect::hasValidCoordinates().
...
git-svn-id: http://skia.googlecode.com/svn/trunk@765 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-07 17:48:40 +00:00
reed@google.com
82065d667f
remove SkRefCnt safeRef() and safeUnref(), and replace the call-sites with
...
SkSafeRef() and SkSafeUnref().
This is basically a bug waiting to happen. An optimizing compiler can remove
checks for null on "this" if it chooses. However, SkRefCnt::safeRef() relies on
precisely this check...
void SkRefCnt::safeRef() {
if (this) {
this->ref();
}
}
Since a compiler might skip the if-clause, it breaks the intention of this
method, hence its removal.
static inline void SkSafeRef(SkRefCnt* obj) {
if (obj) {
obj->ref();
}
}
This form is not ignored by an optimizing compile, so we use it instead.
git-svn-id: http://skia.googlecode.com/svn/trunk@762 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-02-07 15:30:46 +00:00
reed@google.com
3636ed558f
embed a refdict inside SkDevice
...
udate unittests to test refdict's destructor
git-svn-id: http://skia.googlecode.com/svn/trunk@731 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-01-25 23:50:57 +00:00
reed@google.com
0e190d0e12
add refdict class, for holding a dictionary of reference-counted objects
...
-- experimental
git-svn-id: http://skia.googlecode.com/svn/trunk@730 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-01-25 23:36:05 +00:00
vandebo@chromium.org
2a22e10ab2
Add Truetype and Type 1 font embedding support
...
Sorry this is such a large CL. It was very exploratory for me to make this
work.
- Add an interface to SkFontHost to retrieve font information and provide NULL implementations on all platforms except Linux.
- Segment large Type 1 fonts into fonts with shared resources with 255 glyphs each.
- Convert the various Type 1 formats to the form PDF wants.
- Update font as we draw text instead of as part of the graphical state.
- Remove built-in font support, we can't really use it.
Other changes I can pull out to a separate CL if you like.
- Add SkTScopedPtr class.
- Fix double free of resources.
- Fix bug in resource unique-ifying code.
- Don't print anything for any empty clip path.
- Fix copy paste error - MiterLimit.
- Fix sign extension bug in SkPDFString
- Fix FlateTest rename that was missed on a previous commit.
Review URL: http://codereview.appspot.com/4082042
git-svn-id: http://skia.googlecode.com/svn/trunk@728 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-01-25 21:01:34 +00:00
reed@google.com
9ce6e75248
init src either opaquely (e.g. white), or with a valid ctable index (e.g. 0)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@680 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-01-10 14:04:07 +00:00
reed@google.com
1fcd51e6b2
add template macro to "safely" perform casts w/o breaking strict-aliasing
...
fix aliasing warnings
git-svn-id: http://skia.googlecode.com/svn/trunk@674 2bbb7eff-a529-9590-31e7-b0007b416f81
2011-01-05 15:50:27 +00:00
reed@google.com
ea8509cd3b
remove obsolete test
...
git-svn-id: http://skia.googlecode.com/svn/trunk@648 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-12-22 21:10:33 +00:00
senorblanco@chromium.org
ec7a30cc86
Upstream mulDiv255Ceil() from WebKit to the skia repository.
...
(Patch by Noel Gordon (noel.gordon@gmail.com ))
Review URL: http://codereview.appspot.com/3466042
git-svn-id: http://skia.googlecode.com/svn/trunk@632 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-12-07 21:07:56 +00:00
agl@chromium.org
8cfdf01ff9
Correctly handle SkPath::kInverseWinding_FillType
...
Fix for http://code.google.com/p/skia/issues/detail?id=87
Even when SkPath::kInverseWinding_FillType is given, Skia left some
lines not filled(cleared) in one case.
Patch-by: morrita
http://codereview.appspot.com/3443041
git-svn-id: http://skia.googlecode.com/svn/trunk@630 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-12-06 18:52:40 +00:00
vandebo@chromium.org
ee34e35c8c
Add flate compression test and fix bugs.
...
Review URL: http://codereview.appspot.com/3393041
git-svn-id: http://skia.googlecode.com/svn/trunk@628 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-12-02 22:55:33 +00:00
wjmaclean@chromium.org
86bff1f008
Add safe size/copy functions to Skia.
...
This patch adds four methods to SkBitmap. There are two functions to return
"safe size", defined as the number of pixels from the value returned by
getPixels() to the end of the allocated buffer.
There is one version of fillPixels() to copy the bitmap instance into an
external buffer (with specified size, and using specified stride), and another
fillPixels() to copy from an external buffer to the instance bitmap. In the
latter case the specified height, width and pixel format must match that used by
the bitmap instance, although the specified stride may be any value at least as
large as the minimum stride for the specified geometry. It is assumed that the
external buffer is of size at least (height - 1)*stride + width *
bytesPerPixel.
Both fillPixels() functions return false if the copy is not possible with the
specified parameters.
Review URL: http://codereview.appspot.com/2837041/
git-svn-id: http://skia.googlecode.com/svn/trunk@625 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-11-16 20:22:41 +00:00
vandebo@chromium.org
9b49dc0db8
First pieces of SkPDFDevice. Supports:
...
Matrix transforms.
Rendering bitmaps.
Basic paint parameters.
Rendering rectangles, points, lines, polygons.
Render a paint to the page.
Review URL: http://codereview.appspot.com/2584041
git-svn-id: http://skia.googlecode.com/svn/trunk@614 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-10-20 22:23:29 +00:00
vandebo@chromium.org
d877fdbb6e
High level pdf classes and pdf specific interface.
...
The guts of the implementation will be in SkPDFDevice and below. This is a first implementation of everything above that point.
Review URL: http://codereview.appspot.com/2342043
git-svn-id: http://skia.googlecode.com/svn/trunk@602 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-10-12 23:08:13 +00:00
vandebo@chromium.org
f66025d59a
Address senorblanco's comments on r600.
...
Don't inline constructors and destructors.
Include license in test file.
A few nits
Also, cleanup a couple compile warnings.
Review URL: http://codereview.appspot.com/2279043
git-svn-id: http://skia.googlecode.com/svn/trunk@601 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-10-01 23:26:55 +00:00
vandebo@chromium.org
8459d4e5e3
Initial PDF backend commit: directories, build rules, primitives
...
This change establishes and tests the building blocks of the PDF file format.
For now, PDF code is not compiled by default.
Review URL: http://codereview.appspot.com/1950044
git-svn-id: http://skia.googlecode.com/svn/trunk@600 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-09-24 22:25:30 +00:00
reed@android.com
097a351353
add SkRegion::setRects(), and its unit tests
...
git-svn-id: http://skia.googlecode.com/svn/trunk@588 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-07-13 18:35:14 +00:00
reed@android.com
f59799139b
rename round, ceil, etc. to avoid some platform macros
...
git-svn-id: http://skia.googlecode.com/svn/trunk@577 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-06-15 00:57:50 +00:00
reed@android.com
b00cd7258c
add SkRefPtr class (for testing at the moment)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@555 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-16 20:35:47 +00:00
reed@android.com
c846ede6a0
fix build for SK_SCALAR_IS_FIXED
...
git-svn-id: http://skia.googlecode.com/svn/trunk@547 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-13 15:29:15 +00:00
reed@android.com
9f8f48e9e4
update blitrow test to exercise different widths for blitrow
...
git-svn-id: http://skia.googlecode.com/svn/trunk@530 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-03-15 20:48:02 +00:00
reed@android.com
8e4c93b04c
disable 32A->565 + alpha for now, until it handles src-alpha==0 as a noop
...
git-svn-id: http://skia.googlecode.com/svn/trunk@525 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-03-09 15:21:28 +00:00
reed@android.com
1db89dc9a5
update tests for blitrow
...
git-svn-id: http://skia.googlecode.com/svn/trunk@524 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-03-08 22:00:55 +00:00
reed@android.com
78cd10529b
add tests for blitting all opaque or all transparent (test opts)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@523 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-03-08 20:23:57 +00:00
reed@android.com
60bc6d5cb0
add Make to SkTSize
...
git-svn-id: http://skia.googlecode.com/svn/trunk@497 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-02-11 11:09:39 +00:00
reed@android.com
f0ad0864af
add unittest for copysign
...
git-svn-id: http://skia.googlecode.com/svn/trunk@496 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-02-09 19:18:38 +00:00
reed@android.com
d0a529d028
fix memory leak
...
git-svn-id: http://skia.googlecode.com/svn/trunk@471 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-01-08 14:01:41 +00:00
reed@android.com
a3d901099d
add unittest for IntersectLine, used by hairlines
...
git-svn-id: http://skia.googlecode.com/svn/trunk@447 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-11-30 12:48:33 +00:00
reed@android.com
e72fee513a
add onSendClickToChildren to views, so a view can capture all clicks.
...
speedup some of the unittests that were too slow
minor cleanup in SkScan_Path, in prep for larger changes
git-svn-id: http://skia.googlecode.com/svn/trunk@426 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-11-16 14:52:01 +00:00
reed@android.com
cafc9f9e80
fixes around isOpaque and dithering
...
- copyTo() now preserves isOpaqueness, and BitmapCopyTest tests it
- bitmap shader doesn't claim to have shadespan16 if dithering is on, since its
sampler doesn't auto-dither (note that gradients do auto-dither in their
16bit sampler)
- blitter setup just relies on the shader to report if its 16bit sampler can be
called (allowing gradients to say yes regardless of dither, but bitmaps to say
no if dithering is on)
git-svn-id: http://skia.googlecode.com/svn/trunk@331 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-08-22 03:44:57 +00:00
reed@android.com
4516f4786f
use sk_bzero instead of bzero, since it isn't always available.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@244 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-06-29 16:25:36 +00:00
reed@android.com
4b7577b042
add unittest for matrix::flatten
...
define constant for max value flatten/unflatten can return (so clients can put
the buffer on the stack)
git-svn-id: http://skia.googlecode.com/svn/trunk@243 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-06-29 16:14:41 +00:00
reed@android.com
a0f5d1546d
move xfermode modes from porterduff into xfermode itself
...
git-svn-id: http://skia.googlecode.com/svn/trunk@232 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-06-22 17:38:10 +00:00
reed@android.com
8015dd83ae
almost there on gm (need to fix image writes/reads/compares)
...
move SkAutoGraphics into SkGraphics.h
add [] operators to SkString
git-svn-id: http://skia.googlecode.com/svn/trunk@228 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-06-21 00:49:18 +00:00
reed@android.com
bbff1d507a
add SkParsePath to go to/from SVG strings (e.g. "M0,0 L10,20")
...
git-svn-id: http://skia.googlecode.com/svn/trunk@203 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-06-05 16:21:03 +00:00
reed@android.com
6b82d1adc6
add isConvex() hit to SkPath, to be used to speed up fills and opengl
...
set linewidth in gldevice for hair rects
remove some cruft from samples
add more gl-unimpl messages
git-svn-id: http://skia.googlecode.com/svn/trunk@199 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-06-03 02:35:01 +00:00
reed@android.com
6a5a2667a7
add SkSize for dimensions
...
git-svn-id: http://skia.googlecode.com/svn/trunk@172 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-05-08 16:45:52 +00:00
reed@android.com
fbaa88d969
add canCopyTo(), to preflight if copyTo can succeed. update unittests for it
...
git-svn-id: http://skia.googlecode.com/svn/trunk@169 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-05-06 17:44:34 +00:00
reed@android.com
311c82db31
fix copyTo to only copy the minimum pixels per row, and to lock the src before
...
trying to access its colorTable. Update unittest for copyTo. Add sample for
using a mask to clip a layer.
git-svn-id: http://skia.googlecode.com/svn/trunk@168 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-05-05 23:13:23 +00:00
weita@google.com
f9ab99aaad
Allow copying an Index8 bitmap when srcConfig and dstConfig are both
...
Index8.
Also, change the logic of SkBitmap.copyTo() to do memcpy() if srcConfig
and dstConfig are the same.
git-svn-id: http://skia.googlecode.com/svn/trunk@164 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-05-03 18:23:30 +00:00
reed@android.com
4226396806
add BitmapCopyTest. Still need to consider the src==no_config case
...
git-svn-id: http://skia.googlecode.com/svn/trunk@163 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-05-01 04:00:01 +00:00
reed@android.com
9781ca5866
add SkSfntUtils to parse some known truetype tables
...
add comments and cleanup to count_tables in SkFontHost_tables.cpp
fix transparency bug in gifs
use (alpha+1) for blending in srcover mode, to ensure opaque results
git-svn-id: http://skia.googlecode.com/svn/trunk@155 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-04-14 14:28:22 +00:00
reed@android.com
eeb3b7ff98
support -android mode when running tests, which spews out android specific
...
formatting for their testing env.
git-svn-id: http://skia.googlecode.com/svn/trunk@152 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-04-09 04:06:54 +00:00
reed@android.com
80e39a77b1
cleanup formating (e.g. no trailing spaces)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@143 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-04-02 16:59:40 +00:00
reed@android.com
57b799e951
rename tests/main to testmain.cpp
...
add ANDROID specific work-around for double-cinit bug
git-svn-id: http://skia.googlecode.com/svn/trunk@142 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-04-01 20:26:42 +00:00
reed@android.com
d252db03d9
API change: SkPath computeBounds -> getBounds
...
git-svn-id: http://skia.googlecode.com/svn/trunk@140 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-04-01 18:31:44 +00:00
reed@android.com
04225dcdec
build with -Wall
...
fix associated warnings (at least on gcc 4.0.1)
git-svn-id: http://skia.googlecode.com/svn/trunk@129 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-03-20 04:59:37 +00:00
reed@android.com
eff416bec1
fix heapsort
...
git-svn-id: http://skia.googlecode.com/svn/trunk@126 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-03-18 03:08:15 +00:00
turk@google.com
6f8491bf76
Initial implementation of polygon trianagulation. It seems to be robust and passes the associated tests,
...
but has some problems:
(1) it generates T-vertices;
(2) it only works with right-handed outer contours;
(3) The sort and search are inefficient.
git-svn-id: http://skia.googlecode.com/svn/trunk@119 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-03-13 22:05:46 +00:00
reed@android.com
5e5adfd12c
migrate more legacy unittests into tests/
...
SkParse yet to be cleaned up
git-svn-id: http://skia.googlecode.com/svn/trunk@113 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-03-07 03:39:23 +00:00
reed@android.com
0650c6ca12
Move SkTSort.h back to private, and instead allow in the makefile for tests to
...
see private headers. This also means the tests don't have to use ../.. to find
the private header they want.
git-svn-id: http://skia.googlecode.com/svn/trunk@107 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-03-04 14:02:44 +00:00
turk@google.com
7d3a58a5e4
Format more consistently with the rest of Skia.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@106 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-03-04 01:33:35 +00:00
reed@android.com
d66efc273e
add test for different srcover implementations
...
git-svn-id: http://skia.googlecode.com/svn/trunk@103 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-03-03 18:35:18 +00:00
turk@google.com
5755a2a9ab
Unit test and bug fixes for cubic Bezier clipping.
...
git-svn-id: http://skia.googlecode.com/svn/trunk@102 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-03-03 02:56:05 +00:00
reed@android.com
3abec1d7c3
add initial unittests for Path
...
add operator== for paths
still need to implement isRect!
git-svn-id: http://skia.googlecode.com/svn/trunk@99 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-03-02 05:36:20 +00:00
reed@android.com
a396a16d53
add tests (unittests) to Makefile
...
move SkTSort.h into public includes
git-svn-id: http://skia.googlecode.com/svn/trunk@98 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-02-28 18:26:14 +00:00
reed@android.com
d8730ea8b2
more tests (need more meat in there)
...
git-svn-id: http://skia.googlecode.com/svn/trunk@97 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-02-27 22:06:06 +00:00
reed@android.com
ed673310e2
add initial unittest framework (tests)
...
move some previous unittests out of core classes and into tests
git-svn-id: http://skia.googlecode.com/svn/trunk@96 2bbb7eff-a529-9590-31e7-b0007b416f81
2009-02-27 16:24:51 +00:00