aboutsummaryrefslogtreecommitdiffhomepage
path: root/site/user
diff options
context:
space:
mode:
Diffstat (limited to 'site/user')
-rw-r--r--site/user/download.md36
-rw-r--r--site/user/quick/desktop.md47
-rw-r--r--site/user/tips.md88
3 files changed, 79 insertions, 92 deletions
diff --git a/site/user/download.md b/site/user/download.md
index 992fe3041b..831d3017db 100644
--- a/site/user/download.md
+++ b/site/user/download.md
@@ -24,37 +24,15 @@ Clone the Skia repository
git clone https://skia.googlesource.com/skia.git
cd skia
-Get Skia's dependencies and generate Ninja build files
-------------------------------------------------------
-
-<!--?prettify lang=sh?-->
-
- python bin/sync-and-gyp
-
-Compile all default targets
----------------------------
-
-<!--?prettify lang=sh?-->
-
- ninja -C out/Debug
-
-Execute Skia tests
-------------------
-
-[More about Skia correctness testing tools](../dev/testing/testing)
-
-<!--?prettify lang=sh?-->
-
- out/Debug/dm
-
-Execute Skia sample application
--------------------------------
-
-[More about Skia's SampleApp](sample/sampleapp)
+Getting started with Skia
+-------------------------
-<!--?prettify lang=sh?-->
+Try out more things from the [desktop](./quick/desktop),
+[Android](./quick/android), and [iOS](./quick/ios)-specific Skia
+guides.
- out/Debug/SampleApp
+Changing and contributing to Skia
+---------------------------------
At this point, you have everything you need to build and use Skia! If
you want to make changes, and possibly contribute them back to the Skia
diff --git a/site/user/quick/desktop.md b/site/user/quick/desktop.md
index 704a41c43c..88e31d72ad 100644
--- a/site/user/quick/desktop.md
+++ b/site/user/quick/desktop.md
@@ -30,50 +30,9 @@ Instructions to get started with Skia on desktop systems (Linux, Mac OS X, or Wi
Gyp Options
-----------
-When running `sync-and-gyp`, the `GYP_DEFINES` environment variable can
-be used to change Skia’s compile-time settings, using a
-space-separated list of key=value pairs. For example, to disable both
-the Skia GPU backend and PDF backends, run it as follows:
-
-<!--?prettify lang=sh?-->
-
- GYP_DEFINES='skia_gpu=0 skia_pdf=0' python bin/sync-and-gyp
- ninja -C out/Debug
-
-Note: Setting enviroment variables in the Windows CMD.EXE shell [uses a
-different syntax](./windows#env).
-
-You can also set environment variables such as `CC`, `CXX`,
-`CFLAGS`, or `CPPFLAGS` to control how Skia is compiled. For
-example:
-
-<!--?prettify lang=sh?-->
-
- CC='clang' CXX='clang++' python bin/sync-and-gyp
- ninja -C out/Debug
-
-The `GYP_GENERATORS` environment variable can be used to set the
-build systems that you want to use (as a comma-separated list).
-The default is `'ninja,msvs-ninja'` on Windows, `'ninja,xcode'` on
-Mac OS X, and just `'ninja'` on Linux. For example, to generate
-only Ninja files on Mac:
-
-<!--?prettify lang=sh?-->
-
- GYP_GENERATORS='ninja' python bin/sync-and-gyp
- ninja -C out/Debug
-
-Finally, the `SKIA_OUT` environment variable can be used to set
-the path for the build directory. The default is `out` inside the
-top-level Skia source directory. For example to test Skia with
-two different compilers:
-
-<!--?prettify lang=sh?-->
-
- CC='clang' CXX='clang++' SKIA_OUT=~/build/skia_clang python bin/sync-and-gyp
- CC='gcc' CXX='g++' SKIA_OUT=~/build/skia_gcc python bin/sync-and-gyp
- ninja -C ~/build/skia_clang/Debug
- ninja -C ~/build/skia_gcc/Debug
+Skia relies on Gyp to generate build files. Read about
+[specifying options for Gyp](/user/tips#gypdefines) to set the
+compile-time settings, compiler, build systems, and build directory.
Run unit and correctness tests
------------------------------
diff --git a/site/user/tips.md b/site/user/tips.md
index 41536211e1..ed701792dd 100644
--- a/site/user/tips.md
+++ b/site/user/tips.md
@@ -1,12 +1,62 @@
Tips & FAQ
==========
-Tips and Tricks
----------------
+<span id="gypdefines"></span>
+
+Gyp Options
+-----------
+
+When running `sync-and-gyp`, the `GYP_DEFINES` environment variable can
+be used to change Skia’s compile-time settings, using a
+space-separated list of key=value pairs. For example, to disable both
+the Skia GPU backend and PDF backends, run it as follows:
+
+<!--?prettify lang=sh?-->
+
+ GYP_DEFINES='skia_gpu=0 skia_pdf=0' python bin/sync-and-gyp
+ ninja -C out/Debug
+
+Note: Setting enviroment variables in the Windows CMD.EXE shell [uses a
+different syntax](/user/quick/windows#env).
+
+You can also set environment variables such as `CC`, `CXX`,
+`CFLAGS`, or `CPPFLAGS` to control how Skia is compiled. For
+example:
+
+<!--?prettify lang=sh?-->
+
+ CC='clang' CXX='clang++' python bin/sync-and-gyp
+ ninja -C out/Debug
+
+The `GYP_GENERATORS` environment variable can be used to set the
+build systems that you want to use (as a comma-separated list).
+The default is `'ninja,msvs-ninja'` on Windows, `'ninja,xcode'` on
+Mac OS X, and just `'ninja'` on Linux. For example, to generate
+only Ninja files on Mac:
+
+<!--?prettify lang=sh?-->
+
+ GYP_GENERATORS='ninja' python bin/sync-and-gyp
+ ninja -C out/Debug
+
+Finally, the `SKIA_OUT` environment variable can be used to set
+the path for the build directory. The default is `out` inside the
+top-level Skia source directory. For example to test Skia with
+two different compilers:
+
+<!--?prettify lang=sh?-->
+
+ CC='clang' CXX='clang++' SKIA_OUT=~/build/skia_clang python bin/sync-and-gyp
+ CC='gcc' CXX='g++' SKIA_OUT=~/build/skia_gcc python bin/sync-and-gyp
+ ninja -C ~/build/skia_clang/Debug
+ ninja -C ~/build/skia_gcc/Debug
+
+* * *
<span id="bitmap-subsetting"></span>
-### Bitmap Subsetting
+Bitmap Subsetting
+-----------------
Taking a subset of a bitmap is effectively free - no pixels are copied or
memory is allocated. This allows Skia to offer an API that typically operates
@@ -22,8 +72,8 @@ drawBitmapNine():
<span id="skp-capture"></span>
-### Capturing a `.skp` file on a web page in Chromium.
-
+Capture a `.skp` file on a web page in Chromium
+-----------------------------------------------
1. Launch Chrome or Chromium with `--no-sandbox --enable-gpu-benchmarking`
2. Open the JS console (ctrl-shift-J)
@@ -47,32 +97,32 @@ or use Skia's `SampleApp` to view it:
* * *
-FAQ
----
-
<span id="hw-acceleration"></span>
-### Does Skia support HW acceleration?
+How to add hardware acceleration in Skia
+----------------------------------------
-There are two ways Skia can take advantage of HW.
+There are two ways Skia takes advantage of specific hardware.
-1. Subclass SkCanvas
+1. Subclass SkCanvas
-Since all drawing calls go through SkCanvas, those calls can be redirected to
-a different graphics API. SkGLCanvas has been written to direct its drawing
-calls to OpenGL. See src/gl/
+ Since all drawing calls go through SkCanvas, those calls can be
+ redirected to a different graphics API. SkGLCanvas has been
+ written to direct its drawing calls to OpenGL. See src/gl/
-2. Custom bottleneck routines
+2. Custom bottleneck routines
-There are sets of bottleneck routines inside the blits of Skia that can be
-replace on a platform in order to take advantage of specific CPU features. One
-such example is the NEON SIMD instructions on ARM v7 devices. See src/opts/
+ There are sets of bottleneck routines inside the blits of Skia
+ that can be replace on a platform in order to take advantage of
+ specific CPU features. One such example is the NEON SIMD
+ instructions on ARM v7 devices. See src/opts/
* * *
<span id="font-hinting"></span>
-### Does Skia support Font hinting?
+Does Skia support Font hinting?
+-------------------------------
Skia has a built-in font cache, but it does not know how to actual render font
files like TrueType? into its cache. For that it relies on the platform to