aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkTypeface.cpp
Commit message (Collapse)AuthorAge
...
* Force embedding full font when serializing pictures.Gravatar mtklein2014-12-11
| | | | | | | | | | | We can't do this unconditionally or pipe will become stupidly slow. DM's serialize mode fails subtly on Mac when we force embedding, so I've #ifdef'd that away. Other platforms look fine. BUG=skia: Review URL: https://codereview.chromium.org/796523002
* Add SkTypeface::getBounds()Gravatar reed2014-10-22
| | | | | | | | | mirrored from https://codereview.chromium.org/666303002/ BUG=skia: TBR= Review URL: https://codereview.chromium.org/676523002
* Replace SkTypeface::Style with SkFontStyle.Gravatar bungeman2014-10-20
| | | | | | Committed: https://skia.googlesource.com/skia/+/43b8b36b20ae00e2d78421c4cda1f3f922983a20 Review URL: https://codereview.chromium.org/488143002
* Revert of Replace SkTypeface::Style with SkFontStyle. (patchset #9 id:160001 ↵Gravatar mtklein2014-10-20
| | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/488143002/) Reason for revert: CrOS GM failures: [*] 2 ExpectationsMismatch: fontmgr_iter_565.png fontmgr_iter_8888.png Original issue's description: > Replace SkTypeface::Style with SkFontStyle. > > Committed: https://skia.googlesource.com/skia/+/43b8b36b20ae00e2d78421c4cda1f3f922983a20 TBR=reed@google.com,bungeman@google.com NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/667023002
* Replace SkTypeface::Style with SkFontStyle.Gravatar bungeman2014-10-20
| | | | Review URL: https://codereview.chromium.org/488143002
* Require SK_DECLARE_STATIC_LAZY_PTR is used in global scope.Gravatar mtklein2014-10-13
| | | | | | | | | | | | | Function- or method- local scope isn't threadsafe; the pointer is generally zero-initialized on first use in function scope (i.e. lazily... we have to go deeper), but for globals we can be pretty sure the linker will do that for us. BUG=skia: No public API changes. TBR=reed@google.com Review URL: https://codereview.chromium.org/651723003
* Restore old behavior of SkTypeface::CreateFromTypeface.Gravatar bungeman2014-09-18
| | | | | | | | | | | | | This reverts https://skia.googlesource.com/skia/+/9db509272a6fa2badbbdd2f5afce827370960a5f and completes https://skia.googlesource.com/skia/+/f91c47d91d72a1d85e2d6701864b8d7accc81647 . R=caryclark@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/586473002
* Serialize the font index.Gravatar bungeman2014-09-18
| | | | | | | | | BUG=skia:1186 R=reed@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/567013002
* Add onGetFamilyName to SkTypeface.Gravatar bungeman2014-09-17
| | | | | | | | | | | This speeds up and documents this particular feature of SkTypeface and also frees up SkFontDescriptor to be used only in serialization. R=reed@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/574873002
* Remove a layer of indirection and code from SkFontHost.Gravatar bungeman2014-09-10
| | | | | | | | R=mtklein@google.com, tomhudson@google.com, djsollen@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/105223006
* Fix thread unsafe mutex initialization.Gravatar bungeman2014-07-25
| | | | | | | | | BUG=skia:2779 R=robertphillips@google.com, mtklein@google.com, reed@android.com, bsalomon@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/419113002
* [PDF] Fix font embedding restrictions.Gravatar vandebo2014-06-19
| | | | | | | | | | | | Stop using restricted font outlines and honor don't subset restriction. Resubmit of r12600. R=halcanary@google.com, bungeman@google.com, reed@google.com Author: vandebo@chromium.org Review URL: https://codereview.chromium.org/334443002
* Port most uses of SkOnce to SkLazyPtr.Gravatar mtklein2014-06-02
| | | | | | | | | | | | | | BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=15006 Committed: http://code.google.com/p/skia/source/detail?r=15014 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/304383005
* Revert of Port most uses of SkOnce to SkLazyPtr. ↵Gravatar commit-bot@chromium.org2014-05-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/304383005/) Reason for revert: linux x86-64 release segfault in src/ports/SkFontHost_fontconfig.cpp:107 http://108.170.220.120:10117/builders/Test-Ubuntu12-ShuttleA-GTX660-x86_64-Release/builds/905/steps/RunTests/logs/stdio Original issue's description: > Port most uses of SkOnce to SkLazyPtr. > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=15006 > > Committed: http://code.google.com/p/skia/source/detail?r=15014 R=reed@google.com, mtklein@chromium.org TBR=mtklein@chromium.org, reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: mtklein@google.com Review URL: https://codereview.chromium.org/306063004 git-svn-id: http://skia.googlecode.com/svn/trunk@15015 2bbb7eff-a529-9590-31e7-b0007b416f81
* Port most uses of SkOnce to SkLazyPtr.Gravatar commit-bot@chromium.org2014-05-30
| | | | | | | | | | | | | | BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=15006 R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/304383005 git-svn-id: http://skia.googlecode.com/svn/trunk@15014 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert of Port most uses of SkOnce to SkLazyPtr. ↵Gravatar commit-bot@chromium.org2014-05-30
| | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/304383005/) Reason for revert: Leaking refs on SkTypeface on Macs. Original issue's description: > Port most uses of SkOnce to SkLazyPtr. > > BUG=skia: > > Committed: http://code.google.com/p/skia/source/detail?r=15006 R=reed@google.com, mtklein@chromium.org TBR=mtklein@chromium.org, reed@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Author: mtklein@google.com Review URL: https://codereview.chromium.org/304283007 git-svn-id: http://skia.googlecode.com/svn/trunk@15009 2bbb7eff-a529-9590-31e7-b0007b416f81
* Port most uses of SkOnce to SkLazyPtr.Gravatar commit-bot@chromium.org2014-05-30
| | | | | | | | | | | BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/304383005 git-svn-id: http://skia.googlecode.com/svn/trunk@15006 2bbb7eff-a529-9590-31e7-b0007b416f81
* Factory methods for heap-allocated SkTypeface objects.Gravatar commit-bot@chromium.org2014-04-07
| | | | | | | | | | | | | | | | | This is part of an effort to ensure that all SkPaint effects can only be allocated on the heap. This patch makes the constructors of SkTypeface and its subclasses non-public and instead provides factory methods for creating these objects on the heap. BUG=skia:2187 R=scroggo@google.com, bungeman@google.com Author: dominikg@chromium.org Review URL: https://codereview.chromium.org/227693003 git-svn-id: http://skia.googlecode.com/svn/trunk@14080 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix race on creating the default typeface.Gravatar bungeman@google.com2014-01-09
| | | | | | | | | BUG=skia:1906 R=mtklein@google.com, reed@google.com Review URL: https://codereview.chromium.org/113543005 git-svn-id: http://skia.googlecode.com/svn/trunk@12993 2bbb7eff-a529-9590-31e7-b0007b416f81
* Revert "[PDF] Fix font embedding restrictions."Gravatar vandebo@chromium.org2013-12-10
| | | | | | | | This reverts r12600 and r12601, likely causing crash on Mac. Review URL: https://codereview.chromium.org/111893002 git-svn-id: http://skia.googlecode.com/svn/trunk@12604 2bbb7eff-a529-9590-31e7-b0007b416f81
* [PDF] Fix font embedding restrictions.Gravatar commit-bot@chromium.org2013-12-10
| | | | | | | | | | | | Stop using restricted font outlines and honor don't subset restriction. R=reed@google.com, bungeman@google.com Author: vandebo@chromium.org Review URL: https://codereview.chromium.org/107863002 git-svn-id: http://skia.googlecode.com/svn/trunk@12600 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix compilation with SK_ENABLE_INST_COUNT=1Gravatar commit-bot@chromium.org2013-12-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add INHERITED declarations to class declarations that prevent compilation with the flag. Remove SK_DEFINE_INST_COUNT from all class implementations. Instead, use function-local static variables in the reference count helper classes to create the global instances to store the needed info. The accessor functions are defined inline in the helper classes, so definitions are not needed. The initialization point of the variables should be as well defined as previously. Remove SK_DECLARE_INST_COUNT_TEMPLATE and use SK_DECLARE_INST_COUNT instead. This avoids possible future compilation errors further. For SK_ENABLE_INST_COUNT=0 compilation, add an empty static member function to all classes that use SK_DECLARE_INST_COUNT and SK_DECLARE_INST_COUNT_ROOT macros. The function ensures that classes contain public INHERITED typedef. This member function seems to be compiled away. This shouĺd ensure that part of the compilation errors are caught earlier. Also adds DSK_DECLARE_INST_COUNT to few SkPDFDict subclasses. R=robertphillips@google.com, richardlin@chromium.org, bsalomon@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/98703002 git-svn-id: http://skia.googlecode.com/svn/trunk@12501 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove SK_FONTHOST_USES_FONTMGR.Gravatar bungeman@google.com2013-11-11
| | | | | | Review URL: https://codereview.chromium.org/66783003 git-svn-id: http://skia.googlecode.com/svn/trunk@12217 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2013-10-31
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@12043 2bbb7eff-a529-9590-31e7-b0007b416f81
* prototype for kerning apiGravatar reed@google.com2013-10-30
| | | | | | | | | BUG= R=bungeman@google.com Review URL: https://codereview.chromium.org/29363009 git-svn-id: http://skia.googlecode.com/svn/trunk@12018 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement charToGlyph on remaining ports.Gravatar bungeman@google.com2013-10-24
| | | | | | | | R=reed@google.com Review URL: https://codereview.chromium.org/22859070 git-svn-id: http://skia.googlecode.com/svn/trunk@11955 2bbb7eff-a529-9590-31e7-b0007b416f81
* Limit warning message to de-clutter bench output logsGravatar robertphillips@google.com2013-09-27
| | | | | | | | https://codereview.chromium.org/25112002/ git-svn-id: http://skia.googlecode.com/svn/trunk@11511 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add an empty typeface as a default-default.Gravatar bungeman@google.com2013-08-21
| | | | | | | | R=reed@google.com Review URL: https://codereview.chromium.org/22861017 git-svn-id: http://skia.googlecode.com/svn/trunk@10857 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add getFamilyNames to SkTypeface.Gravatar bungeman@google.com2013-08-07
| | | | | | | | | | | | Committed: https://code.google.com/p/skia/source/detail?r=10589 Committed: https://code.google.com/p/skia/source/detail?r=10592 Committed: https://code.google.com/p/skia/source/detail?r=10608 Review URL: https://codereview.chromium.org/21716005 git-svn-id: http://skia.googlecode.com/svn/trunk@10615 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r10608 (Add getFamilyNames to SkTypeface) due to compilation failuresGravatar robertphillips@google.com2013-08-07
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@10609 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add getFamilyNames to SkTypeface.Gravatar bungeman@google.com2013-08-07
| | | | | | | | | | Committed: https://code.google.com/p/skia/source/detail?r=10589 Committed: https://code.google.com/p/skia/source/detail?r=10592 Review URL: https://codereview.chromium.org/21716005 git-svn-id: http://skia.googlecode.com/svn/trunk@10608 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add getFamilyNames to SkTypeface.Gravatar bungeman@google.com2013-08-07
| | | | | | | | Committed: https://code.google.com/p/skia/source/detail?r=10589 Review URL: https://codereview.chromium.org/21716005 git-svn-id: http://skia.googlecode.com/svn/trunk@10592 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reverting r10589: Add getFamilyNames to SkTypefaceGravatar jvanverth@google.com2013-08-06
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@10590 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add getFamilyNames to SkTypeface.Gravatar bungeman@google.com2013-08-06
| | | | | | Review URL: https://codereview.chromium.org/21716005 git-svn-id: http://skia.googlecode.com/svn/trunk@10589 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement onGetTableTags and onGetTableData on Windows.Gravatar bungeman@google.com2013-08-01
| | | | | | | | | Implements these and removes default implementation, making the declaration in SkTypeface pure virtual. Review URL: https://codereview.chromium.org/20672004 git-svn-id: http://skia.googlecode.com/svn/trunk@10500 2bbb7eff-a529-9590-31e7-b0007b416f81
* Reintroduce default impls removed in 10495.Gravatar bungeman@google.com2013-08-01
| | | | | | | Due to poor placement of overrides in the hierarchy, nacl is failing. git-svn-id: http://skia.googlecode.com/svn/trunk@10497 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement onGetTableTags and onGetTableData on Windows.Gravatar bungeman@google.com2013-08-01
| | | | | | | | | | Implements these and removes default implementation, making the declaration in SkTypeface pure virtual. Review URL: https://codereview.chromium.org/20672004/ git-svn-id: http://skia.googlecode.com/svn/trunk@10495 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove old default implementation of SkTypeface::onGetUPEM.Gravatar bungeman@google.com2013-07-30
| | | | | | | | | | In order to introduce onGetUPEM there was written a generic but slow version in SkTypeface.cpp. All ports now implement this method and the declaration is now marked as pure virtual. git-svn-id: http://skia.googlecode.com/svn/trunk@10442 2bbb7eff-a529-9590-31e7-b0007b416f81
* refactoring for SK_FONTHOST_USES_FONTMGR optionGravatar reed@google.com2013-07-30
| | | | | | | | | BUG= R=bungeman@google.com Review URL: https://codereview.chromium.org/21149008 git-svn-id: http://skia.googlecode.com/svn/trunk@10440 2bbb7eff-a529-9590-31e7-b0007b416f81
* expose getFamilyName to public SkTypefaceGravatar reed@google.com2013-07-29
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@10418 2bbb7eff-a529-9590-31e7-b0007b416f81
* Implement onCountGlyphs and onGetUPEM on Windows.Gravatar bungeman@google.com2013-07-15
| | | | | | | | R=vandebo@chromium.org Review URL: https://codereview.chromium.org/19231003 git-svn-id: http://skia.googlecode.com/svn/trunk@10089 2bbb7eff-a529-9590-31e7-b0007b416f81
* add charsToGlyphs to SkTypefaceGravatar reed@google.com2013-07-02
| | | | | | | | | | | | Will disable new unittest until all backends are implemented. On Mac, new API is 4x faster than old paint one, so next CL I will reimplement the paint calls in terms of the new typeface call. R=eae@chromium.org Review URL: https://codereview.chromium.org/18083023 git-svn-id: http://skia.googlecode.com/svn/trunk@9860 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix issues related to resolving fonts based on name.Gravatar djsollen@google.com2013-06-05
| | | | | | | | | 1) non-system font files are not added to the cache. 2) We cache the default fonts for quick lookup. Review URL: https://codereview.chromium.org/16439004 git-svn-id: http://skia.googlecode.com/svn/trunk@9441 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix memory leak in SkTypeface.cppGravatar robertphillips@google.com2013-05-10
| | | | | | | | https://codereview.chromium.org/14617019/ git-svn-id: http://skia.googlecode.com/svn/trunk@9099 2bbb7eff-a529-9590-31e7-b0007b416f81
* Make SkTypeFace::Deserialize work for embedded fonts.Gravatar bungeman@google.com2013-04-09
| | | | | | | https://codereview.appspot.com/8584044/ git-svn-id: http://skia.googlecode.com/svn/trunk@8580 2bbb7eff-a529-9590-31e7-b0007b416f81
* Partial fix for skp reading failure on fontsGravatar robertphillips@google.com2013-04-09
| | | | | | | | verbal lgtm from bungeman@ git-svn-id: http://skia.googlecode.com/svn/trunk@8578 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_KeepingGravatar skia.committer@gmail.com2013-03-26
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@8383 2bbb7eff-a529-9590-31e7-b0007b416f81
* Change fixedWidth to fixedPitch and implement on Windows.Gravatar bungeman@google.com2013-03-25
| | | | | | | https://codereview.appspot.com/7954044/ git-svn-id: http://skia.googlecode.com/svn/trunk@8372 2bbb7eff-a529-9590-31e7-b0007b416f81
* land https://codereview.chromium.org/12676024Gravatar reed@google.com2013-03-25
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@8359 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove SkFontHost::OpenStream(), now subsumed by SkTypeface::openStream()Gravatar reed@google.com2013-03-22
| | | | | | | remove obsolete/abandoned SkFontHost_freetype_mac.cpp Review URL: https://codereview.chromium.org/13008019 git-svn-id: http://skia.googlecode.com/svn/trunk@8342 2bbb7eff-a529-9590-31e7-b0007b416f81