LibreOffice Module sdext (master)  1
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
pdfi::PDFOutDev Class Reference

#include <pdfioutdev_gpl.hxx>

Inheritance diagram for pdfi::PDFOutDev:
[legend]
Collaboration diagram for pdfi::PDFOutDev:
[legend]

Public Member Functions

 PDFOutDev (PDFDoc *pDoc)
 
virtual ~PDFOutDev () override
 
virtual poppler_bool upsideDown () override
 
virtual poppler_bool useDrawChar () override
 
virtual poppler_bool interpretType3Chars () override
 
virtual poppler_bool needNonText () override
 
virtual void setDefaultCTM (double *ctm) override
 
virtual void startPage (int pageNum, GfxState *state) override
 
virtual void endPage () override
 
virtual void processLink (Link *link, Catalog *catalog) override
 
virtual void saveState (GfxState *state) override
 
virtual void restoreState (GfxState *state) override
 
virtual void updateCTM (GfxState *state, double m11, double m12, double m21, double m22, double m31, double m32) override
 
virtual void updateLineDash (GfxState *state) override
 
virtual void updateFlatness (GfxState *state) override
 
virtual void updateLineJoin (GfxState *state) override
 
virtual void updateLineCap (GfxState *state) override
 
virtual void updateMiterLimit (GfxState *state) override
 
virtual void updateLineWidth (GfxState *state) override
 
virtual void updateFillColor (GfxState *state) override
 
virtual void updateStrokeColor (GfxState *state) override
 
virtual void updateFillOpacity (GfxState *state) override
 
virtual void updateStrokeOpacity (GfxState *state) override
 
virtual void updateBlendMode (GfxState *state) override
 
virtual void updateFont (GfxState *state) override
 
virtual void updateRender (GfxState *state) override
 
virtual void stroke (GfxState *state) override
 
virtual void fill (GfxState *state) override
 
virtual void eoFill (GfxState *state) override
 
virtual void clip (GfxState *state) override
 
virtual void eoClip (GfxState *state) override
 
virtual void drawChar (GfxState *state, double x, double y, double dx, double dy, double originX, double originY, CharCode code, int nBytes, Unicode *u, int uLen) override
 Output one glyph. More...
 
virtual void drawString (GfxState *state, GooString *s) override
 
virtual void endTextObject (GfxState *state) override
 
virtual void drawImageMask (GfxState *state, Object *ref, Stream *str, int width, int height, poppler_bool invert, poppler_bool interpolate, poppler_bool inlineImg) override
 
virtual void drawImage (GfxState *state, Object *ref, Stream *str, int width, int height, GfxImageColorMap *colorMap, poppler_bool interpolate, int *maskColors, poppler_bool inlineImg) override
 
virtual void drawMaskedImage (GfxState *state, Object *ref, Stream *str, int width, int height, GfxImageColorMap *colorMap, poppler_bool interpolate, Stream *maskStr, int maskWidth, int maskHeight, poppler_bool maskInvert, poppler_bool maskInterpolate) override
 
virtual void drawSoftMaskedImage (GfxState *state, Object *ref, Stream *str, int width, int height, GfxImageColorMap *colorMap, poppler_bool interpolate, Stream *maskStr, int maskWidth, int maskHeight, GfxImageColorMap *maskColorMap, poppler_bool maskInterpolate) override
 
void setSkipImages (bool bSkipImages)
 

Static Public Member Functions

static void setPageNum (int nNumPages)
 

Private Member Functions

int parseFont (long long nNewId, GfxFont *pFont, GfxState *state) const
 
void writeFontFile (GfxFont *gfxFont) const
 

Static Private Member Functions

static void printPath (GfxPath *pPath)
 

Private Attributes

PDFDoc * m_pDoc
 
std::unordered_map< long long, FontAttributesm_aFontMap
 
std::unique_ptr< UnicodeMap > m_pUtf8Map
 
bool m_bSkipImages
 

Detailed Description

Definition at line 141 of file pdfioutdev_gpl.hxx.

Constructor & Destructor Documentation

pdfi::PDFOutDev::PDFOutDev ( PDFDoc *  pDoc)
explicit

Definition at line 521 of file pdfioutdev_gpl.cxx.

References m_pDoc.

pdfi::PDFOutDev::~PDFOutDev ( )
overridevirtual

Definition at line 528 of file pdfioutdev_gpl.cxx.

Member Function Documentation

void pdfi::PDFOutDev::clip ( GfxState *  state)
overridevirtual

Definition at line 834 of file pdfioutdev_gpl.cxx.

References assert(), m_bSkipImages, and printPath().

void pdfi::PDFOutDev::drawChar ( GfxState *  state,
double  x,
double  y,
double  dx,
double  dy,
double  originX,
double  originY,
CharCode  code,
int  nBytes,
Unicode *  u,
int  uLen 
)
overridevirtual

