QPdfDocument Class
QPdfDocument クラスは PDF ドキュメントを読み込み、そこからページをレンダリングします。詳細...
Header: | #include <QPdfDocument> |
Inherits: | QObject |
パブリックな型
enum class | Error { None, Unknown, DataNotYetAvailable, FileNotFound, InvalidFileFormat, …, UnsupportedSecurityScheme } |
enum class | MetaDataField { Title, Author, Subject, Keywords, Creator, …, ModificationDate } |
enum class | PageModelRole { Label, PointSize } |
enum class | Status { Null, Loading, Ready, Unloading, Error } |
プロパティ
- pageCount : const int
- pageModel : QAbstractListModel* const
- password : QString
- status : const Status
パブリック関数
QPdfDocument(QObject *parent) | |
virtual | ~QPdfDocument() override |
void | close() |
QPdfDocument::Error | error() const |
QPdfSelection | getAllText(int page) |
QPdfSelection | getSelection(int page, QPointF start, QPointF end) |
QPdfSelection | getSelectionAtIndex(int page, int startIndex, int maxLength) |
void | load(QIODevice *device) |
QPdfDocument::Error | load(const QString &fileName) |
QVariant | metaData(QPdfDocument::MetaDataField field) const |
int | pageCount() const |
(since 6.6) int | pageIndexForLabel(const QString &label) |
QString | pageLabel(int page) |
QAbstractListModel * | pageModel() |
QSizeF | pagePointSize(int page) const |
QString | password() const |
QImage | render(int page, QSize imageSize, QPdfDocumentRenderOptions renderOptions = QPdfDocumentRenderOptions()) |
void | setPassword(const QString &password) |
QPdfDocument::Status | status() const |
シグナル
void | pageCountChanged(int pageCount) |
void | pageModelChanged() |
void | passwordChanged() |
void | statusChanged(QPdfDocument::Status status) |
メンバー型 ドキュメント
enum class QPdfDocument::Error
この列挙型は、ドキュメントに対する最後の操作の際のエラーを記述します。
定数 | 値 | 説明 |
---|---|---|
QPdfDocument::Error::None | 0 | エラーは発生しませんでした。 |
QPdfDocument::Error::Unknown | 1 | エラーの種類が不明です。 |
QPdfDocument::Error::DataNotYetAvailable | 2 | ドキュメントはまだロード中であり、操作を試みるには時期尚早です。 |
QPdfDocument::Error::FileNotFound | 3 | load() に指定されたファイルが見つかりません。 |
QPdfDocument::Error::InvalidFileFormat | 4 | load() に指定されたファイルは有効な PDF ファイルではありません。 |
QPdfDocument::Error::IncorrectPassword | 5 | setPassword ()に指定されたパスワードが、このファイルに対して正しくありません。 |
QPdfDocument::Error::UnsupportedSecurityScheme | 6 | QPdfDocument この種類の PDF ファイルのロックを解除できません。 |
QPdfDocument::error()も参照 。
enum class QPdfDocument::MetaDataField
この列挙型は、利用可能なメタデータのフィールドを記述します。
定数 | 値 | 説明 |
---|---|---|
QPdfDocument::MetaDataField::Title | 0 | QString のような文書のタイトル。 |
QPdfDocument::MetaDataField::Author | 2 | QString として、文書を作成した人の名前。 |
QPdfDocument::MetaDataField::Subject | 1 | QString として、文書の件名。 |
QPdfDocument::MetaDataField::Keywords | 3 | QString と し て、 文書に関連す る キーワー ド 。 |
QPdfDocument::MetaDataField::Creator | 5 | その文書が別の形式か ら PDF へ変換 さ れた場合には、QString と し て、 その変換元文書を作成 し た準拠製品の名前。 |
QPdfDocument::MetaDataField::Producer | 4 | その文書が別の形式か ら PDF へ変換 さ れた場合には、 それを PDF へ変換 し た適合製品の名前をQString と し て示 し ます。 |
QPdfDocument::MetaDataField::CreationDate | 6 | 文書が作成 さ れた日時をQDateTime と し て。 |
QPdfDocument::MetaDataField::ModificationDate | 7 | QDateTime と し て、 文書が最近更新 さ れた日時。 |
QPdfDocument::metaData()も参照 。
enum class QPdfDocument::PageModelRole
pageModel() の役割。
定数 | 値 | 説明 |
---|---|---|
QPdfDocument::PageModelRole::Label | Qt::UserRole | 表示に使用するページ番号 (QString)。 |
QPdfDocument::PageModelRole::PointSize | 257 | ポイント単位(1/72インチ)のページサイズ (QSizeF)。 |
enum class QPdfDocument::Status
この列挙型は、ドキュメントの現在の状態を記述します。
定数 | 値 | 説明 |
---|---|---|
QPdfDocument::Status::Null | 0 | 文書が作成された後、または閉じられた後の初期状態。 |
QPdfDocument::Status::Loading | 1 | load() が呼ばれた後、ドキュメントが完全に読み込まれる前の状態。 |
QPdfDocument::Status::Ready | 2 | 文書が完全に読み込まれ、そのデータにアクセスできるようになったときの状態。 |
QPdfDocument::Status::Unloading | 3 | 開いている文書に対してclose() がコールされた後の状態。この時点では、ドキュメントはまだ有効で、そのすべてのデータにアクセスできます。 |
QPdfDocument::Status::Error | 4 | 読み込みに失敗した場合の、読み込み後のステータス。 |
QPdfDocument::status()も参照 。
プロパティ Documentation
[read-only]
pageCount : const int
このプロパティは、ロードされたドキュメントのページ数を保持し、ドキュメントがロードされていない場合は0
を保持します。
アクセス関数:
int | pageCount() const |
Notifier シグナル:
void | pageCountChanged(int pageCount) |
[read-only]
pageModel : QAbstractListModel* const
こ のプ ロパテ ィ は、 ページ固有の メ タ デー タ を提供す る ためのQAbstractListModel の イ ン ス タ ン ス を保持 し ます。
アクセス関数:
QAbstractListModel * | pageModel() |
Notifier シグナル:
void | pageModelChanged() |
QPdfDocument::PageModelRoleも参照 。
password : QString
こ のプ ロパテ ィ は文書パ ス ワー ド を保持 し ます。
文書がパ ス ワー ド で保護 さ れてい る 場合は、 ユーザーがそれを与え る 必要があ り 、 アプ リ ケーシ ョ ンは こ のプ ロ パテ ィ を設定す る 必要があ り ます。そうでない場合は必要ありません。
アクセス関数:
QString | password() const |
void | setPassword(const QString &password) |
通知シグナル:
void | passwordChanged() |
[read-only]
status : const Status
このプロパティはドキュメントの現在の状態を保持する。
アクセス関数:
QPdfDocument::Status | status() const |
Notifier シグナル:
void | statusChanged(QPdfDocument::Status status) |
メンバ関数 ドキュメント
[explicit]
QPdfDocument::QPdfDocument(QObject *parent)
親オブジェクトparent を持つ新しいドキュメントを構築します。
[override virtual noexcept]
QPdfDocument::~QPdfDocument()
ドキュメントを破棄します。
void QPdfDocument::close()
ドキュメントを閉じます。
QPdfDocument::Error QPdfDocument::error() const
status がError
の場合はエラーの種類を、エラーがない場合はNoError
を返します。
[invokable]
QPdfSelection QPdfDocument::getAllText(int page)
与えられたpage のすべてのテキストとその境界を返します。
注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable]
QPdfSelection QPdfDocument::getSelection(int page, QPointF start, QPointF end)
与えられたpage 上のテキストのうち、与えられたstart 点とend 点の間に見つけることができるテキストに関する情報があれば、それを返します。
注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable]
QPdfSelection QPdfDocument::getSelectionAtIndex(int page, int startIndex, int maxLength)
与えられたstartIndex から始まり、最大でmaxLength 文字の、与えられたpage 上のテキストに関する情報を返します。
注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
void QPdfDocument::load(QIODevice *device)
device から文書の内容を読み込みます。
QPdfDocument::Error QPdfDocument::load(const QString &fileName)
fileName から文書の内容を読み込みます。
QVariant QPdfDocument::metaData(QPdfDocument::MetaDataField field) const
与えられたfield のドキュメントのメタデータを返す。
[invokable, since 6.6]
int QPdfDocument::pageIndexForLabel(const QString &label)
label を持つページのインデックスを返し、見つからない場合は-1
を返します。
注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
この関数は Qt 6.6 で導入されました。
pageLabel()も参照してください 。
[invokable]
QString QPdfDocument::pageLabel(int page)
表示のために使われるpage 番号を返します。
例えば、文書には複数のセクションがあり、異なる番号が振られている場合があります。た と えば序文がローマ数字で、 本文が 1 ページか ら始まって、 付録が A1 か ら始ま る よ う な場合です。PDFビューアがページ番号を表示するときはいつでも、ユーザーを混乱させないために、APIで使っているゼロベースのページインデックスではなく、ページの隅に印刷されているのと同じ「番号」であるべきです(文書作成者がページラベルを印刷された番号と一致させていると仮定して)。
文書にカスタムページ番号がない場合、この関数はpage + 1
を返します。
注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
pageIndexForLabel()も参照して ください。
[invokable]
QSizeF QPdfDocument::pagePointSize(int page) const
page ページのサイズをポイント(1/72インチ)で返します。
注: この関数はメタオブジェクトシステム経由でもQMLからも呼び出すことができます。Q_INVOKABLE を参照してください。
QImage QPdfDocument::render(int page, QSize imageSize, QPdfDocumentRenderOptions renderOptions = QPdfDocumentRenderOptions())
指定されたrenderOptions に従って、page をサイズimageSize のQImage にレンダリングします。
レンダリングされたページを返すか、エラーの場合は空の画像を返します。
注:imageSize が PDF 文書内のページの縦横比 と 一致 し ていない と き は、 ページは拡大縮小 さ れてレ ン ダ リ さ れ、imageSize 全体を覆 う よ う にな り ます。
本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。