/*************************************************************************** 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 "qvaluelist.h" #include #include class QString; class QRect; class QImage; class QProgressBar; class PageItem; class BookMItem; class BookMView; class ScribusDoc; class Page; class PDFOptions; class PrefsContext; class MultiProgressDialog; #include "scribusstructs.h" /** *@author Franz Schmid */ class SCRIBUS_API PDFlib : public QObject { Q_OBJECT public: PDFlib(ScribusDoc *docu); ~PDFlib() {}; bool doExport(const QString& fn, const QString& nam, int Components, std::vector &pageNs, QMap thumbs, QProgressBar *dia2); bool PDF_Begin_Doc(const QString& fn, PDFOptions *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, bool clip = false); void PDF_ProcessPage(Page* pag, uint PNr, bool clip = false); void PDF_End_Doc(const QString& PrintPr = "", const QString& Name = "", int Components = 0); void closeAndCleanup(); 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 SetClipPathArray(FPointArray *ite, bool poly = true); QString SetClipPathImage(PageItem *ite); QString SetClipPath(PageItem *ite, bool poly = true); QString SetFarbe(const QString& farbe, int Shade); QString putColor(const QString& color, int Shade, bool fill); QString PDF_ProcessItem(PageItem* ite, Page* pag, uint PNr, bool embedded = false); QString setTextSt(PageItem *ite, uint PNr, Page* pag); void setTextCh(PageItem *ite, uint PNr, uint d, QString &tmp, QString &tmp2, struct ScText *hl, Page* pag); void PutDoc(QString in); void PutPage(QString in); void StartObj(int nr); void WritePDFStream(QString *cc); QString PDFEncode(QString in); QByteArray ComputeMD5(const QString& in); void PDF_Bookmark(int nr, double ypos); QString PDF_Gradient(PageItem *currItem); QString PDF_DoLinGradient(PageItem *currItem, QValueList Stops, QValueList Trans, const QStringList& Colors); QString PDF_Transparenz(PageItem *currItem); void PDF_Annotation(PageItem *ite, uint PNr); void PDF_Form(QString& im); void PDF_xForm(double w, double h, QString im); QString PDF_Image(PageItem* c, const QString& fn, double sx, double sy, double x, double y, bool fromAN = false, const QString& Profil = "", bool Embedded = false, int Intent = 1); QString Inhalt; ScribusDoc* doc; Page* ActPageP; PDFOptions* 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 ImgObjects; 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; }; struct ShIm { int ResNum; int Width; int Height; double aufl; double sxa; double sya; double xa; double ya; }; struct OCGInfo { int ObjNum; bool visible; QString Name; }; struct SpotC { int ResNum; QString ResName; }; QMap SharedImages; QValueList XRef; QValueList NamedDest; QValueList Threads; QValueList Beads; QValueList CalcFields; QMap Shadings; QMap Transpar; QMap ICCProfiles; QMap OCGEntries; 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; QString HTName; bool BookMinUse; ColorList colorsToUse; QMap spotMap; QString spotNam; int spotCount; QTextStream t; QMap StdFonts; MultiProgressDialog* progressDialog; bool usingGUI; bool abortExport; protected slots: void cancelRequested(); }; #endif WebSVN - Scribus - Blame - Rev 4028 - /branches/Version13x/Scribus/scribus/pdflib.h

Subversion Repositories Scribus


Rev 4017 | Rev 4030 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line