Antenna House PDF Tool API (C++) 8.0
PdfTk::PtlContent クラス

#include <PtlContent.h>

公開型

enum  ALIGN {
  ALIGN_TOP_LEFT = 1 , ALIGN_TOP = 2 , ALIGN_TOP_RIGHT = 3 , ALIGN_LEFT = 4 ,
  ALIGN_CENTER = 5 , ALIGN_RIGHT = 6 , ALIGN_BOTTOM_LEFT = 7 , ALIGN_BOTTOM = 8 ,
  ALIGN_BOTTOM_RIGHT = 9
}
enum  GET_ELEMENT {
  GET_TEXT = 0x00000001 , GET_IMAGE = 0x00000002 , GET_PATH = 0x00000004 , GET_SHADING = 0x00000008 ,
  GET_ALL = 0x0FFFFFFF
}

公開メンバ関数

int getHandle () const
 PtlContent ()
 コンストラクタ
 PtlContent (const PtlContent &obj)
 コピーコンストラクタ
 ~PtlContent ()
 デストラクタ
PtlContentoperator= (const PtlContent &obj)
 コピーオペレータ
void writeString (const PtlRect &rectMM, ALIGN align, const PtlParamString &str, const PtlParamWriteString &paramWriteString)
 文字列を出力。
void writeString (const PtlRect &rectMM, ALIGN align, float angle, const PtlParamString &str, const PtlParamWriteString &paramWriteString)
 文字列を回転出力。
void writeStringV (const PtlRect &rectMM, ALIGN align, const PtlParamString &str, const PtlParamWriteString &paramWriteString)
 縦書きの文字列を出力。
PtlTextBoxdrawTextBox (const PtlRect &rectMM, ALIGN align, float width, float height)
 テキストボックスを描画。
void drawImage (const PtlRect &rectMM, ALIGN align, const PtlParamDrawImage &paramDrawImage)
 画像を描画。
void drawFitImage (const PtlRect &rectMM, ALIGN align, const PtlParamDrawImage &paramDrawImage)
 画像を描画。
void drawForm (const PtlRect &rectMM, ALIGN align, const PtlPage &page)
 フォームXObjectを描画。
void drawForm (const PtlRect &rectMM, ALIGN align, const PtlParamDrawForm &paramDrawForm)
 フォームXObjectを描画。
void drawFitForm (const PtlRect &rectMM, ALIGN align, const PtlParamDrawForm &paramDrawForm)
 フォームXObjectを描画。
bool drawForm (PtlAnnot &annot)
 フォームXObjectを描画。
bool drawForm (PtlAnnot &annot, bool embedFont)
 フォームXObjectを描画。
void drawLine (const PtlPoint &fromMM, const PtlPoint &toMM, const PtlParamDrawShape &paramDrawShape)
 線を描画。
void drawRect (const PtlRect &rectMM, const PtlParamDrawShape &paramDrawShape)
 矩形を描画。
void drawRoundRect (const PtlRect &rectMM, float widthRoundMM, float heightRoundMM, const PtlParamDrawShape &paramDrawShape)
 丸角矩形を描画。
void drawPolyline (const PtlPoints &pointsMM, const PtlParamDrawShape &paramDrawShape)
 折れ線を描画。
void drawPolygon (const PtlPoints &pointsMM, const PtlParamDrawShape &paramDrawShape)
 多角形を描画。
void drawCircle (const PtlRect &rectMM, const PtlParamDrawShape &paramDrawShape)
 円形を描画。
void drawCircle (const PtlPoint &centerMM, float radiusMM, const PtlParamDrawShape &paramDrawShape)
 円を描画。
void drawLayer (const PtlRect &rectMM, ALIGN align, const PtlParamDrawLayer &paramDrawLayer)
 レイヤーを描画。
PtlEditElementsgetEditElements (int flag)
 EditElementコンテナを取得。
PtlEditElementsgetEditElements ()
 EditElementコンテナを取得。
const PtlParamStringextractText (const PtlParamExtractText &ptlParamExtractText)
 テキストを抽出。
PtlExtractTextResults extractTexts (const PtlParamExtractText &ptlParamExtractText)
 テキストを矩形ごとに抽出。

詳解

ページに描画される内容(コンテント)を表現するクラスです。
コンテントには画像エレメント,テキストエレメントなどが含まれそれらが描画されることになります。

PtlContent.h36 行目に定義があります。

列挙型メンバ詳解

◆ ALIGN

配置

列挙値
ALIGN_TOP_LEFT 

左上

ALIGN_TOP 

中央上

ALIGN_TOP_RIGHT 

右上

