⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 textpage.h.svn-base

📁 okular
💻 SVN-BASE
字号:
/*************************************************************************** *   Copyright (C) 2005 by Piotr Szymanski <niedakh@gmail.com>             * *                                                                         * *   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 _KPDF_TETXTPAGE_H_#define _KPDF_TETXTPAGE_H_#include <qlist.h>#include <qmap.h>#include <qstringlist.h>#include "area.h"class TextSelection;/*! @enum SearchDir *  The enum holding the direction of searching. *! @enum SearchDir FromTop *  Searching from top of the page, next result is to be found, *  there was no earlier search result. *! @enum SearchDir FromBottom *  Searching from bottom of the page, next result is to be found, *  there was no earlier search result. *! @enum SearchDir NextRes *  Searching for the next result on the page, earlier result should be  *  located so we search from the last result not from the beginning of the  *  page. *! @enum SearchDir PrevRes *  Searching for the previous result on the page, earlier result should be  *  located so we search from the last result not from the beginning of the  *  page. */typedef enum SearchDir{ FromTop, FromBottom, NextRes, PrevRes };/*! @struct  KPDFTextEntity * @short Abstract textentity of KPDF * @par The context * A document can provide different forms of information about textual representation * of its contents. It can include information about positions of every character on the  * page, this is the best possibility.  *  * But also it can provide information only about positions of every word on the page (not the character).  * Furthermore it can provide information only about the position of the whole page's text on the page. *  * Also some document types have glyphes - sets of characters rendered as one, so in search they should  * appear as a text but are only one character when drawn on screen. We need to allow this. * @par The idea * We need several */struct KPDFTextEntity{    //     QString txt;    NormalizedRect* area;    KPDFTextEntity(QString text, NormalizedRect* ar) : txt(text)         { area=ar; };    ~KPDFTextEntity() { delete area; };};struct SearchPoint;class KPDFTextPage {  public:    RegularAreaRect* findText(int searchID, const QString &query, SearchDir & direct,        bool strictCase, const RegularAreaRect *area);    QString getText(const RegularAreaRect *rect) const;    RegularAreaRect * getTextArea ( TextSelection* ) const;    KPDFTextPage(QList<KPDFTextEntity*> words) : m_words(words) {};    KPDFTextPage() : m_words() {};    void append(QString txt, NormalizedRect*  area)         { m_words.append(new KPDFTextEntity(txt,area) ); };    ~KPDFTextPage();  private:    RegularAreaRect * findTextInternalForward(int searchID, const QString &query,        bool strictCase, const QList<KPDFTextEntity*>::Iterator &start,        const QList<KPDFTextEntity*>::Iterator &end);    QList<KPDFTextEntity*>  m_words;    QMap<int, SearchPoint*> m_searchPoints;  };#endif 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -