| Index: site/user/sample/pdf.md
|
| diff --git a/site/user/sample/pdf.md b/site/user/sample/pdf.md
|
| index 1668f3939a05358d724ad2983cdf586b1cde569d..d54172bc526341cde406379fa963db48ded0755f 100644
|
| --- a/site/user/sample/pdf.md
|
| +++ b/site/user/sample/pdf.md
|
| @@ -1,8 +1,8 @@
|
| Using Skia's PDF Backend
|
| ========================
|
|
|
| -Here is an example of using Skia's PDF backend in the recommended way:
|
| -via the SkDocument and SkCanvas APIs.
|
| +Here is an example of using Skia's PDF backend (SkPDF) via the
|
| +SkDocument and SkCanvas APIs.
|
|
|
| <!--?prettify lang=cc?-->
|
|
|
| @@ -39,3 +39,59 @@ via the SkDocument and SkCanvas APIs.
|
| }
|
| return pdfDocument->close();
|
| }
|
| +
|
| +* * *
|
| +
|
| +<span id="limits">SkPDF Limitations</span>
|
| +------------------------------------------
|
| +
|
| +There are several corners of Skia's public API that SkPDF currently
|
| +does not handle because either no known client uses the feature or
|
| +there is no simple PDF-ish way to handle it.
|
| +
|
| +In this document:
|
| +
|
| + + **drop** means to draw nothing.
|
| +
|
| + + **ignore** mean to draw without the effect
|
| +
|
| + + **expand** means to implement something in a non-PDF-ish way.
|
| + This may mean to rasterize vector graphics, to expand paths with
|
| + path effects into many individual paths, or to convert text to
|
| + paths.
|
| +
|
| +<style scoped><!--
|
| +#pdftable {border-collapse:collapse;}
|
| +#pdftable tr th, #pdftable tr td {border:#888888 2px solid;padding: 5px;}
|
| +--></style>
|
| +<table id="pdftable">
|
| +<tr><th>Effect</th> <th>text</th> <th>images</th> <th>everything
|
| + else</th></tr>
|
| +<tr><th>SkMaskFilter</th> <td>drop</td> <td>ignore</td> <td>ignore</td></tr>
|
| +<tr><th>SkPathEffect</th> <td>ignore</td> <td>n/a</td> <td>expand</td></tr>
|
| +<tr><th>SkColorFilter</th> <td>ignore</td> <td>expand</td> <td>ignore</td></tr>
|
| +<tr><th>SkImageFilter</th> <td>expand</td> <td>expand</td> <td>expand</td></tr>
|
| +<tr><th>unsupported SkXferModes</th> <td>ignore</td> <td>ignore</td> <td>ignore</td></tr>
|
| +<tr><th>non-gradient SkShader</th> <td>expand</td> <td>n/a</td> <td>expand</td></tr>
|
| +</table>
|
| +
|
| +Notes:
|
| +
|
| + - *SkImageFilter*: When SkImageFilter is expanded, text-as-text is lost.
|
| +
|
| + - *SkXferMode*: The following transfer modes are not natively
|
| + supported by PDF: DstOver, SrcIn, DstIn, SrcOut, DstOut, SrcATop,
|
| + DstATop, and Modulate.
|
| +
|
| +Other limitations:
|
| +
|
| + - *drawText with VerticalText* — drop. No known clients seem to make use
|
| + of the VerticalText flag.
|
| +
|
| + - *drawTextOnPath* — expand. (Text-as-text is lost.)
|
| +
|
| + - *drawVertices* — drop.
|
| +
|
| + - *drawPatch* — drop.
|
| +
|
| +* * *
|
|
|