Commit Graph

704 Commits

Author SHA1 Message Date
agl@chromium.org
a2c71cbd51 Add support for forcing autohinting.
http://codereview.appspot.com/1651044/show

git-svn-id: http://skia.googlecode.com/svn/trunk@580 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-06-17 20:49:17 +00:00
agl@chromium.org
46e2ec5101 We extract a sub-function from MAKENAME(_nofilter_DX), only dealing with reading
one index array, indexing into src array and output to dst array.

Because of the scatter-gather nature, we can not do much burst/batch
reading/writing to improve the performance.

We tried Neon vector instructions.  We also tried the hand optimize the compiler
generated assembly (non-neon) code.  The latter seems to have better gain.
About 6% improvements, not much though...

Patch-by: Xin Qi of codeaurora.org

http://codereview.appspot.com/1127042/show

git-svn-id: http://skia.googlecode.com/svn/trunk@579 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-06-16 20:04:13 +00:00
agl@chromium.org
244929c1fc Implementing S32A_Opaque_BlitRow32 using v7 neon instructions.
Taking the advantage of 16 channels of each QualWord register.  Also using the
software pipelining to scatter the loads/stores among vector operations.

Got roughly 70% improvements on simulation environments.

http://codereview.appspot.com/1148042/show

Patch-by: XinQi of codeaurora.org

git-svn-id: http://skia.googlecode.com/svn/trunk@578 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-06-16 19:52:29 +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
agl@chromium.org
4f9cdcc810 Compile fix for shared library builds.
Patch by: Evan Martin.

git-svn-id: http://skia.googlecode.com/svn/trunk@576 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-06-10 21:32:00 +00:00
agl@chromium.org
36bb697683 Add include of FT_SYNTHESIS_H
In older versions of Freetype, the FT_GlyphSlot_Own_Bitmap function is
defined in FT_SYNTHESIS_H. Modern versions have it in FT_BITMAP_H.

git-svn-id: http://skia.googlecode.com/svn/trunk@575 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-06-04 20:57:16 +00:00
agl@chromium.org
e76073bfcd Add support for fake bold of bitmap fonts.
BUG=45874

http://codereview.appspot.com/1558041/show

git-svn-id: http://skia.googlecode.com/svn/trunk@574 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-06-04 20:31:17 +00:00
agl@chromium.org
aab4090b57 Add Neon versions of memset32 and memset16
Patch by pgalizia (of codeaurora.org)

(Note: I don't read ARM and I didn't manage to find a reviewer for the
ARM assembly code so this is landing somewhat unreviewed.)

http://codereview.appspot.com/1157045/show

git-svn-id: http://skia.googlecode.com/svn/trunk@573 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-06-04 14:47:38 +00:00
reed@android.com
268013bfa6 add carbon.h include
git-svn-id: http://skia.googlecode.com/svn/trunk@572 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-06-03 14:47:27 +00:00
reed@android.com
7bea2972bb remove duplicate LCD functions (these are portable, and live in SkFontHost.cpp)
git-svn-id: http://skia.googlecode.com/svn/trunk@571 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-06-01 21:01:35 +00:00
reed@android.com
feda2f90a4 separate mac fonthost into atsui (32bit, pre-10.6) and coretext (64bit, 10.6)
implementations.

code submitted by http://codereview.appspot.com/user/refnum



