Antenna House PDF Tool API (.NET) 8.0
PdfTkNet::PtlPage クラス

#include <NetPage.h>

PdfTkNet::PtlPage の継承関係図
PdfTkNet::PtlPage 連携図

公開型

enum class  PAPER_SIZE {
  PAPER_A2 = 0 , PAPER_A2_R = 1 , PAPER_A3 = 2 , PAPER_A3_R = 3 ,
  PAPER_A4 = 4 , PAPER_A4_R = 5 , PAPER_B4 = 6 , PAPER_B4_R = 7 ,
  PAPER_B5 = 8 , PAPER_B5_R = 9
}

公開メンバ関数

PdfTk::PtlPage * getNative ()
 PtlPage ()
 コンストラクタ
 PtlPage (PtlParamImagePage^ paramImagePage)
 コンストラクタ
 PtlPage (PtlPage^ obj)
 コピーコンストラクタ alias copy
 ~PtlPage ()
 デストラクタ
 !PtlPage ()
 ファイナライザ。
PtlPage operator= (PtlPage^ obj)
 コピーオペレータ alias copy
PtlRect getViewBox ()
 ViewBoxを取得。
void setViewBox (PtlRect^ rectMM)
 ViewBoxを設定。
PtlRect getMediaBox ()
 MediaBoxを取得。
void setMediaBox (PtlRect^ rectMM)
 MediaBoxを設定。
bool hasCropBox ()
 PDFのページに/CropBoxエントリーがあるかどうかを取得。
PtlRect getCropBox ()
 CropBoxを取得。
void setCropBox (PtlRect^ rectMM)
 CropBoxを設定。
bool hasBleedBox ()
 PDFのページに/BleedBoxエントリーがあるかどうかを取得。
PtlRect getBleedBox ()
 BleedBoxを取得。
void setBleedBox (PtlRect^ rectMM)
 BleedBoxを設定。
void removeBleedBox ()
 BleedBoxを削除。
bool hasTrimBox ()
 PDFのページに/TrimBoxエントリーがあるかどうかを取得。
PtlRect getTrimBox ()
 TrimBoxを取得。
void setTrimBox (PtlRect^ rectMM)
 TrimBoxを設定。
void removeTrimBox ()
 TrimBoxを削除。
bool hasArtBox ()
 PDFのページに/ArtBoxエントリーがあるかどうかを取得。
PtlRect getArtBox ()
 ArtBoxを取得。
void setArtBox (PtlRect^ rectMM)
 ArtBoxを設定。
void removeArtBox ()
 ArtBoxを削除。
PtlSize getSize ()
 ページサイズを取得。
PtlContent getContent ()
 ページコンテントを取得。
void setContent (PtlContent^ content)
 ページコンテントを設定。
void zoom (float ratio)
 ページを拡大縮小。
void zoomPageSize (PtlSize^ size)
 ページの拡大縮小(サイズ指定)。
void zoomPaperSize (PAPER_SIZE size)
 ページの拡大縮小(用紙指定)。
void setRotate (int value)
 回転角度を設定。
int getRotateNative ()
 PDFのページに設定してある/Rotateの値を取得。
void setRotateNative (int value)
 PDFのページの/Rotateに値を設定。
bool hasAnnots ()
 注釈があるかどうかを取得。
PtlAnnots getAnnots ()
 注釈コンテナを取得。
bool hasThumbnail ()
 サムネイル画像があるかどうかを取得。
void removeThumbnail ()
 サムネイル画像を削除。
void setMask (PtlParamSetMask^ paramSetMask)
 マスク処理(墨消し)。
void setMask (PtlAnnotRedaction^ annotRedact)
 マスク処理(墨消し)。
int searchTextAndDoProcess (PtlParamSearchText^ paramSearchText)
 テキスト検索して後処理。
PtlSearchTextResults searchText (PtlParamSearchText^ paramSearchText)
 テキスト検索。

限定公開変数類

