7#ifndef CORE_FPDFAPI_EDIT_CPDF_PAGECONTENTGENERATOR_H_
8#define CORE_FPDFAPI_EDIT_CPDF_PAGECONTENTGENERATOR_H_
15#include "core/fxcrt/bytestring.h"
16#include "core/fxcrt/fx_string_wrappers.h"
17#include "core/fxcrt/unowned_ptr.h"
22class CPDF_ImageObject;
41 void ProcessPageObject(fxcrt::ostringstream* buf,
CPDF_PageObject* pPageObj);
42 void ProcessPathPoints(fxcrt::ostringstream* buf,
CPDF_Path* pPath);
43 void ProcessPath(fxcrt::ostringstream* buf, CPDF_PathObject* pPathObj);
44 void ProcessForm(fxcrt::ostringstream* buf, CPDF_FormObject* pFormObj);
45 void ProcessImage(fxcrt::ostringstream* buf, CPDF_ImageObject* pImageObj);
46 void ProcessGraphics(fxcrt::ostringstream* buf,
CPDF_PageObject* pPageObj);
47 void ProcessDefaultGraphics(fxcrt::ostringstream* buf);
48 void ProcessText(fxcrt::ostringstream* buf, CPDF_TextObject* pTextObj);
55 void FinishMarks(fxcrt::ostringstream* buf,
60 std::map<int32_t, fxcrt::ostringstream> GenerateModifiedStreams();
64 void UpdateContentStreams(
65 std::map<int32_t, fxcrt::ostringstream>&& new_stream_data);
70 void UpdateStreamlessPageObjects(
int new_content_stream_index);
74 void UpdateResourcesDict();
78 std::vector<UnownedPtr<CPDF_PageObject>> m_pageObjects;
fxcrt::ByteString ByteString
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 IsColorSpaceGray() const
bool IsColorSpaceRGB() const
const ByteString & GetName() const
const ByteString & GetPropertyName() const
ParamType GetParamType() const
std::map< ByteString, RetainPtr< CPDF_Object >, std::less<> > DictMap
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()
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
ByteString PDF_NameEncode(const ByteString &orig)
CFX_PTemplate< float > CFX_PointF
#define NOTREACHED_NORETURN()