mirror of
https://invent.kde.org/graphics/okular
synced 2024-09-12 20:51:17 +00:00
6415a476a8
this fixes the security bug people have been complaining about svn path=/trunk/kdegraphics/kpdf/; revision=243811
70 lines
1.4 KiB
C++
70 lines
1.4 KiB
C++
//========================================================================
|
|
//
|
|
// Annot.h
|
|
//
|
|
// Copyright 2000-2003 Glyph & Cog, LLC
|
|
//
|
|
//========================================================================
|
|
|
|
#ifndef ANNOT_H
|
|
#define ANNOT_H
|
|
|
|
#include <aconf.h>
|
|
|
|
#ifdef USE_GCC_PRAGMAS
|
|
#pragma interface
|
|
#endif
|
|
|
|
class XRef;
|
|
class Gfx;
|
|
|
|
//------------------------------------------------------------------------
|
|
// Annot
|
|
//------------------------------------------------------------------------
|
|
|
|
class Annot {
|
|
public:
|
|
|
|
Annot(XRef *xrefA, Dict *dict);
|
|
~Annot();
|
|
GBool isOk() { return ok; }
|
|
|
|
void draw(Gfx *gfx);
|
|
|
|
// Get appearance object.
|
|
Object *getAppearance(Object *obj) { return appearance.fetch(xref, obj); }
|
|
|
|
private:
|
|
|
|
XRef *xref; // the xref table for this PDF file
|
|
Object appearance; // a reference to the Form XObject stream
|
|
// for the normal appearance
|
|
double xMin, yMin, // annotation rectangle
|
|
xMax, yMax;
|
|
GBool ok;
|
|
};
|
|
|
|
//------------------------------------------------------------------------
|
|
// Annots
|
|
//------------------------------------------------------------------------
|
|
|
|
class Annots {
|
|
public:
|
|
|
|
// Extract non-link annotations from array of annotations.
|
|
Annots(XRef *xref, Object *annotsObj);
|
|
|
|
~Annots();
|
|
|
|
// Iterate through list of annotations.
|
|
int getNumAnnots() { return nAnnots; }
|
|
Annot *getAnnot(int i) { return annots[i]; }
|
|
|
|
private:
|
|
|
|
Annot **annots;
|
|
int nAnnots;
|
|
};
|
|
|
|
#endif
|