aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/pdf/SkPDFDevice.h21
1 files changed, 18 insertions, 3 deletions
diff --git a/include/pdf/SkPDFDevice.h b/include/pdf/SkPDFDevice.h
index 6c5e4574d4..d10f330e3a 100644
--- a/include/pdf/SkPDFDevice.h
+++ b/include/pdf/SkPDFDevice.h
@@ -28,7 +28,6 @@ class SkPDFFormXObject;
class SkPDFGlyphSetMap;
class SkPDFGraphicState;
class SkPDFObject;
-class SkPDFResourceDict;
class SkPDFShader;
class SkPDFStream;
template <typename T> class SkTSet;
@@ -148,7 +147,23 @@ public:
/** Returns the resource dictionary for this device.
*/
- SK_API SkPDFResourceDict* getResourceDict();
+ SK_API SkPDFDict* getResourceDict();
+
+ /** Get the list of resources (PDF objects) used on this page.
+ * This method will add to newResourceObjects any objects that this method
+ * depends on, but not already in knownResourceObjects. This might operate
+ * recursively so if this object depends on another object and that object
+ * depends on two more, all three objects will be added.
+ *
+ * @param knownResourceObjects The set of resources to be ignored.
+ * @param newResourceObjects The set to append dependant resources to.
+ * @param recursive If recursive is true, get the resources of the
+ * device's resources recursively. (Useful for adding
+ * objects to the catalog.)
+ */
+ SK_API void getResources(const SkTSet<SkPDFObject*>& knownResourceObjects,
+ SkTSet<SkPDFObject*>* newResourceObjects,
+ bool recursive) const;
/** Get the fonts used on this device.
*/
@@ -208,7 +223,7 @@ private:
SkClipStack fExistingClipStack;
SkRegion fExistingClipRegion;
SkPDFArray* fAnnotations;
- SkPDFResourceDict* fResourceDict;
+ SkPDFDict* fResourceDict;
SkTDArray<NamedDestination*> fNamedDestinations;
SkTDArray<SkPDFGraphicState*> fGraphicStateResources;