Source: scribus/libpdf/pdflib.h
|
|
|
|
/***************************************************************************
pdflib.h - description
-------------------
begin : Sat Jan 19 2002
copyright : (C) 2002 by Franz Schmid
email : Franz.Schmid@altmuehlnet.de
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef PDFLIB_H
#define PDFLIB_H
#include
#include
#include
#include
#include "pageitem.h"
#include "scribusview.h"
#include "bookmwin.h"
#include "scribus.h"
#include
/**
*@author Franz Schmid
*/
class PDFlib : public QObject
{
Q_OBJECT
public:
PDFlib();
~PDFlib() {};
bool PDF_Begin_Doc(QString fn, ScribusDoc *docu, ScribusView *vie, PDFOpt *opts, SCFonts &AllFonts, QMap DocFonts, BookMView* vi);
void PDF_Begin_Page(Page* pag, QPixmap pm = 0);
void PDF_End_Page();
void PDF_TemplatePage(Page* pag);
void PDF_ProcessPage(Page* pag, uint PNr);
void PDF_End_Doc(QString PrintPr = "", QString Name = "", int Components = 0);
struct GlNamInd { uint Code;
QString Name;
};
typedef QMap GListeInd;
QMap GlyphsIdxOfFont;
private:
QString EncStream(QString *in, int ObjNum);
QString EncString(QString in, int ObjNum);
void CalcOwnerKey(QString Owner, QString User);
void CalcUserKey(QString User, int Permission);
QString FitKey(QString pass);
QString FToStr(double c);
QString IToStr(int c);
QString setStrokeMulti(struct singleLine *sl);
QString SetClipPath(PageItem *ite);
QString SetFarbe(QString farbe, int Shade);
QString setTextSt(PageItem *ite, uint PNr);
void PutDoc(QString in);
void PutPage(QString in);
void StartObj(int nr);
void WritePDFStream(QString *cc);
QString PDFEncode(QString in);
QByteArray ComputeMD5(QString in);
void PDF_Bookmark(int nr, double ypos);
void PDF_Gradient(PageItem *b);
void PDF_Transparenz(PageItem *b);
void PDF_Annotation(PageItem *ite, uint PNr);
void PDF_Form(QString im);
void PDF_xForm(double w, double h, QString im);
void PDF_Image(bool inver, QString fn, double sx, double sy, double x, double y, bool fromAN = false, QString Profil = "", bool Embedded = false, int Intent = 1);
QString Inhalt;
ScribusDoc* doc;
ScribusView* view;
Page* ActPageP;
PDFOpt* Options;
BookMView* Bvie;
QFile Spool;
int Dokument;
struct Dest { QString Name;
int Seite;
QString Act;
};
struct Cata { int Outlines;
int PageTree;
int Dest;
} Catalog;
struct PagT { QValueList Kids;
int Count;
} PageTree;
struct PagL { int ObjNum;
int Thumb;
QMap XObjects;
QMap FObjects;
QValueList AObjects;
QValueList FormObjects;
} Seite;
struct OutL { int First;
int Last;
int Count;
} Outlines;
struct Bead { int Parent;
int Next;
int Prev;
int Page;
QRect Recht;
};
struct ICCD { int ResNum;
QString ResName;
QString ICCArray;
};
QValueList XRef;
QValueList NamedDest;
QValueList Threads;
QValueList Beads;
QValueList CalcFields;
QMap Shadings;
QMap Transpar;
QMap ICCProfiles;
int ObjCounter;
QString ResNam;
int ResCount;
QString NDnam;
QString Datum;
int NDnum;
QMap UsedFontsP;
QMap RealFonts;
bool CompAvail;
QByteArray KeyGen;
QByteArray OwnerKey;
QByteArray UserKey;
QByteArray FileID;
QByteArray EncryKey;
int Encrypt;
int KeyLen;
};
#endif
Generated by: paul on ahnews.music.salford.ac.uk on Tue Oct 21 16:33:32 2003, using kdoc 2.0a54. |