ALIGN_LEFT 

中央左

ALIGN_CENTER 

中央

ALIGN_RIGHT 

中央右

ALIGN_BOTTOM_LEFT 

左下

ALIGN_BOTTOM 

中央下

ALIGN_BOTTOM_RIGHT 

右下

PtlContent.h42 行目に定義があります。

◆ GET_ELEMENT

エレメント取得タイプ。

列挙値
GET_TEXT 

テキストを取得する。

GET_IMAGE 

画像を取得する。

GET_PATH 

パスを取得する。

GET_SHADING 

シェイディングを取得する。

GET_ALL 

全てのエレメント(テキスト,画像,パス,シェイディング)を取得する。

PtlContent.h57 行目に定義があります。

構築子と解体子

◆ PtlContent() [1/2]

PdfTk::PtlContent::PtlContent ( )

コンストラクタ

例外
PtlException

◆ PtlContent() [2/2]

PdfTk::PtlContent::PtlContent ( const PtlContent & obj)

コピーコンストラクタ

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

関数詳解

◆ drawCircle() [1/2]

void PdfTk::PtlContent::drawCircle ( const PtlPoint & centerMM,
float radiusMM,
const PtlParamDrawShape & paramDrawShape )

円を描画。

指定した矩形に内接する円を描画します。

引数
centerMM円の中心点。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
radiusMM円の半径をmm単位で指定してください。
paramDrawShape描画パラメータ。
例外
PtlException

◆ drawCircle() [2/2]

void PdfTk::PtlContent::drawCircle ( const PtlRect & rectMM,
const PtlParamDrawShape & paramDrawShape )

円形を描画。

指定した矩形に内接する円形を描画します。
パラメーターのrectMMに正方形を指定すれば円を描画しますが、そうでなければ楕円を描画します。

引数
rectMM円形の内接する矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
paramDrawShape描画パラメータ。
例外
PtlException

◆ drawFitForm()

void PdfTk::PtlContent::drawFitForm ( const PtlRect & rectMM,
ALIGN align,
const PtlParamDrawForm & paramDrawForm )

フォームXObjectを描画。

フォームXObjectとしてページを描画します。
ページを矩形のサイズに合わせて拡大縮小して描画します。
ページの縦横比は維持されます。
ページ描画以外は欠落します(注釈など)。

フォームXObjectについて
フォームXObjectはページのコンテント同様に、テキスト,パス,画像などを描画する為の命令が書かれた1つのコンテントです。
ページのコンテントにフォームXObjectの描画命令があると、ビューワはフォームXObject内のコンテントのエレメントを描画します。

引数
rectMM出力矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
alignフォームXObjectの配置指定。ALIGN_XXXのいずれか。
paramDrawForm描画パラメータ。
例外
PtlException

◆ drawFitImage()

void PdfTk::PtlContent::drawFitImage ( const PtlRect & rectMM,
ALIGN align,
const PtlParamDrawImage & paramDrawImage )

画像を描画。

画像を矩形のサイズに合わせて拡大縮小して描画します。
画像の縦横比は維持されます。

引数
rectMM出力矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
align画像の配置指定。ALIGN_XXXのいずれか。
paramDrawImage描画パラメータ。
例外
PtlException

◆ drawForm() [1/4]

void PdfTk::PtlContent::drawForm ( const PtlRect & rectMM,
ALIGN align,
const PtlPage & page )

フォームXObjectを描画。

フォームXObjectとしてページを描画します。
ページ描画以外は欠落します(注釈など)。

フォームXObjectについて
フォームXObjectはページのコンテント同様に、テキスト,パス,画像などを描画する為の命令が書かれた1つのコンテントです。
ページのコンテントにフォームXObjectの描画命令があると、ビューワはフォームXObject内のコンテントのエレメントを描画します。

引数
rectMM出力矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
alignフォームXObjectの配置指定。ALIGN_XXXのいずれか。
page描画に使用するPDF文書のページ。
例外
PtlException

◆ drawForm() [2/4]

void PdfTk::PtlContent::drawForm ( const PtlRect & rectMM,
ALIGN align,
const PtlParamDrawForm & paramDrawForm )

フォームXObjectを描画。

フォームXObjectとしてページを描画します。
ページ描画以外は欠落します(注釈など)。

フォームXObjectについて
フォームXObjectはページのコンテント同様に、テキスト,パス,画像などを描画する為の命令が書かれた1つのコンテントです。
ページのコンテントにフォームXObjectの描画命令があると、ビューワはフォームXObject内のコンテントのエレメントを描画します。