PdfTk::PtlPage * m_native

詳解

PDFのページオブジェクトを表現したクラスです。

ページ番号は0オリジンとなっています。

列挙型メンバ詳解

◆ PAPER_SIZE

enum class PdfTkNet::PtlPage::PAPER_SIZE
strong

用紙サイズ

列挙値
PAPER_A2 

A2縦

PAPER_A2_R 

A2横

PAPER_A3 

A3縦

PAPER_A3_R 

A3横

PAPER_A4 

A4縦

PAPER_A4_R 

A4横

PAPER_B4 

B4縦

PAPER_B4_R 

B4横

PAPER_B5 

B5縦

PAPER_B5_R 

B5横

構築子と解体子

◆ PtlPage() [1/3]

PdfTkNet::PtlPage::PtlPage ( )

コンストラクタ

例外
PtlException

◆ PtlPage() [2/3]

PdfTkNet::PtlPage::PtlPage ( PtlParamImagePage^ paramImagePage)

コンストラクタ

引数
paramImagePage画像ページ挿入パラメータ。
例外
PtlException

◆ PtlPage() [3/3]

PdfTkNet::PtlPage::PtlPage ( PtlPage^ obj)

コピーコンストラクタ alias copy

引数
objコピー元オブジェクト。
例外
PtlException

◆ ~PtlPage()

PdfTkNet::PtlPage::~PtlPage ( )

デストラクタ

◆ !PtlPage()

PdfTkNet::PtlPage::!PtlPage ( )

ファイナライザ。

メソッド詳解

◆ getAnnots()

PtlAnnots PdfTkNet::PtlPage::getAnnots ( )

注釈コンテナを取得。

戻り値
注釈コンテナ。
例外
PtlException

◆ getArtBox()

PtlRect PdfTkNet::PtlPage::getArtBox ( )

ArtBoxを取得。

取得される値はPDFのページに設定しある/ArtBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にArtBoxがあるかということです。
PDFのページに/ArtBoxが設定されていない場合は、getCropBox()と同じ値が取得されます。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。

戻り値
ArtBoxの矩形
例外
PtlException

◆ getBleedBox()

PtlRect PdfTkNet::PtlPage::getBleedBox ( )

BleedBoxを取得。

取得される値はPDFのページに設定しある/BleedBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にBleedBoxがあるかということです。
PDFのページに/BleedBoxが設定されていない場合は、getCropBox()と同じ値が取得されます。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。

戻り値
BleedBoxの矩形
例外
PtlException

◆ getContent()

PtlContent PdfTkNet::PtlPage::getContent ( )

ページコンテントを取得。

PtlContentを取得して描画する場合は、PtlPageがPtlPagesに追加されたもの、若しくはPtlPagesから取得されたものでなければなりません。

戻り値
ページコンテント。
例外
PtlException

◆ getCropBox()

PtlRect PdfTkNet::PtlPage::getCropBox ( )

CropBoxを取得。

取得される値はPDFのページに設定しある/CropBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にCropBoxがあるかということです。
PDFのページに/CropBoxが設定されていない場合は、MediaBoxと同じ値が取得されます。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。

戻り値
CropBoxの矩形
例外
PtlException

◆ getMediaBox()

PtlRect PdfTkNet::PtlPage::getMediaBox ( )

MediaBoxを取得。

取得される値はPDFのページに設定しある/MediaBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にMediaBoxがあるかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。

戻り値
MediaBoxの矩形
例外
PtlException

◆ getNative()

PdfTk::PtlPage * PdfTkNet::PtlPage::getNative ( )

◆ getRotateNative()

int PdfTkNet::PtlPage::getRotateNative ( )

PDFのページに設定してある/Rotateの値を取得。

PDFの辞書に設定してある/Rotateの値を取得します。
/Rotateの値に関わらず、Contentに記述してある内容は/Rotate 0の状態で記述してありますが、
ビューワによって表示される際に、/Rotateの値に従って時計回りに回転されることになります。

