aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ports
Commit message (Collapse)AuthorAge
* update save/restore comments to mention that the drawFilter is also savedGravatar reed@android.com2010-02-11
| | | | | | | | add wrapper for harfbuzz font/fontclass git-svn-id: http://skia.googlecode.com/svn/trunk@500 2bbb7eff-a529-9590-31e7-b0007b416f81
* This patch allows the use of the native FreeType emboldeningGravatar senorblanco@chromium.org2010-02-05
| | | | | | | | | | | | algorithm when "fake bold" text is used in SkPaint. It's enabled by #defining SK_USE_FREETYPE_EMBOLDEN. Review URL: http://codereview.appspot.com/198077 git-svn-id: http://skia.googlecode.com/svn/trunk@490 2bbb7eff-a529-9590-31e7-b0007b416f81
* disable debug printfs for gamma tableGravatar reed@android.com2010-01-26
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@482 2bbb7eff-a529-9590-31e7-b0007b416f81
* skia: Always use aliased text when antialiasing is disabled.Gravatar agl@chromium.org2010-01-21
| | | | | | | | | | | | | | | | | Otherwise, people who have antialiasing disabled end up with subpixel rendering if the subpixel setting happens to be set to something other than "none". This change's interpretation of these overlapping settings seems to be consistent with GTK's and Firefox's. Patch-by: Dan Erat Signed-off-by: Adam Langley BUG=http://code.google.com/p/chromium/issues/detail?id=28382 http://codereview.appspot.com/186248 git-svn-id: http://skia.googlecode.com/svn/trunk@475 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove obsolete SK_BUILD_FOR_BREW conditionalGravatar reed@android.com2010-01-12
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@473 2bbb7eff-a529-9590-31e7-b0007b416f81
* add glyph->unichar query (inverse of a cmap)Gravatar reed@android.com2010-01-08
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@472 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add parens in order to make conditional correct.Gravatar agl@chromium.org2010-01-05
| | | | | | I've been coding in Go too much and forgot that C is broken. git-svn-id: http://skia.googlecode.com/svn/trunk@470 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix r466 which was causing Chromium valgrind failures.Gravatar agl@chromium.org2010-01-04
| | | | | | | | See the added comment for details. TBR=reed (since it's a build fix) git-svn-id: http://skia.googlecode.com/svn/trunk@469 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add flag to enable bitmap strikes.Gravatar agl@chromium.org2010-01-04
| | | | | | http://codereview.appspot.com/183096 git-svn-id: http://skia.googlecode.com/svn/trunk@466 2bbb7eff-a529-9590-31e7-b0007b416f81
* update windows portGravatar reed@android.com2009-12-18
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@461 2bbb7eff-a529-9590-31e7-b0007b416f81
* SSE2 optimizations for 32bit blending blitters.Gravatar senorblanco@chromium.org2009-11-04
| | | | | | | | | | | | | | | This CL implements SSE2 optimizations for 3 of the 32bit blending blitters. It uses CPUID to detect for SSE2 at runtime. In order to accomodate runtime detection, it changes the platform procs from static arrays to static functions. It also includes an implementation of SkTime for Win32. http://codereview.appspot.com/144072 git-svn-id: http://skia.googlecode.com/svn/trunk@418 2bbb7eff-a529-9590-31e7-b0007b416f81
* change projects to just run with curren-os sdk, in prep for snow-lepardGravatar reed@android.com2009-10-14
| | | | | | | | fix fprintf warning git-svn-id: http://skia.googlecode.com/svn/trunk@385 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix base linux build, adding freetype supportGravatar reed@android.com2009-09-28
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@371 2bbb7eff-a529-9590-31e7-b0007b416f81
* add FilterRec() so it links againGravatar reed@android.com2009-09-27
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@370 2bbb7eff-a529-9590-31e7-b0007b416f81
* allow the gamma to be changed at runtimeGravatar reed@android.com2009-08-26
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@338 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix flipped text orientation on Windows.Gravatar deanm@chromium.org2009-08-14
| | | | | | | Review URL: http://codereview.appspot.com/104105 git-svn-id: http://skia.googlecode.com/svn/trunk@327 2bbb7eff-a529-9590-31e7-b0007b416f81
* FreeType: fix garbled bitmap glyphs.Gravatar agl@chromium.org2009-08-11
| | | | | | | | | | | | | At some point (probably in one of the LCD patches), the fMaskFormat for bitmap glyphs changed from kA8 to kBW. Formerly, bitmap glyphs were always transformed into A8 format. With this patch, we check the fMaskFormat and pick the correct transform at run time. http://code.google.com/p/chromium/issues/detail?id=18531 http://codereview.appspot.com/104071 git-svn-id: http://skia.googlecode.com/svn/trunk@313 2bbb7eff-a529-9590-31e7-b0007b416f81
* FreeType: don't use bitmap strikes when antialiasingGravatar agl@chromium.org2009-08-07
| | | | | | | | | | | | | If the user requested anti-aliasing then we don't use bitmap strikes in the font. The consensus among our Japanese users is that this results in the best quality. http://code.google.com/p/chromium/issues/detail?id=18333 http://codereview.appspot.com/105050 git-svn-id: http://skia.googlecode.com/svn/trunk@310 2bbb7eff-a529-9590-31e7-b0007b416f81
* add GetFileName api to SkFontHostGravatar reed@android.com2009-07-31
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@299 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix #endif placement so it works when LCD support is not definedGravatar reed@android.com2009-07-31
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@298 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add runtime detection for missing subpixel support in FreeType.Gravatar agl@chromium.org2009-07-28
| | | | | | | | | | | | | | | | | | | r291 added support for building on platforms where subpixel support has been compiled out of FreeType. However, it turns out that there is a common situation in which we build on platforms with subpixel support, but have to run without it: people downloading Chromium from the buildbots. Because we this, we need a runtime solution. Modifying the conversion routines for this seems suboptimal because the extra branches will slow down everyone. So we probe subpixel support at runtime by trying to install a low-pass filter. If we fail at this, then we map all the SkScalerContext::Rec structures to remove subpixel mode. http://codereview.appspot.com/98057 git-svn-id: http://skia.googlecode.com/svn/trunk@293 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "Support subpixel text when FreeType is built without such support."Gravatar agl@chromium.org2009-07-28
| | | | | | | | This reverts commit r291. It will be replaced with another solution in the next commit. git-svn-id: http://skia.googlecode.com/svn/trunk@292 2bbb7eff-a529-9590-31e7-b0007b416f81
* Support subpixel text when FreeType is built without such support.Gravatar agl@chromium.org2009-07-28
| | | | | | | | | | | | | | | | On Fedora, at least, FreeType is built without subpixel support. It tries to simulate subpixel mode by replicating the gray-values three times. However, it fails to simulate the actions of the low-pass filter and so doesn't add border around the glyphs. This patch adds a compile-time constant, which is the number of bytes of filter border. If this value is zero (because FreeType is simulating subpixel support), then we add a transparent border ourselves when transforming from FreeType rendered glyphs to masks. http://codereview.appspot.com/96171 git-svn-id: http://skia.googlecode.com/svn/trunk@291 2bbb7eff-a529-9590-31e7-b0007b416f81
* add filterrec logic for subpixel and slight-hintingGravatar reed@android.com2009-07-24
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@289 2bbb7eff-a529-9590-31e7-b0007b416f81
* Build fix: add FilterRec for Windows.Gravatar agl@chromium.org2009-07-23
| | | | | | | | | | | | Since we don't control the settings on Windows, I believe we may just as well filter everything. TBR=reed http://codereview.appspot.com/97070 git-svn-id: http://skia.googlecode.com/svn/trunk@288 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix uninitialized library variableGravatar reed@android.com2009-07-23
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@287 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix warnings (unused local var)Gravatar reed@android.com2009-07-23
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@285 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix valgrind warnings triggered in vertical mode.Gravatar agl@chromium.org2009-07-22
| | | | | | | | | | | | | | | | | | | Now that Chrome is rendering subpixel text, I was able to try running the renderer process under valgrind, which turned up a number of issues. First, I was calculating the stride of vertical LCD glyphs wrong (typo). Secondly, I was going horribly wrong when a glyph was being blitted at the edge of a bitmap. I suspected something was wrong with the code, but I wasn't clear enough with the structure of the code when writing it to figure out what the correct solution was. http://codereview.appspot.com/97059 git-svn-id: http://skia.googlecode.com/svn/trunk@284 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add SkFontHost::FilterRect() which allows the font host to filter our requestGravatar reed@android.com2009-07-22
| | | | | | | | | | before we turn it into a font-cache entry, for the cases where the scaler will ignore and/or collapse certain feature requests (e.g. doesn't support all levels of hinting) git-svn-id: http://skia.googlecode.com/svn/trunk@283 2bbb7eff-a529-9590-31e7-b0007b416f81
* rename SK_BUILD_SUBPIXEL to SK_SUPPORT_LCDTEXT to better match the name of theGravatar reed@android.com2009-07-22
| | | | | | | | | | | | feature (since we already have subpixel text support) fix some debug-compile problems update Makefile for lcd files git-svn-id: http://skia.googlecode.com/svn/trunk@282 2bbb7eff-a529-9590-31e7-b0007b416f81
* Mac: fix SkFontHost_mac.cpp to work with the new hinting interface.Gravatar agl@chromium.org2009-07-21
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@277 2bbb7eff-a529-9590-31e7-b0007b416f81
* Subpixel glyph rendering support.Gravatar agl@chromium.org2009-07-21
| | | | | | | | | | | | | | | | This patch adds support for rendering subpixel glyphs (using Freetype). In order to control this rendering see SkPaint::setLCDRenderText in SkPaint.h. To setup the LCD mode, see SkFontHost::SetSubpixelOrientation and SkFontHost::SetSubpixelOrder in SkFontHost.h. This patch also adds more fine grained control over hinting (again, only for Freetype currently). One can now control the hinting with SkPaint::setHinting. git-svn-id: http://skia.googlecode.com/svn/trunk@275 2bbb7eff-a529-9590-31e7-b0007b416f81
* use genericRGB space to ensure that we decode exactly the pixels we encodeGravatar reed@android.com2009-07-08
| | | | | | | | add -r option to gm to read and compare against known images git-svn-id: http://skia.googlecode.com/svn/trunk@256 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix a precedence error in an assert in the fontconfig host.Gravatar deanm@chromium.org2009-07-01
| | | | | | | Review URL: http://codereview.appspot.com/90060 git-svn-id: http://skia.googlecode.com/svn/trunk@246 2bbb7eff-a529-9590-31e7-b0007b416f81
* use sk_bzero instead of bzero, since it isn't always available.Gravatar reed@android.com2009-06-29
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@244 2bbb7eff-a529-9590-31e7-b0007b416f81
* move xfermode modes from porterduff into xfermode itselfGravatar reed@android.com2009-06-22
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@232 2bbb7eff-a529-9590-31e7-b0007b416f81
* almost there on gm (need to fix image writes/reads/compares)Gravatar reed@android.com2009-06-21
| | | | | | | | | move SkAutoGraphics into SkGraphics.h add [] operators to SkString git-svn-id: http://skia.googlecode.com/svn/trunk@228 2bbb7eff-a529-9590-31e7-b0007b416f81
* update to latest api (need a test for this port!)Gravatar reed@android.com2009-06-19
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@225 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make sure we have a non-null FreeType face before dereferencing it.Gravatar deanm@chromium.org2009-06-19
| | | | | | | | | | | This prevents a NULL pointer crash in generateFontMetrics with some fonts. Patch by Lei Zhang. Original Chromium bug: http://code.google.com/p/chromium/issues/detail?id=13007 Review URL: http://codereview.appspot.com/78056 git-svn-id: http://skia.googlecode.com/svn/trunk@224 2bbb7eff-a529-9590-31e7-b0007b416f81
* Some Linux / 64-bit compile fixes.Gravatar deanm@chromium.org2009-06-11
| | | | | | | Review URL: http://codereview.appspot.com/63189 git-svn-id: http://skia.googlecode.com/svn/trunk@209 2bbb7eff-a529-9590-31e7-b0007b416f81
* fontconfig: allow fallback for certain magical font names.Gravatar agl@chromium.org2009-06-01
| | | | | | | | | | http://codereview.appspot.com/63169 http://code.google.com/p/chromium/issues/detail?id=10665 Patch-by: Evan Martin git-svn-id: http://skia.googlecode.com/svn/trunk@193 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix reference count on openStreamGravatar reed@android.com2009-05-18
| | | | | | | | Issue 62067: SkFontHost_linux.cpp: Reference counting problem git-svn-id: http://skia.googlecode.com/svn/trunk@176 2bbb7eff-a529-9590-31e7-b0007b416f81
* Typo fix for VDMX parsing in Chromium.Gravatar agl@chromium.org2009-05-07
| | | | | | | TBR=reed git-svn-id: http://skia.googlecode.com/svn/trunk@170 2bbb7eff-a529-9590-31e7-b0007b416f81
* add simple port of memory APIs, to be used as a template for other platformsGravatar reed@android.com2009-05-04
| | | | | | | | that may want to add new_handler logic or other hooks. git-svn-id: http://skia.googlecode.com/svn/trunk@167 2bbb7eff-a529-9590-31e7-b0007b416f81
* check for 0 upem in freetypeGravatar reed@android.com2009-05-04
| | | | | | | | add 32bit-overflow check git-svn-id: http://skia.googlecode.com/svn/trunk@165 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add fontconfig support.Gravatar agl@chromium.org2009-04-28
| | | | | | | | | | | Fontconfig is usually found on Linux systems and handles configuration, parsing and caching issues involved with enumerating and matching fonts. This patch adds SkFontHost methods based on fontconfig. git-svn-id: http://skia.googlecode.com/svn/trunk@162 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix mac buildGravatar reed@android.com2009-04-23
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@158 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sync with Chromium's forkGravatar agl@chromium.org2009-04-22
| | | | | | | | | | | | | | | | * Add the following font metrics fields: + fAvgCharWidth + fXMin + fXMax + fXHeight * Add \#if 0'ed includes for the Freetype headers for Xcode, scons and other tools which chase headers. * Correctly render 1bpp fonts (mostly Chinese fonts at small sizes) git-svn-id: http://skia.googlecode.com/svn/trunk@157 2bbb7eff-a529-9590-31e7-b0007b416f81
* trivial: fix wsGravatar reed@android.com2009-04-14
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@156 2bbb7eff-a529-9590-31e7-b0007b416f81
* add SkSfntUtils to parse some known truetype tablesGravatar reed@android.com2009-04-14
| | | | | | | | | | 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