git-svn-id: http://skia.googlecode.com/svn/trunk@570 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-05-19 13:47:05 +00:00
reed@android.com
e89d3ec443 Fix 64-bit Mac warnings/memory corruption
git-svn-id: http://skia.googlecode.com/svn/trunk@569 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-05-18 21:23:30 +00:00
reed@android.com
033e03cb19 export line counts
git-svn-id: http://skia.googlecode.com/svn/trunk@568 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-05-18 21:17:43 +00:00
reed@android.com
0bb6d06622 updates
git-svn-id: http://skia.googlecode.com/svn/trunk@567 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-05-17 14:50:04 +00:00
reed@android.com
5ee64ad6b5 update to match latest skia apis
git-svn-id: http://skia.googlecode.com/svn/trunk@566 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-05-17 14:34:13 +00:00
reed@android.com
647d3daeea fix maxWidth when using linear-text
git-svn-id: http://skia.googlecode.com/svn/trunk@565 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-05-17 14:15:14 +00:00
reed@android.com
cf4ac25442 force 10.4 SDK for macs, as the font porter there needs those APIs
git-svn-id: http://skia.googlecode.com/svn/trunk@564 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-05-12 17:25:30 +00:00
agl@chromium.org
39d39c223a Minor fixes to build under Clang:
- Remove an unused ctor that was wrong anyway.
  - Add magic angle brackets to a template declaration.

Patch-by: Evan Martin

git-svn-id: http://skia.googlecode.com/svn/trunk@563 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-05-10 21:20:58 +00:00
agl@chromium.org
70a303f3c9 [FreeType] Always use MONO hinting when hinting in monochrome.
This matches the behaviour of Cairo. It appears to be an undocumented
trick of font rendering on Linux that, in monochrome, all the hinting
modes expect no-hinting are mapped to FreeType's MONO hinting.

http://code.google.com/p/chromium/issues/detail?id=43252

http://codereview.appspot.com/1162041/show

git-svn-id: http://skia.googlecode.com/svn/trunk@562 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-05-10 14:15:50 +00:00
agl@chromium.org
652807bbc8 Revert "Revert "Use hairline when line width <= 1.0, instead of < 1.0.""
This reverts commit r560. Chromium has landed at r560, so I'm applying the
revert-revert. (See the comments in r560 for details.)

git-svn-id: http://skia.googlecode.com/svn/trunk@561 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-27 15:47:34 +00:00
agl@chromium.org
6fd950ca5c Revert "Use hairline when line width <= 1.0, instead of < 1.0."
This reverts commit r538 for the moment. In order to roll Chrome to include
some bug fixes, I want to land it in between this revert, and the revert
revert. That way the baseline changes from the other revisions can be
considered without conflating the huge number of changes due to r538.

git-svn-id: http://skia.googlecode.com/svn/trunk@560 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-26 21:47:25 +00:00
agl@chromium.org
e932a42ddb Fix internal compiler error on ARM.
For the moment, at least, switch back to the old Neon code because the
new code is triggering internal compiler errors in Chromium ARM.

git-svn-id: http://skia.googlecode.com/svn/trunk@559 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-26 21:45:08 +00:00
reed@android.com
7d970c739d updates
git-svn-id: http://skia.googlecode.com/svn/trunk@558 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-22 16:07:49 +00:00
agl@chromium.org
5f6a0762f1 Add a SkTypeface::CreateForChars() function.
This allows us to do font fallback for strange scripts.
Added empty stubs to the implementations on all platforms.

Patch-by: Evan Martin
Signed-off-by: Adam Langley

http://codereview.appspot.com/950041

git-svn-id: http://skia.googlecode.com/svn/trunk@557 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-20 22:06:40 +00:00
reed@android.com
756f6dd82d dox
git-svn-id: http://skia.googlecode.com/svn/trunk@556 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-16 20:56:00 +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
51709c748e remove obsolete closeStream() method -- the caller just unref's the stream when they're done
git-svn-id: http://skia.googlecode.com/svn/trunk@554 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-16 12:51:29 +00:00
reed@android.com
f244f1b19f add EmptyTypeface class, to gracefully handle when there are no fonts avail.
git-svn-id: http://skia.googlecode.com/svn/trunk@553 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-16 12:40:08 +00:00
reed@android.com
7911e27fad add FPSBench.cpp
git-svn-id: http://skia.googlecode.com/svn/trunk@552 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-15 16:34:54 +00:00
reed@android.com
fd9714e5bd add png to makefile for linux
git-svn-id: http://skia.googlecode.com/svn/trunk@551 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-15 14:28:24 +00:00
reed@android.com
dfee579a8d add SK_ENABLE_LIBPNG to force reference to PNG codec
git-svn-id: http://skia.googlecode.com/svn/trunk@550 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-15 14:24:50 +00:00
reed@android.com
887e4f325c be sure to ref() before returning a typeface from Create
skip duplicate faces in the same family+style slot



