diff options
author | Karl Berry <karl@freefriends.org> | 2021-02-25 19:22:25 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2021-02-25 19:22:25 +0000 |
commit | ad547a6b5986815fda458221149728d9d9ab1d87 (patch) | |
tree | 16296910eb3eca724371474ea9aea3994dc69614 /Build/source/libs/xpdf/xpdf-src/xpdf/HTMLGen.h | |
parent | 947b43de3dd21d58ccc2ffadefc4441ea1c2a813 (diff) |
restore Build,TODO from r57911
git-svn-id: svn://tug.org/texlive/trunk@57915 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/xpdf/xpdf-src/xpdf/HTMLGen.h')
-rw-r--r-- | Build/source/libs/xpdf/xpdf-src/xpdf/HTMLGen.h | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/Build/source/libs/xpdf/xpdf-src/xpdf/HTMLGen.h b/Build/source/libs/xpdf/xpdf-src/xpdf/HTMLGen.h new file mode 100644 index 00000000000..d09eea3f266 --- /dev/null +++ b/Build/source/libs/xpdf/xpdf-src/xpdf/HTMLGen.h @@ -0,0 +1,94 @@ +//======================================================================== +// +// HTMLGen.h +// +// Copyright 2010 Glyph & Cog, LLC +// +//======================================================================== + +#ifndef HTMLGEN_H +#define HTMLGEN_H + +#include <aconf.h> + +#ifdef USE_GCC_PRAGMAS +#pragma interface +#endif + +class GString; +class PDFDoc; +class TextOutputDev; +class TextFontInfo; +class SplashOutputDev; +class HTMLGenFontDefn; + +//------------------------------------------------------------------------ + +class HTMLGen { +public: + + HTMLGen(double backgroundResolutionA); + ~HTMLGen(); + + GBool isOk() { return ok; } + + double getBackgroundResolution() { return backgroundResolution; } + void setBackgroundResolution(double backgroundResolutionA) + { backgroundResolution = backgroundResolutionA; } + + double getZoom() { return zoom; } + void setZoom(double zoomA) { zoom = zoomA; } + + GBool getDrawInvisibleText() { return drawInvisibleText; } + void setDrawInvisibleText(GBool drawInvisibleTextA) + { drawInvisibleText = drawInvisibleTextA; } + + GBool getAllTextInvisible() { return allTextInvisible; } + void setAllTextInvisible(GBool allTextInvisibleA) + { allTextInvisible = allTextInvisibleA; } + + void setExtractFontFiles(GBool extractFontFilesA) + { extractFontFiles = extractFontFilesA; } + + void startDoc(PDFDoc *docA); + int convertPage(int pg, const char *pngURL, const char *htmlDir, + int (*writeHTML)(void *stream, const char *data, int size), + void *htmlStream, + int (*writePNG)(void *stream, const char *data, int size), + void *pngStream); + +private: + + int findDirSpan(GList *words, int firstWordIdx, int primaryDir, + int *spanDir); + void appendSpans(GList *words, int firstWordIdx, int lastWordIdx, + int primaryDir, int spanDir, + double base, GBool dropCapLine, GString *s); + void appendUTF8(Unicode u, GString *s); + HTMLGenFontDefn *getFontDefn(TextFontInfo *font, const char *htmlDir); + HTMLGenFontDefn *getFontFile(TextFontInfo *font, const char *htmlDir); + HTMLGenFontDefn *getSubstituteFont(TextFontInfo *font); + void getFontDetails(TextFontInfo *font, const char **family, + const char **weight, const char **style, + double *scale); + + double backgroundResolution; + double zoom; + GBool drawInvisibleText; + GBool allTextInvisible; + GBool extractFontFiles; + + PDFDoc *doc; + TextOutputDev *textOut; + SplashOutputDev *splashOut; + + GList *fonts; // [TextFontInfo] + double *fontScales; + + GList *fontDefns; // [HTMLGenFontDefn] + int nextFontFaceIdx; + + GBool ok; +}; + +#endif |