戻り値
回転角度(時計回りに0, 90, 180, 270)。
例外
PtlException

◆ getSize()

PtlSize PdfTkNet::PtlPage::getSize ( )

ページサイズを取得。

ビューワで表示されるページのサイズが取得されます。
単位はmmとなりますので注意してください。

戻り値
ページサイズ
例外
PtlException

◆ getTrimBox()

PtlRect PdfTkNet::PtlPage::getTrimBox ( )

TrimBoxを取得。

取得される値はPDFのページに設定しある/TrimBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にTrimBoxがあるかということです。
PDFのページに/TrimBoxが設定されていない場合は、getCropBox()と同じ値が取得されます。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。

戻り値
TrimBoxの矩形
例外
PtlException

◆ getViewBox()

PtlRect PdfTkNet::PtlPage::getViewBox ( )

ViewBoxを取得。

ビューワで表示されるページの矩形(ViewBoxと呼びます)が取得されます。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。

ViewBoxについて
ビューワで表示される領域というのはPDFのページに設定しある/MediaBoxと/CropBoxの交差する矩形となります。
ビューワはその矩形をページに設定してある/Rotateの値(0,90,180,270)によって回転して描画します。
ViewBoxというのはその描画された矩形となります。つまりビューワで見えているページの矩形そのものがViewBoxということになります。
ViewBoxは左下を原点(0,0)とし、右上は(ページサイズの横,ページサイズの縦)となります。

戻り値
ViewBoxの矩形
例外
PtlException

◆ hasAnnots()

bool PdfTkNet::PtlPage::hasAnnots ( )

注釈があるかどうかを取得。

戻り値
true: 注釈がある、false: 注釈がない。
例外
PtlException

◆ hasArtBox()

bool PdfTkNet::PtlPage::hasArtBox ( )

PDFのページに/ArtBoxエントリーがあるかどうかを取得。

戻り値
true: ArtBoxがある、false: ArtBoxがない。
例外
PtlException

◆ hasBleedBox()

bool PdfTkNet::PtlPage::hasBleedBox ( )

PDFのページに/BleedBoxエントリーがあるかどうかを取得。

戻り値
true: BleedBoxがある、false: BleedBoxがない。
例外
PtlException

◆ hasCropBox()

bool PdfTkNet::PtlPage::hasCropBox ( )

PDFのページに/CropBoxエントリーがあるかどうかを取得。

戻り値
true: CropBoxがある、false: CropBoxがない。
例外
PtlException

◆ hasThumbnail()

bool PdfTkNet::PtlPage::hasThumbnail ( )

サムネイル画像があるかどうかを取得。

戻り値
true: サムネイル画像を持っている、false: サムネイル画像を持っていない。
例外
PtlException

◆ hasTrimBox()

bool PdfTkNet::PtlPage::hasTrimBox ( )

PDFのページに/TrimBoxエントリーがあるかどうかを取得。

戻り値
true: TrimBoxがある、false: TrimBoxがない。
例外
PtlException

◆ operator=()

PtlPage PdfTkNet::PtlPage::operator= ( PtlPage^ obj)

コピーオペレータ alias copy

引数
objコピー元オブジェクト。
例外
PtlException

◆ removeArtBox()

void PdfTkNet::PtlPage::removeArtBox ( )

ArtBoxを削除。

例外
PtlException

◆ removeBleedBox()

void PdfTkNet::PtlPage::removeBleedBox ( )

BleedBoxを削除。

例外
PtlException

◆ removeThumbnail()

void PdfTkNet::PtlPage::removeThumbnail ( )

サムネイル画像を削除。

例外
PtlException

◆ removeTrimBox()

void PdfTkNet::PtlPage::removeTrimBox ( )

TrimBoxを削除。

例外
PtlException

◆ searchText()

PtlSearchTextResults PdfTkNet::PtlPage::searchText ( PtlParamSearchText^ paramSearchText)