Output one glyph.

Parameters
dxhorizontal skip for character (already scaled with font size) + inter-char space: cursor is shifted by this amount for next char
dyvertical skip for character (zero for horizontal writing mode): cursor is shifted by this amount for next char
originXlocal offset of character (zero for horizontal writing mode). not taken into account for output pos updates. Used for vertical writing.
originYlocal offset of character (zero for horizontal writing mode). not taken into account for output pos updates. Used for vertical writing.

Definition at line 883 of file pdfioutdev_gpl.cxx.

References assert(), i, m_pUtf8Map, pdfi::normalize(), and void().

void pdfi::PDFOutDev::drawImage ( GfxState *  state,
Object *  ref,
Stream *  str,
int  width,
int  height,
GfxImageColorMap *  colorMap,
poppler_bool  interpolate,
int maskColors,
poppler_bool  inlineImg 
)
overridevirtual
void pdfi::PDFOutDev::drawImageMask ( GfxState *  state,
Object *  ref,
Stream *  str,
int  width,
int  height,
poppler_bool  invert,
poppler_bool  interpolate,
poppler_bool  inlineImg 
)
overridevirtual
void pdfi::PDFOutDev::drawMaskedImage ( GfxState *  state,
Object *  ref,
Stream *  str,
int  width,
int  height,
GfxImageColorMap *  colorMap,
poppler_bool  interpolate,
Stream *  maskStr,
int  maskWidth,
int  maskHeight,
poppler_bool  maskInvert,
poppler_bool  maskInterpolate 
)
overridevirtual
void pdfi::PDFOutDev::drawSoftMaskedImage ( GfxState *  state,
Object *  ref,
Stream *  str,
int  width,
int  height,
GfxImageColorMap *  colorMap,
poppler_bool  interpolate,
Stream *  maskStr,
int  maskWidth,
int  maskHeight,
GfxImageColorMap *  maskColorMap,
poppler_bool  maskInterpolate 
)
overridevirtual
void pdfi::PDFOutDev::drawString ( GfxState *  state,
GooString *  s 
)
overridevirtual

Definition at line 960 of file pdfioutdev_gpl.cxx.

void pdfi::PDFOutDev::endPage ( )
overridevirtual

Definition at line 544 of file pdfioutdev_gpl.cxx.

void pdfi::PDFOutDev::endTextObject ( GfxState *  state)
overridevirtual

Definition at line 966 of file pdfioutdev_gpl.cxx.

void pdfi::PDFOutDev::eoClip ( GfxState *  state)
overridevirtual

Definition at line 845 of file pdfioutdev_gpl.cxx.

References assert(), m_bSkipImages, and printPath().

void pdfi::PDFOutDev::eoFill ( GfxState *  state)
overridevirtual

Definition at line 823 of file pdfioutdev_gpl.cxx.

References assert(), m_bSkipImages, and printPath().

void pdfi::PDFOutDev::fill ( GfxState *  state)
overridevirtual

Definition at line 812 of file pdfioutdev_gpl.cxx.

References assert(), m_bSkipImages, and printPath().

virtual poppler_bool pdfi::PDFOutDev::interpretType3Chars ( )
inlineoverridevirtual

Definition at line 173 of file pdfioutdev_gpl.hxx.

virtual poppler_bool pdfi::PDFOutDev::needNonText ( )
inlineoverridevirtual

Definition at line 176 of file pdfioutdev_gpl.hxx.

int pdfi::PDFOutDev::parseFont ( long long  nNewId,
GfxFont *  pFont,
GfxState *  state 
) const
private
void pdfi::PDFOutDev::printPath ( GfxPath *  pPath)
staticprivate

Definition at line 497 of file pdfioutdev_gpl.cxx.

References i, n, and pdfi::normalize().

Referenced by clip(), eoClip(), eoFill(), fill(), and stroke().

void pdfi::PDFOutDev::processLink ( Link link,
Catalog *  catalog 
)
overridevirtual

Definition at line 554 of file pdfioutdev_gpl.cxx.

References assert(), and pdfi::normalize().

void pdfi::PDFOutDev::restoreState ( GfxState *  state)
overridevirtual

Definition at line 589 of file pdfioutdev_gpl.cxx.

void pdfi::PDFOutDev::saveState ( GfxState *  state)
overridevirtual

Definition at line 584 of file pdfioutdev_gpl.cxx.

void pdfi::PDFOutDev::setDefaultCTM ( double *  ctm)
overridevirtual

Definition at line 597 of file pdfioutdev_gpl.cxx.

References assert(), and pdfi::normalize().

void pdfi::PDFOutDev::setPageNum ( int  nNumPages)
static

Definition at line 1099 of file pdfioutdev_gpl.cxx.

Referenced by main().

void pdfi::PDFOutDev::setSkipImages ( bool  bSkipImages)