引数
rectMM出力矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
alignフォームXObjectの配置指定。ALIGN_XXXのいずれか。
paramDrawForm描画パラメータ。
例外
PtlException

◆ drawForm() [3/4]

bool PdfTk::PtlContent::drawForm ( PtlAnnot & annot)

フォームXObjectを描画。

フォームXObjectとして注釈を描画します。

注釈の位置にそのまま描画します。
フォームXObjectについて
フォームXObjectはページのコンテント同様に、テキスト,パス,画像などを描画する為の命令が書かれた1つのコンテントです。
ページのコンテントにフォームXObjectの描画命令があると、ビューワはフォームXObject内のコンテントのエレメントを描画します。

引数
annot描画に使用する注釈。
戻り値
描画できたらtrue。
例外
PtlException

◆ drawForm() [4/4]

bool PdfTk::PtlContent::drawForm ( PtlAnnot & annot,
bool embedFont )

フォームXObjectを描画。

フォームXObjectとしてFreeText注釈を描画します。

注釈の位置にそのまま描画します。
フォントの埋め込みはFreeText注釈にのみ有効です。
フォームXObjectについて
フォームXObjectはページのコンテント同様に、テキスト,パス,画像などを描画する為の命令が書かれた1つのコンテントです。
ページのコンテントにフォームXObjectの描画命令があると、ビューワはフォームXObject内のコンテントのエレメントを描画します。

引数
annot描画に使用する注釈。
embedFont注釈に使われているフォントを埋め込むかどうか。true: 埋め込む、false: 埋め込まない。
戻り値
描画できたらtrue。
例外
PtlException

◆ drawImage()

void PdfTk::PtlContent::drawImage ( const PtlRect & rectMM,
ALIGN align,
const PtlParamDrawImage & paramDrawImage )

画像を描画。

画像を描画します。
画像が矩形より大きい場合は矩形のサイズに縮小されます。

引数
rectMM出力矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
align画像の配置指定。ALIGN_XXXのいずれか。
paramDrawImage描画パラメータ。
例外
PtlException

◆ drawLayer()

void PdfTk::PtlContent::drawLayer ( const PtlRect & rectMM,
ALIGN align,
const PtlParamDrawLayer & paramDrawLayer )

レイヤーを描画。

レイヤーとしてページを描画します。
ページ描画以外は欠落します(注釈など)。

引数
rectMM出力矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
alignレイヤーの配置指定。ALIGN_XXXのいずれか。
paramDrawLayer描画パラメータ。
例外
PtlException

◆ drawLine()

void PdfTk::PtlContent::drawLine ( const PtlPoint & fromMM,
const PtlPoint & toMM,
const PtlParamDrawShape & paramDrawShape )

線を描画。

線を描画します。

引数
fromMM開始位置。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
toMM終了位置。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
paramDrawShape描画パラメータ。
例外
PtlException

◆ drawPolygon()

void PdfTk::PtlContent::drawPolygon ( const PtlPoints & pointsMM,
const PtlParamDrawShape & paramDrawShape )

多角形を描画。

多角形を描画します。

引数
pointsMM多角形の点。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
paramDrawShape描画パラメータ。
例外
PtlException

◆ drawPolyline()

void PdfTk::PtlContent::drawPolyline ( const PtlPoints & pointsMM,
const PtlParamDrawShape & paramDrawShape )

折れ線を描画。

折れ線を描画します。

引数
pointsMM折れ線の点。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
paramDrawShape描画パラメータ。
例外
PtlException

◆ drawRect()

void PdfTk::PtlContent::drawRect ( const PtlRect & rectMM,
const PtlParamDrawShape & paramDrawShape )

矩形を描画。

矩形を描画します。

引数
rectMM描画矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
paramDrawShape描画パラメータ。
例外
PtlException

◆ drawRoundRect()

void PdfTk::PtlContent::drawRoundRect ( const PtlRect & rectMM,
float widthRoundMM,
float heightRoundMM,
const PtlParamDrawShape & paramDrawShape )

丸角矩形を描画。

丸角矩形を描画します。

引数
rectMM描画矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
widthRoundMM丸角の幅。単位はmm
heightRoundMM丸角の高さ。単位はmm
paramDrawShape描画パラメータ。
例外
PtlException

◆ drawTextBox()

PtlTextBox & PdfTk::PtlContent::drawTextBox ( const PtlRect & rectMM,
ALIGN align,
float width,
float height )

テキストボックスを描画。

テキストボックスを描画します。
テキストボックスが矩形より大きい場合は矩形のサイズに縮小されます。

引数
rectMM出力矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
alignテキストの配置指定。ALIGN_XXXのいずれか。
width幅。単位はmm。出力矩形の幅を超えた値を設定すると出力矩形の幅に切り詰められます。
height高さ。単位はmm。出力矩形の高さを超えた値を設定すると出力矩形の高さに切り詰められます。
戻り値
textBox テキストボックス。
例外
PtlException

◆ extractText()

const PtlParamString & PdfTk::PtlContent::extractText ( const PtlParamExtractText & ptlParamExtractText)

テキストを抽出。

コンテントからテキストを抽出します。
抽出されるのはページに描画されている内容です。透明のテキストも対象になります。
※ 注意:
テキストはコンテントに記述されている順番に取得されるのでビューワで見える通りの文字の並びとは限りません。

引数
ptlParamExtractTextテキスト抽出パラメータ。
戻り値
テキスト
例外
PtlException

◆ extractTexts()

PtlExtractTextResults PdfTk::PtlContent::extractTexts ( const PtlParamExtractText & ptlParamExtractText)

テキストを矩形ごとに抽出。

コンテントからテキストを指定された矩形ごとに抽出します。
抽出されるのはページに描画されている内容です。透明のテキストも対象になります。
※ 注意:
テキストはコンテントに記述されている順番に取得されるのでビューワで見える通りの文字の並びとは限りません。

引数
ptlParamExtractTextテキスト抽出パラメータ。
戻り値
PtlExtractTextResults
例外
PtlException

◆ getEditElements() [1/2]

PtlEditElements & PdfTk::PtlContent::getEditElements ( )

EditElementコンテナを取得。

コンテントに描画されるエレメントのコンテナを取得します。
この関数が複数回呼ばれた場合、全てのPtlEditElementsは最後に呼ばれたものと同じになります。

戻り値
EditElementコンテナ。
例外
PtlException

◆ getEditElements() [2/2]

PtlEditElements & PdfTk::PtlContent::getEditElements ( int flag)

EditElementコンテナを取得。

コンテントに描画されるエレメントのコンテナを取得します。
取得されるエレメントはテキスト,画像,パス,シェイディングのみです。
取得されたエレメント更新に使用できません。更新する場合はパラメータのないgetEditElements()を使用してください。
この関数が複数回呼ばれた場合、全てのPtlEditElementsは最後に呼ばれたものと同じになります。

引数
flagエレメント取得フラグ。GET_XXXで指定。
戻り値
EditElementコンテナ。
例外
PtlException

◆ operator=()

PtlContent & PdfTk::PtlContent::operator= ( const PtlContent & obj)

コピーオペレータ

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

◆ writeString() [1/2]

void PdfTk::PtlContent::writeString ( const PtlRect & rectMM,
ALIGN align,
const PtlParamString & str,
const PtlParamWriteString & paramWriteString )

文字列を出力。

矩形位置に出力します。
この矩形というのはテキストの開始位置を決める為に使用されます。
矩形のサイズよりテキストが大きいからと言って折り返されたり、縮小される訳ではないことに注意してください。

引数
rectMM出力矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
alignテキストの配置指定。ALIGN_XXXのいずれか。
str文字列。
paramWriteString文字列出力パラメータ。
例外
PtlException

◆ writeString() [2/2]

void PdfTk::PtlContent::writeString ( const PtlRect & rectMM,
ALIGN align,
float angle,
const PtlParamString & str,
const PtlParamWriteString & paramWriteString )

文字列を回転出力。

任意の角度で文字列を傾けて矩形位置に出力します。 この矩形というのはテキストの開始位置を決める為に使用されます。
矩形のサイズよりテキストが大きいからと言って折り返されたり、縮小される訳ではないことに注意してください。

引数
rectMM出力矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
alignテキストの配置指定。ALIGN_XXXのいずれか。
angle任意の角度で配置する。反時計回りが正の値。
str文字列。
paramWriteString文字列出力パラメータ。
例外
PtlException

◆ writeStringV()

void PdfTk::PtlContent::writeStringV ( const PtlRect & rectMM,
ALIGN align,
const PtlParamString & str,
const PtlParamWriteString & paramWriteString )

縦書きの文字列を出力。

矩形位置に出力します。
この矩形というのはテキストの開始位置を決める為に使用されます。
矩形のサイズよりテキストが大きいからと言って折り返されたり、縮小される訳ではないことに注意してください。

引数
rectMM出力矩形。
表示矩形(ViewBox)上の座標値をmm単位で指定してください。
ViewBoxの詳細については PtlPage#getViewBoxを参照してください。
alignテキストの配置指定。ALIGN_XXXのいずれか。
str文字列。
paramWriteString文字列出力パラメータ。
例外
PtlException