git-svn-id: http://skia.googlecode.com/svn/trunk@549 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-15 14:04:52 +00:00
reed@android.com
258cb228c6 fix overflow in matrixproc, and add debugging code to test that
git-svn-id: http://skia.googlecode.com/svn/trunk@548 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-14 13:36:33 +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
fbb02e7e96 extend sentinel array to avoid reading uninitialized memory
git-svn-id: http://skia.googlecode.com/svn/trunk@546 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-13 14:52:52 +00:00
reed@android.com
ca77697a9b call premultiply instead of pack32
git-svn-id: http://skia.googlecode.com/svn/trunk@545 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-13 14:03:27 +00:00
reed@android.com
337d42626b remove obsolete header
git-svn-id: http://skia.googlecode.com/svn/trunk@544 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-13 13:40:58 +00:00
reed@android.com
573a42d025 fix paraens to avoid warnings
git-svn-id: http://skia.googlecode.com/svn/trunk@543 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-13 13:36:20 +00:00
reed@android.com
9aa8b32233 add SKIA_VERSION_[MAJOR, MINOR, PATCH] in header and SkGraphics API
git-svn-id: http://skia.googlecode.com/svn/trunk@542 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-13 13:22:54 +00:00
reed@android.com
2687ae05cb add more MakeFoo factories for SkRect
git-svn-id: http://skia.googlecode.com/svn/trunk@541 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-12 21:21:59 +00:00
reed@android.com
1c0c5a0a52 fix refcnt for streams
git-svn-id: http://skia.googlecode.com/svn/trunk@540 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-12 20:16:49 +00:00
reed@android.com
6413e79414 add skhello for simple hello-world sample code
git-svn-id: http://skia.googlecode.com/svn/trunk@539 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-12 14:27:37 +00:00
anatoly@google.com
a956e4fe2e Use hairline when line width <= 1.0, instead of < 1.0.
This speeds line drawing up considerably when drawing with
default linewidth on canvas.

Review: http://codereview.appspot.com/883047/show



git-svn-id: http://skia.googlecode.com/svn/trunk@538 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-12 13:51:28 +00:00
reed@android.com
229d9b3953 ray fixes neon for dither and blend
git-svn-id: http://skia.googlecode.com/svn/trunk@537 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-09 18:44:46 +00:00
reed@android.com
5469607a00 add
git-svn-id: http://skia.googlecode.com/svn/trunk@536 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-08 18:48:12 +00:00
reed@android.com
a4e5ed854a add
git-svn-id: http://skia.googlecode.com/svn/trunk@535 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-08 18:43:22 +00:00
reed@android.com
735b790150 fix dither-to-4444 to keep the alpha value >= colors
git-svn-id: http://skia.googlecode.com/svn/trunk@534 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-04-06 21:03:33 +00:00
reed@android.com
b641c9f20b if we're strokeandfill+hairline, just draw fill (they way paths do) instead
of just hairline stroking (bad)



git-svn-id: http://skia.googlecode.com/svn/trunk@533 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-03-25 14:31:46 +00:00
reed@android.com
8381e007dc add inherit-from-root-transform flag (for fixed-positioning)
git-svn-id: http://skia.googlecode.com/svn/trunk@532 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-03-23 20:10:46 +00:00
reed@android.com
e88f551b38 use 64bit intermediate to accumulate 16.16 widths, to avoid overflow
git-svn-id: http://skia.googlecode.com/svn/trunk@531 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-03-19 14:42:28 +00:00