PDFのページオブジェクトを表現したクラスです。
More...
#include <PtlPage.h>
PDFのページオブジェクトを表現したクラスです。
ページ番号は0オリジンとなっています。
◆ PtlPage() [1/3]
PdfTk::PtlPage::PtlPage |
( |
| ) |
|
◆ PtlPage() [2/3]
コンストラクタ
- Parameters
-
paramImagePage | 画像のページ作成に使うパラメータ。 |
- Exceptions
-
◆ PtlPage() [3/3]
PdfTk::PtlPage::PtlPage |
( |
const PtlPage & |
obj | ) |
|
コピーコンストラクタ alias copy
- Parameters
-
- Exceptions
-
◆ getAnnots()
注釈コンテナを取得。
- Returns
- 注釈コンテナ。
- Exceptions
-
◆ getArtBox()
PtlRect PdfTk::PtlPage::getArtBox |
( |
| ) |
|
ArtBoxを取得。
取得される値はPDFのページに設定しある/ArtBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にArtBoxがあるかということです。
PDFのページに/ArtBoxが設定されていない場合は、getCropBox()と同じ値が取得されます。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
- Returns
- ArtBoxの矩形
- Exceptions
-
◆ getBleedBox()
PtlRect PdfTk::PtlPage::getBleedBox |
( |
| ) |
|
BleedBoxを取得。
取得される値はPDFのページに設定しある/BleedBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にBleedBoxがあるかということです。
PDFのページに/BleedBoxが設定されていない場合は、getCropBox()と同じ値が取得されます。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
- Returns
- BleedBoxの矩形
- Exceptions
-
◆ getContent()
ページコンテントを取得。
PtlContentを取得して描画する場合は、PtlPageがPtlPagesに追加されたもの、若しくはPtlPagesから取得されたものでなければなりません。
- Returns
- ページコンテント。
- Exceptions
-
◆ getCropBox()
PtlRect PdfTk::PtlPage::getCropBox |
( |
| ) |
|
CropBoxを取得。
取得される値はPDFのページに設定しある/CropBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にCropBoxがあるかということです。
PDFのページに/CropBoxが設定されていない場合は、MediaBoxと同じ値が取得されます。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
- Returns
- CropBoxの矩形
- Exceptions
-
◆ getMediaBox()
PtlRect PdfTk::PtlPage::getMediaBox |
( |
| ) |
|
MediaBoxを取得。
取得される値はPDFのページに設定しある/MediaBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にMediaBoxがあるかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
- Returns
- MediaBoxの矩形
- Exceptions
-
◆ getRotateNative()
int PdfTk::PtlPage::getRotateNative |
( |
| ) |
|
PDFのページに設定してある/Rotateの値を取得。
PDFの辞書に設定してある/Rotateの値を取得します。
/Rotateの値に関わらず、Contentに記述してある内容は/Rotate 0の状態で記述してありますが、
ビューワによって表示される際に、/Rotateの値に従って時計回りに回転されることになります。
- Returns
- 回転角度(時計回りに0, 90, 180, 270)。
- Exceptions
-
◆ getSize()
PtlSize PdfTk::PtlPage::getSize |
( |
| ) |
|
ページサイズを取得。
ビューワで表示されるページのサイズが取得されます。
単位はmmとなりますので注意してください。
- Returns
- ページサイズ
- Exceptions
-
◆ getTrimBox()
PtlRect PdfTk::PtlPage::getTrimBox |
( |
| ) |
|
TrimBoxを取得。
取得される値はPDFのページに設定しある/TrimBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にTrimBoxがあるかということです。
PDFのページに/TrimBoxが設定されていない場合は、getCropBox()と同じ値が取得されます。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
- Returns
- TrimBoxの矩形
- Exceptions
-
◆ getViewBox()
PtlRect PdfTk::PtlPage::getViewBox |
( |
| ) |
|
ViewBoxを取得。
ビューワで表示されるページの矩形(ViewBoxと呼びます)が取得されます。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
ViewBoxについて
ビューワで表示される領域というのはPDFのページに設定しある/MediaBoxと/CropBoxの交差する矩形となります。
ビューワはその矩形をページに設定してある/Rotateの値(0,90,180,270)によって回転して描画します。
ViewBoxというのはその描画された矩形となります。つまりビューワで見えているページの矩形そのものがViewBoxということになります。
ViewBoxは左下を原点(0,0)とし、右上は(ページサイズの横,ページサイズの縦)となります。
- Returns
- ViewBoxの矩形
- Exceptions
-
◆ hasAnnots()
bool PdfTk::PtlPage::hasAnnots |
( |
| ) |
const |
注釈があるかどうかを取得。
- Returns
- true: 注釈がある、false: 注釈がない。
- Exceptions
-
◆ hasArtBox()
bool PdfTk::PtlPage::hasArtBox |
( |
| ) |
const |
PDFのページに/ArtBoxエントリーがあるかどうかを取得。
- Returns
- true: ArtBoxがある、false: ArtBoxがない。
- Exceptions
-
◆ hasBleedBox()
bool PdfTk::PtlPage::hasBleedBox |
( |
| ) |
const |
PDFのページに/BleedBoxエントリーがあるかどうかを取得。
- Returns
- true: BleedBoxがある、false: BleedBoxがない。
- Exceptions
-
◆ hasCropBox()
bool PdfTk::PtlPage::hasCropBox |
( |
| ) |
const |
PDFのページに/CropBoxエントリーがあるかどうかを取得。
- Returns
- true: CropBoxがある、false: CropBoxがない。
- Exceptions
-
◆ hasThumbnail()
bool PdfTk::PtlPage::hasThumbnail |
( |
| ) |
const |
サムネイル画像を持っているかどうかを取得。
- Returns
- true: サムネイル画像を持っている、false: サムネイル画像を持っていない。
- Exceptions
-
◆ hasTrimBox()
bool PdfTk::PtlPage::hasTrimBox |
( |
| ) |
const |
PDFのページに/TrimBoxエントリーがあるかどうかを取得。
- Returns
- true: TrimBoxがある、false: TrimBoxがない。
- Exceptions
-
◆ operator=()
コピーオペレータ alias copy
- Parameters
-
- Exceptions
-
◆ removeArtBox()
void PdfTk::PtlPage::removeArtBox |
( |
| ) |
|
◆ removeBleedBox()
void PdfTk::PtlPage::removeBleedBox |
( |
| ) |
|
◆ removeThumbnail()
void PdfTk::PtlPage::removeThumbnail |
( |
| ) |
|
◆ removeTrimBox()
void PdfTk::PtlPage::removeTrimBox |
( |
| ) |
|
◆ searchText()
テキスト検索。
検索できるのはコンテントに描画されるテキストエレメントからユニコードとして文字を取得できるもののみです。
検索するテキストはコンテントに記述されている順番に取得されるのでビューワで見える通りの文字の並びとは限りません。
またテキストに見えても実際は画像であったりパスであったりする場合もこれらは検索対象となりません。
- Parameters
-
paramSearchText | テキスト検索のパラメータ |
- Returns
- PtlSearchTextResults。
- Exceptions
-
◆ searchTextAndDoProcess()
テキスト検索して後処理。
検索できるのはコンテントに描画されるテキストエレメントからユニコードとして文字を取得できるもののみです。
検索するテキストはコンテントに記述されている順番に取得されるのでビューワで見える通りの文字の並びとは限りません。
またテキストに見えても実際は画像であったりパスであったりする場合もこれらは検索対象となりません。
パラメータとしてPtlParamSearchTextAndHighlightが使用された場合は、検索された文字列に対してHighlight注釈処理が行われます。
パラメータとしてPtlParamSearchTextAndSetMaskが使用された場合は、検索された文字列に対してMask処理が行われます。
※ 注意事項
Mask処理は検索されたものは無条件に処理されます。
定型文書でない一般文書などでは想定外のテキストがMask処理されてしまうことがありますのでこの関数の使用には
十分注意して下さい。
(例) "元日", "本日"のようにテキストが取得された場合、"日本"で検索するとヒットして"日"と"本"は削除されていまいます。
- Parameters
-
paramSearchText | テキスト検索のパラメータ(PtlParamSearchTextAndHighlight若しくはPtlParamSearchTextAndSetMask) |
- Returns
- 検索されたテキストの数。
- Exceptions
-
◆ setArtBox()
void PdfTk::PtlPage::setArtBox |
( |
const PtlRect & |
rectMM | ) |
|
ArtBoxを設定。
設定する値はPDFのページに設定される/ArtBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にArtBoxを設定するかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
ArtBoxはMediaBoxより後に設定してください。
- Parameters
-
- Exceptions
-
◆ setBleedBox()
void PdfTk::PtlPage::setBleedBox |
( |
const PtlRect & |
rectMM | ) |
|
BleedBoxを設定。
設定する値はPDFのページに設定される/BleedBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にBleedBoxを設定するかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
BleedBoxはMediaBoxより後に設定してください。
- Parameters
-
- Exceptions
-
◆ setContent()
void PdfTk::PtlPage::setContent |
( |
PtlContent & |
content | ) |
|
ページコンテントを設定。
コンテントを編集した場合はsetContentしないと編集内容は反映されません。
- Parameters
-
- Exceptions
-
◆ setCropBox()
void PdfTk::PtlPage::setCropBox |
( |
const PtlRect & |
rectMM | ) |
|
CropBoxを設定。
設定する値はPDFのページに設定される/CropBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にCropBoxを設定するかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
CropBoxはMediaBoxより後に設定してください。
- Parameters
-
- Exceptions
-
◆ setMask()
マスク処理(墨消し)。
マスク矩形内のコンテントに描画されるエレメントを削除します。
墨消しはこの関数を用いることにより実現できます。
※ 制限事項
矩形にエレメント全体が含まれた場合はエレメントは削除されますが、エレメントの一部
が矩形に囲まれた場合、囲まれた部分の部分削除が出来るのはテキストと画像だけです。
画像の部分削除が行われた場合、残された部分の色目などを完全に再現できるとは限りません。
- Parameters
-
- Exceptions
-
◆ setMediaBox()
void PdfTk::PtlPage::setMediaBox |
( |
const PtlRect & |
rectMM | ) |
|
MediaBoxを設定。
設定する値はPDFのページに設定される/MediaBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にMediaBoxを設定するかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
MediaBoxは他のBoxより先に設定してください。
- Parameters
-
- Exceptions
-
◆ setRotate()
void PdfTk::PtlPage::setRotate |
( |
int |
value | ) |
|
回転角度を設定。
表示されるページを現在の状態からどれだけ時計回りに回転させるかを設定します。
角度は絶対値で90度単位になります。それ以外の値を指定した場合の動作は保証されません。
回転角度を設定する場合は他の関数より先に設定してください。
- Parameters
-
value | 回転角度(時計回りに0, 90, 180, 270) |
- Exceptions
-
◆ setRotateNative()
void PdfTk::PtlPage::setRotateNative |
( |
int |
value | ) |
|
PDFのページの/Rotateに値を設定。
PDFの辞書にある/Rotateに値を設定します。
/Rotateの値に関わらず、Contentに記述してある内容は/Rotate 0の状態で記述してありますが、
ビューワによって表示される際に、/Rotateの値に従って時計回りに回転されることになります。
/Rotateに0以外の場合が設定されていてもビューワによる表示前の状態のことを考慮せずに、ビューワに
よって表示されている状態に描画できるのがPDFToolの特徴となっています。
しかしながら、ビューワによって回転される前の状態でページに描画したい用途もあるかもしれません。
そのような場合は、下記の様にすることで実現できます。
- getRotateNative()関数で/Rotateの値を取得。
- setRotateNativeに0を設定。
- ここで、ビューワによって回転される前の状態に対して描画を行います。
- setRotateNativeに1で取得した値を設定。
角度は絶対値で90度単位になります。それ以外の値を指定した場合の動作は保証されません。
回転角度を設定する場合は他の関数より先に設定してください。
- Parameters
-
value | 回転角度(時計回りに0, 90, 180, 270) |
- Exceptions
-
◆ setTrimBox()
void PdfTk::PtlPage::setTrimBox |
( |
const PtlRect & |
rectMM | ) |
|
TrimBoxを設定。
設定する値はPDFのページに設定される/TrimBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にTrimBoxを設定するかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
TrimBoxはMediaBoxより後に設定してください。
- Parameters
-
- Exceptions
-
◆ setViewBox()
void PdfTk::PtlPage::setViewBox |
( |
const PtlRect & |
rectMM | ) |
|
ViewBoxを設定。
ビューワで表示されるページの矩形(ViewBoxと呼びます)を設定します。
MediaBox,CropBoxに設定されます。
BleedBox,Trim,ArtBoxは削除されます。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
ViewBoxについて
ビューワで表示される領域というのはPDFのページに設定しある/MediaBoxと/CropBoxの交差する矩形となります。
ビューワはその矩形をページに設定してある/Rotateの値(0,90,180,270)によって回転して描画します。
ViewBoxというのはその描画された矩形となります。つまりビューワで見えているページの矩形そのものがViewBoxということになります。
ViewBoxは左下を原点(0,0)とし、右上は(ページサイズの横,ページサイズの縦)となります。
- Parameters
-
- Exceptions
-
◆ zoom()
void PdfTk::PtlPage::zoom |
( |
float |
ratio | ) |
|
ページの拡大縮小。
- Parameters
-
ratio | 拡大縮小率
1.0が等倍です。0.1から10.0までの値を指定して下さい。 |