テキスト検索。

検索できるのはコンテントに描画されるテキストエレメントからユニコードとして文字を取得できるもののみです。
またテキストに見えても実際は画像であったりパスであったりする場合もこれらは検索対象となりません。

引数
paramSearchTextテキスト検索のパラメータ
戻り値
PtlSearchTextResults。
例外
PtlException

◆ searchTextAndDoProcess()

int PdfTkNet::PtlPage::searchTextAndDoProcess ( PtlParamSearchText^ paramSearchText)

テキスト検索して後処理。

検索できるのはコンテントに描画されるテキストエレメントからユニコードとして文字を取得できるもののみです。
またテキストに見えても実際は画像であったりパスであったりする場合もこれらは検索対象となりません。
パラメータとしてPtlParamSearchTextAndHighlightが使用された場合は、検索された文字列に対してHighlight注釈処理が行われます。
パラメータとしてPtlParamSearchTextAndSetMaskが使用された場合は、検索された文字列に対してMask処理が行われます。
※ 注意事項
Mask処理は検索されたものは無条件に処理されます。
定型文書でない一般文書などでは想定外のテキストがMask処理されてしまうことがありますのでこの関数の使用には
十分注意して下さい。
(例) "元日", "本日"のようにテキストが取得された場合、"日本"で検索するとヒットして"日"と"本"は削除されていまいます。

引数
paramSearchTextテキスト検索のパラメータ(PtlParamSearchTextAndHighlight若しくはPtlParamSearchTextAndSetMask)
戻り値
検索されたテキストの数。
例外
PtlException

◆ setArtBox()

void PdfTkNet::PtlPage::setArtBox ( PtlRect^ rectMM)

ArtBoxを設定。

設定する値はPDFのページに設定される/ArtBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にArtBoxを設定するかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
ArtBoxはMediaBoxより後に設定してください。

引数
rectMMArtBoxの矩形
例外
PtlException

◆ setBleedBox()

void PdfTkNet::PtlPage::setBleedBox ( PtlRect^ rectMM)

BleedBoxを設定。

設定する値はPDFのページに設定される/BleedBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にBleedBoxを設定するかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
BleedBoxはMediaBoxより後に設定してください。

引数
rectMMBleedBoxの矩形
例外
PtlException

◆ setContent()

void PdfTkNet::PtlPage::setContent ( PtlContent^ content)

ページコンテントを設定。

コンテントを編集した場合はsetContentしないと編集内容は反映されません。

引数
contentページコンテント。
例外
PtlException

◆ setCropBox()

void PdfTkNet::PtlPage::setCropBox ( PtlRect^ rectMM)

CropBoxを設定。

設定する値はPDFのページに設定される/CropBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にCropBoxを設定するかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
CropBoxはMediaBoxより後に設定してください。

引数
rectMMCropBoxの矩形
例外
PtlException

◆ setMask() [1/2]

void PdfTkNet::PtlPage::setMask ( PtlAnnotRedaction^ annotRedact)

マスク処理(墨消し)。

Redaction注釈の領域内のコンテントに描画されるエレメントを削除します。
マスク処理後、使用した注釈PtlAnnotRedactionを削除してください。
※ 制限事項
領域にエレメント全体が含まれた場合はエレメントは削除されますが、エレメントの一部
が矩形に囲まれた場合、囲まれた部分の部分削除が出来るのはテキストと画像だけです。
画像の部分削除が行われた場合、残された部分の色目などを完全に再現できるとは限りません。

引数
annotRedactRedaction注釈
例外
PtlException

◆ setMask() [2/2]

void PdfTkNet::PtlPage::setMask ( PtlParamSetMask^ paramSetMask)

マスク処理(墨消し)。

マスク矩形内のコンテントに描画されるエレメントを削除します。
墨消しはこの関数を用いることにより実現できます。
※ 制限事項
矩形にエレメント全体が含まれた場合はエレメントは削除されますが、エレメントの一部
が矩形に囲まれた場合、囲まれた部分の部分削除が出来るのはテキストと画像だけです。
画像の部分削除が行われた場合、残された部分の色目などを完全に再現できるとは限りません。

