3 #ifndef SkPDFDocument_DEFINED
4 #define SkPDFDocument_DEFINED
14 #include "include/private/base/SkNoncopyable.h"
15 #include "src/base/SkTime.h"
17 #define SKPDF_STRING(X) SKPDF_STRING_IMPL(X)
18 #define SKPDF_STRING_IMPL(X) #X
35 void appendInt(
const char* owner,
const char* name,
int value);
36 void appendFloat(
const char* owner,
const char* name,
float value);
37 void appendName(
const char* owner,
const char* attrName,
const char* value);
40 const std::vector<float>& value);
43 const std::vector<int>& nodeIds);
46 friend class ::SkPDFTagTree;
48 std::unique_ptr<SkPDFArray> fAttrs;
220 #undef SKPDF_STRING_IMPL
Types, consts, functions, and macros for colors.
static constexpr SkScalar SK_ScalarDefaultRasterDPI
SK_ScalarDefaultDPI is 72 dots per inch.
Definition: SkDocument.h:20
#define SK_MILESTONE
Definition: SkMilestone.h:8
#define SKPDF_STRING(X)
Definition: SkPDFDocument.h:17
float SkScalar
Definition: SkScalar.h:14
SkCanvas provides an interface for drawing, and how the drawing is clipped and transformed.
Definition: SkCanvas.h:99
Definition: SkExecutor.h:15
Attributes for nodes in the PDF tree.
Definition: SkPDFDocument.h:27
void appendNodeIdArray(const char *owner, const char *attrName, const std::vector< int > &nodeIds)
void appendFloatArray(const char *owner, const char *name, const std::vector< float > &value)
void appendName(const char *owner, const char *attrName, const char *value)
void appendInt(const char *owner, const char *name, int value)
void appendFloat(const char *owner, const char *name, float value)
Light weight class for managing strings.
Definition: SkString.h:118
Definition: SkStream.h:218
Shared pointer class to wrap classes that support a ref()/unref() interface.
Definition: SkRefCnt.h:220
Definition: SkPDFDocument.h:24
SK_API sk_sp< SkDocument > MakeDocument(SkWStream *stream, const Metadata &metadata)
Create a PDF-backed document, writing the results into a SkWStream.
SK_API void SetNodeId(SkCanvas *dst, int nodeID)
Associate a node ID with subsequent drawing commands in an SkCanvas.
Definition: SkPDFDocument.h:66
uint8_t fMinute
0..59
Definition: SkPDFDocument.h:74
uint8_t fMonth
1..12
Definition: SkPDFDocument.h:70
uint8_t fDay
1..31
Definition: SkPDFDocument.h:72
uint16_t fYear
e.g. 2005
Definition: SkPDFDocument.h:69
void toISO8601(SkString *dst) const
uint8_t fSecond
0..59
Definition: SkPDFDocument.h:75
int16_t fTimeZoneMinutes
Definition: SkPDFDocument.h:67
uint8_t fHour
0..23
Definition: SkPDFDocument.h:73
uint8_t fDayOfWeek
0..6, 0==Sunday
Definition: SkPDFDocument.h:71
A node in a PDF structure tree, giving a semantic representation of the content.
Definition: SkPDFDocument.h:56
SkString fTypeString
Definition: SkPDFDocument.h:57
std::vector< std::unique_ptr< StructureElementNode > > fChildVector
Definition: SkPDFDocument.h:58
SkString fAlt
Definition: SkPDFDocument.h:62
int fNodeId
Definition: SkPDFDocument.h:59
std::vector< int > fAdditionalNodeIds
Definition: SkPDFDocument.h:60
AttributeList fAttributes
Definition: SkPDFDocument.h:61
SkString fLang
Definition: SkPDFDocument.h:63