aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ports
Commit message (Collapse)AuthorAge
* PDF: Add text support with a font framework (font embedding to come).Gravatar vandebo@chromium.org2010-11-11
| | | | | | | | | | | | Supports fakeBold, underline, strikethrough, mode (fill, stroke, both), size, skew, alignment (left, center, right). Missing is drawFontOnPath and font lookup and embedding. Changed SkPDFString to support how it is used from drawText methods. Moved compile assert into SkTypes. Moved constants and utility function used to support fakeBold, underline, and strikethrough into higher level locations. Review URL: http://codereview.appspot.com/2946041 git-svn-id: http://skia.googlecode.com/svn/trunk@624 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add support for TTC font files in SkFontHost_Freetype.Gravatar agl@chromium.org2010-08-06
| | | | | | | | | | | | | | This is a companion change to a Chrome CL ( http://codereview.chromium.org/2870073/show ) (Patch by: jshin (Chromium)) BUG=http://crbug.com/50389 TEST=See the Chromium CL mentioned above. http://codereview.appspot.com/1847046 git-svn-id: http://skia.googlecode.com/svn/trunk@593 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix matrix use in coretext fonthostGravatar reed@android.com2010-07-22
| | | | | | | | update gm images to new baseline git-svn-id: http://skia.googlecode.com/svn/trunk@590 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix reference bugs in font linklistGravatar reed@android.com2010-07-08
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@587 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add support for forcing autohinting.Gravatar agl@chromium.org2010-06-17
| | | | | | http://codereview.appspot.com/1651044/show git-svn-id: http://skia.googlecode.com/svn/trunk@580 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add include of FT_SYNTHESIS_HGravatar agl@chromium.org2010-06-04
| | | | | | | 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
* Add support for fake bold of bitmap fonts.Gravatar agl@chromium.org2010-06-04
| | | | | | | | BUG=45874 http://codereview.appspot.com/1558041/show git-svn-id: http://skia.googlecode.com/svn/trunk@574 2bbb7eff-a529-9590-31e7-b0007b416f81
* add carbon.h includeGravatar reed@android.com2010-06-03
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@572 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove duplicate LCD functions (these are portable, and live in SkFontHost.cpp)Gravatar reed@android.com2010-06-01
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@571 2bbb7eff-a529-9590-31e7-b0007b416f81
* separate mac fonthost into atsui (32bit, pre-10.6) and coretext (64bit, 10.6)Gravatar reed@android.com2010-05-19
| | | | | | | | | | 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
* [FreeType] Always use MONO hinting when hinting in monochrome.Gravatar agl@chromium.org2010-05-10
| | | | | | | | | | | | 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
* Add a SkTypeface::CreateForChars() function.Gravatar agl@chromium.org2010-04-20
| | | | | | | | | | | | 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
* remove obsolete closeStream() method -- the caller just unref's the stream ↵Gravatar reed@android.com2010-04-16
| | | | | | when they're done git-svn-id: http://skia.googlecode.com/svn/trunk@554 2bbb7eff-a529-9590-31e7-b0007b416f81
* add EmptyTypeface class, to gracefully handle when there are no fonts avail.Gravatar reed@android.com2010-04-16
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@553 2bbb7eff-a529-9590-31e7-b0007b416f81
* be sure to ref() before returning a typeface from CreateGravatar reed@android.com2010-04-15
| | | | | | | | skip duplicate faces in the same family+style slot git-svn-id: http://skia.googlecode.com/svn/trunk@549 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix build for SK_SCALAR_IS_FIXEDGravatar reed@android.com2010-04-13
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@547 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix refcnt for streamsGravatar reed@android.com2010-04-12
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@540 2bbb7eff-a529-9590-31e7-b0007b416f81
* add optional pref-config table to codecsGravatar reed@android.com2010-03-03
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@519 2bbb7eff-a529-9590-31e7-b0007b416f81
* update for new fontsGravatar reed@android.com2010-03-02
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@517 2bbb7eff-a529-9590-31e7-b0007b416f81
* 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