引数
paramSetMaskマスク設定のパラメータ
例外
PtlException

◆ setMediaBox()

void PdfTkNet::PtlPage::setMediaBox ( PtlRect^ rectMM)

MediaBoxを設定。

設定する値はPDFのページに設定される/MediaBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にMediaBoxを設定するかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
MediaBoxは他のBoxより先に設定してください。

引数
rectMMMediaBoxの矩形
例外
PtlException

◆ setRotate()

void PdfTkNet::PtlPage::setRotate ( int value)

回転角度を設定。

表示されるページを現在の状態からどれだけ時計回りに回転させるかを設定します。
角度は絶対値で90度単位になります。それ以外の値を指定した場合の動作は保証されません。
回転角度を設定する場合は他の関数より先に設定してください。

引数
value回転角度(時計回りに0, 90, 180, 270)
例外
PtlException

◆ setRotateNative()

void PdfTkNet::PtlPage::setRotateNative ( int value)

PDFのページの/Rotateに値を設定。

PDFの辞書にある/Rotateに値を設定します。
/Rotateの値に関わらず、Contentに記述してある内容は/Rotate 0の状態で記述してありますが、
ビューワによって表示される際に、/Rotateの値に従って時計回りに回転されることになります。

/Rotateに0以外の場合が設定されていてもビューワによる表示前の状態のことを考慮せずに、ビューワに
よって表示されている状態に描画できるのがPDFToolの特徴となっています。
しかしながら、ビューワによって回転される前の状態でページに描画したい用途もあるかもしれません。
そのような場合は、下記の様にすることで実現できます。
1. getRotateNative()関数で/Rotateの値を取得。
2. setRotateNativeに0を設定。
3. ここで、ビューワによって回転される前の状態に対して描画を行います。
4. setRotateNativeに1で取得した値を設定。

角度は絶対値で90度単位になります。それ以外の値を指定した場合の動作は保証されません。
回転角度を設定する場合は他の関数より先に設定してください。

例外
PtlException

◆ setTrimBox()

void PdfTkNet::PtlPage::setTrimBox ( PtlRect^ rectMM)

TrimBoxを設定。

設定する値はPDFのページに設定される/TrimBoxの値そのものでなく、ViewBoxの座標からの相対的な値となります。
つまりビューワで見えているページの矩形に対してどういう位置にTrimBoxを設定するかということです。
ViewBoxについての詳細はgetViewBox()関数に記述してあります。
座標の単位はmmで原点(0,0)は左下となりますので注意してください。
TrimBoxはMediaBoxより後に設定してください。

引数
rectMMTrimBoxの矩形
例外
PtlException

◆ setViewBox()

void PdfTkNet::PtlPage::setViewBox ( 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)とし、右上は(ページサイズの横,ページサイズの縦)となります。

引数
rectMMViewBoxの矩形
例外
PtlException

◆ zoom()

void PdfTkNet::PtlPage::zoom ( float ratio)

ページを拡大縮小。

引数
ratio拡大縮小率
1.0が等倍です。0.1から10.0までの値を指定して下さい。

◆ zoomPageSize()

void PdfTkNet::PtlPage::zoomPageSize ( PtlSize^ size)

ページの拡大縮小(サイズ指定)。

引数
sizeページサイズ
25.4mmから3276.7までの値を指定して下さい。
例外
PtlException

◆ zoomPaperSize()

void PdfTkNet::PtlPage::zoomPaperSize ( PAPER_SIZE size)

ページの拡大縮小(用紙指定)。

引数
size用紙サイズ PAPER_SIZE_XXXのいずれかの値。
例外
PtlException

メンバ詳解

◆ m_native

PdfTk::PtlPage* PdfTkNet::PtlPage::m_native
protected