5#ifndef CORE_FPDFAPI_EDIT_CPDF_PAGECONTENTMANAGER_H_
6#define CORE_FPDFAPI_EDIT_CPDF_PAGECONTENTMANAGER_H_
12#include "core/fxcrt/fx_string_wrappers.h"
13#include "core/fxcrt/retain_ptr.h"
14#include "core/fxcrt/unowned_ptr.h"
15#include "third_party/abseil-cpp/absl/types/variant.h"
34 void UpdateStream(size_t stream_index, fxcrt::ostringstream* buf);
39 RetainPtr<CPDF_Stream> GetStreamByIndex(size_t stream_index);
43 void ScheduleRemoveStreamByIndex(size_t stream_index);
48 void ExecuteScheduledRemovals();
50 RetainPtr<CPDF_Stream> GetContentsStream();
55 const std::set<uint32_t> objects_with_multi_refs_;
57 absl::variant<RetainPtr<CPDF_Stream>, RetainPtr<CPDF_Array>> contents_;
58 std::set<size_t> streams_to_remove_;
float GetLineDashPhase() const
float GetLineWidth() const
CFX_GraphStateData::LineCap GetLineCap() const
CFX_GraphStateData::LineJoin GetLineJoin() const
const CPDF_Color * GetStrokeColor() const
const CPDF_Color * GetFillColor() const
bool GetRGB(int *R, int *G, int *B) const
bool IsColorSpaceRGB() const
const ByteString & GetName() const
const ByteString & GetPropertyName() const
ParamType GetParamType() const
float GetStrokeAlpha() const
float GetFillAlpha() const
BlendMode GetBlendType() const
ByteString GetBlendMode() const
void SetImage(RetainPtr< CPDF_Image > pImage)
const CFX_Matrix & matrix() const
bool ProcessPageObjects(fxcrt::ostringstream *buf)
CPDF_PageContentGenerator(CPDF_PageObjectHolder *pObjHolder)
~CPDF_PageContentGenerator()
void UpdateStream(size_t stream_index, fxcrt::ostringstream *buf)
size_t AddStream(fxcrt::ostringstream *buf)
~CPDF_PageContentManager()
CPDF_PageContentManager(CPDF_PageObjectHolder *page_obj_holder, CPDF_Document *document)
const CPDF_ColorState & color_state() const
void SetDirty(bool value)
const CPDF_GeneralState & general_state() const
const ByteString & GetResourceName() const
const CPDF_ClipPath & clip_path() const
virtual Type GetType() const =0
CPDF_GeneralState & mutable_general_state()
const CPDF_ContentMarks * GetContentMarks() const
void SetResourceName(const ByteString &resource_name)
const CFX_GraphState & graph_state() const
bool has_winding_filltype() const
const CFX_Matrix & matrix() const
bool has_alternate_filltype() const
bool has_no_filltype() const
CFX_Matrix GetTextMatrix() const
float GetFontSize() const
TextRenderingMode GetTextRenderMode() const
static ByteString Format(const char *pFormat,...)
ByteString & operator=(ByteString &&that) noexcept
CharType operator[](const size_t index) const
ByteString PDF_NameEncode(const ByteString &orig)