Definition at line 1105 of file pdfioutdev_gpl.cxx.

References m_bSkipImages.

Referenced by main().

void pdfi::PDFOutDev::startPage ( int  pageNum,
GfxState *  state 
)
overridevirtual

Definition at line 532 of file pdfioutdev_gpl.cxx.

References assert(), and pdfi::normalize().

void pdfi::PDFOutDev::stroke ( GfxState *  state)
overridevirtual

Definition at line 801 of file pdfioutdev_gpl.cxx.

References assert(), m_bSkipImages, and printPath().

void pdfi::PDFOutDev::updateBlendMode ( GfxState *  state)
overridevirtual

Definition at line 737 of file pdfioutdev_gpl.cxx.

void pdfi::PDFOutDev::updateCTM ( GfxState *  state,
double  m11,
double  m12,
double  m21,
double  m22,
double  m31,
double  m32 
)
overridevirtual

Definition at line 613 of file pdfioutdev_gpl.cxx.

References assert(), and pdfi::normalize().

void pdfi::PDFOutDev::updateFillColor ( GfxState *  state)
overridevirtual

Definition at line 691 of file pdfioutdev_gpl.cxx.

References assert(), m_bSkipImages, and pdfi::normalize().

Referenced by updateFillOpacity().

void pdfi::PDFOutDev::updateFillOpacity ( GfxState *  state)
overridevirtual

Definition at line 723 of file pdfioutdev_gpl.cxx.

References m_bSkipImages, and updateFillColor().

void pdfi::PDFOutDev::updateFlatness ( GfxState *  state)
overridevirtual

Definition at line 651 of file pdfioutdev_gpl.cxx.

References assert(), and m_bSkipImages.

void pdfi::PDFOutDev::updateFont ( GfxState *  state)
overridevirtual
void pdfi::PDFOutDev::updateLineCap ( GfxState *  state)
overridevirtual

Definition at line 667 of file pdfioutdev_gpl.cxx.

References assert(), and m_bSkipImages.

void pdfi::PDFOutDev::updateLineDash ( GfxState *  state)
overridevirtual

Definition at line 632 of file pdfioutdev_gpl.cxx.

References assert(), i, m_bSkipImages, and pdfi::normalize().

void pdfi::PDFOutDev::updateLineJoin ( GfxState *  state)
overridevirtual

Definition at line 659 of file pdfioutdev_gpl.cxx.

References assert(), and m_bSkipImages.

void pdfi::PDFOutDev::updateLineWidth ( GfxState *  state)
overridevirtual

Definition at line 683 of file pdfioutdev_gpl.cxx.

References assert(), m_bSkipImages, and pdfi::normalize().

void pdfi::PDFOutDev::updateMiterLimit ( GfxState *  state)
overridevirtual

Definition at line 675 of file pdfioutdev_gpl.cxx.

References assert(), m_bSkipImages, and pdfi::normalize().

void pdfi::PDFOutDev::updateRender ( GfxState *  state)
overridevirtual

Definition at line 794 of file pdfioutdev_gpl.cxx.

References assert().

void pdfi::PDFOutDev::updateStrokeColor ( GfxState *  state)
overridevirtual

Definition at line 707 of file pdfioutdev_gpl.cxx.

References assert(), m_bSkipImages, and pdfi::normalize().

Referenced by updateStrokeOpacity().

void pdfi::PDFOutDev::updateStrokeOpacity ( GfxState *  state)
overridevirtual

Definition at line 730 of file pdfioutdev_gpl.cxx.

References m_bSkipImages, and updateStrokeColor().

virtual poppler_bool pdfi::PDFOutDev::upsideDown ( )
inlineoverridevirtual

Definition at line 166 of file pdfioutdev_gpl.hxx.

virtual poppler_bool pdfi::PDFOutDev::useDrawChar ( )
inlineoverridevirtual

Definition at line 169 of file pdfioutdev_gpl.hxx.

void pdfi::PDFOutDev::writeFontFile ( GfxFont *  gfxFont) const
private

Definition at line 471 of file pdfioutdev_gpl.cxx.

References g_binary_out, and m_pDoc.

Referenced by updateFont().

Member Data Documentation

std::unordered_map< long long, FontAttributes > pdfi::PDFOutDev::m_aFontMap
mutableprivate

Definition at line 146 of file pdfioutdev_gpl.hxx.

Referenced by parseFont(), and updateFont().

bool pdfi::PDFOutDev::m_bSkipImages
private
PDFDoc* pdfi::PDFOutDev::m_pDoc
private

Definition at line 144 of file pdfioutdev_gpl.hxx.

Referenced by parseFont(), and writeFontFile().

std::unique_ptr<UnicodeMap> pdfi::PDFOutDev::m_pUtf8Map
private

Definition at line 147 of file pdfioutdev_gpl.hxx.

Referenced by drawChar().


The documentation for this class was generated from the following files: