月別アーカイブ: 2018年2月

PDF Tool API V5テキスト透かし―一工夫のご紹介

昨日のブログでご紹介しましたように、PDF Tool API V5では、テキスト透かし画像透かしPDF透かし色透かしが使えます。

今日は、最近お客様からサポートにお問い合わせをいただきましたテキスト透かしについてご紹介します。お問い合わせの内容は、テキスト透かしの文字を罫線で囲みたいというものです。

ワープロであれば文字囲みは昔から標準であります。Microsoft Wordでももちろんあります。ですので、文字囲みを付けたいと言う要望はごく自然な要望と言えます。しかし、残念ながらPDF Tool API V5では、テキスト透かしとして、文字囲みテキストを付加するAPIはありません。

一方、本文では、PDFの本文に文字を追記するAPIと、本文に線画を描画するAPIがあります。

そこで次のように少し工夫するとできます。

第1ステップ

1.空のPDFを作成します。
2.空のPDFに透かしとして追記したい文字を記入します。任意の文字列を設定できます。
3.文字列の高さと幅を調べます。
4.線画描画機能で文字列を囲む罫線を追加します。

これにより、透かしとして設定したい内容(罫線で囲った文字列)をもったPDFを作成できます。

第2ステップ

透かし設定対象のPDFの上に、ステップ1で作成したPDFを、PDF透かしとして重ねます。

このように、PDF Tool APIの機能をいくつか組み合わせて使うことで、単独ではできない飾りなども表現できるようになります。

ここでご紹介しました例は、今後、公開サンプルとして追加していく予定ですので、しばらくお待ちください。

本来であれば、文字囲みを直接記入することができるのが便利と思いますが、その辺は今後の課題とさせていただきたいと存じます。

もし、PDF Tool APIでこんなことがしたい! というご希望がございましたら、工夫してみたいと存じますので、サポートでも営業でもぜひお問い合わせください。

なお、PDF Tool APIの評価版には、現在44種類のサンプルが添付されています。
その一部がWebページとしても公開していますのでぜひご覧になってみてください。

参考資料
PDF Tool APIの評価版
サンプルの一覧ご紹介


PDF Tool API V5の透かし機能

先日は、どんなことに使えるかという観点から、PDFの透かしについて紹介しました。
「PDFの透かしってどんなことができる?」

今日は、PDF Tool API V5の透かし機能について紹介します。

PDF Tool API V5では、透かしとして指定した対象をPDFページの本文に挿入したり、削除したりできます。テキスト画像PDFの4種類を透かしに指定できます。4種類の透かし共通の機能は次の通りです。

透かし共通の機能

  1. ページ内の指定した位置に繰り返して配置できる
  2. 透かしを配置するページの範囲を指定できる
  3. Zオーダー(重なりの前後関係)を指定できる
  4. タイリング配置ができる
  5. 不透明度を指定できる
  6. 画面に表示するかどうか指定できる
  7. 印刷するかどうか指定できる

透かしには名前を付けます。そして、指定した名前にあてはまる透かしを削除できます。

テキスト透かし

PDF文書の指定したページに、テキストを透かしとして挿入します。テキストには改行コードも有効です。例えば、フッターにWebページのタイトルとURLを2行に分けてプログラムで埋め込むなどができます。この他、次のことができます。

  1. 透かし文字列を対角線に配置する指定または任意の挿入角度の指定
  2. フォントの大きさ、太字の指定、イタリックの指定、フォント埋め込みの指定
  3. 文字の色を指定
  4. 文字の輪郭線の色
  5. 透かしの透明度の指定

透かしの透明度を使えば、本文内の指定の位置に透明なテキストの挿入もできます

画像・PDFの透かし

任意の画像ファイルを透かしとしてPDF文書のページに挿入します。例えば、会社のロゴやレターヘッドなどの図形を予め、イメージ画像またはPDF文書として用意しておき、これを透かしとして使用できます。

  1. マルチTIFFファイルは透かしにするページを指定できます。
  2. 画像の透かしでは倍率を指定できます。

色透かし

任意のページに指定した色を透かしとして挿入できます。

PDF Tool API V5について

Webページ
PDF Tool API V5.0 機能使用例(サンプル集)

次回:PDF Tool API V5テキスト透かし―一工夫のご紹介


「Antenna House AHPDFXML 変換ライブラリ V2.0」の出力例 (フォント情報)

「Antenna House AHPDFXML 変換ライブラリ V2.0」は、PDFファイルの内部データを、XML(Extensible Markup Language:拡張可能なマークアップ言語)形式に変換するプログラムです。
このライブラリが出力するXML形式を「AHPDFXML形式」と呼びます。
PDF解析技術により文書構造を生成して、再利用に適したXMLデータを出力します。

今回は”フォント情報”がAHPDFXMLに出力される例を見てみます。
変換元PDFファイルのスクリーンショットです。
サンプルは、文字列”材料(3人分)”です。

ahpdfxml_pdf_0205

上記のPDFをAHPDFXML形式に変換したXMLの内容は次の通りです。

ドキュメントXMLの内容です。

文字は複数の ahp:run に分割されています。これは元の PDF 内で、文字の配置が分かれているためです。
どの文字も、スタイルXMLを参照するIDは ahp:s-id=s5 となっています。

スタイルXMLの内容です。

ahpdfxml_xml_0205b

  • フォント名 ahp:name=MS-Mincho
  • フォントサイズ ahp:size=18.000000
  • 強調表示 ahp:bold=true
  • 文字色は赤 ahp:color ahp:rgb=#f00000
  • 強調表示 ahp:bold=true
  • 下線は1本線の赤 ahp:border-b ahp:border-type=single ahp:width=1.000000 ahp:color ahp:rgb=#f00000

PDFファイルの中に含まれる文字やフォント情報を取り出すことができます。

XMLで表現することによって、データの扱いが容易になります。
XMLのメリットを最大限に活かしてPDFデータを活用できます。
弊社ウエブサイトより評価版の申し込みが可能です。是非ご評価ください。

製品に関するご質問は
sis@antenna.co.jp(SYSTEM担当)
または
oem@antenna.co.jp(OEM担当)
まで、お気軽にお問い合わせください。

評価版のお申込
評価版のお申込ページ

Webページ
http://www.antenna.co.jp/pdfxml/


PDFの透かしってどんなことができる?

Wikipediaでは透かし(Watermark)は、光の当て方によって見え方が違う画像や模様のことだそうです。もともと紙の製造の工程から生まれた言葉のようです[1]

広辞苑の説明では、「紙を漉くとき、文字や模様、また異質の材料を入れること」を漉き入れといい、「文字や模様を漉き込んだ紙」である「漉入紙を明るい方にかざすときに見える模様または文字」とされています。

日本で紙の透かしの活用で一番ポピュラーなのがお札の透かしではないでしょうか。日本のお札には複数の透かしを含めていろいろな特殊技術が使われているようですが、この大きな目的は偽造防止(=偽物を作りにくくする、複製しにくくする、オリジナルと複製物を見分け易くする)でしょう。

最近では、デジタルアプリケーションで制作するオフィス文書やPDFの分野でも「透かし」と言う言葉をときどき見かけます。しかし、デジタル文書の透かしは製造工程とは何の関係もないですし、デジタル文書を光にかざすのもちょっと? デジタル文書は簡単に複製できる(=オリジナルと複製物を見分けられない)ことが特徴なので、デジタル文書の偽造を防ぐのは難しい。電子署名は改竄の検出であり偽造防止ではないと考えていました。そうしたところ、仮想通貨の登場によって考えを変えないといけないようです。なんていったって仮想通貨では偽造防止は最大の課題のはずなので、これが解決している(らしい)ということはブロックチェーンを使えば偽造を防ぐことができるかもしれないですね。

こうして考えますと、紙や印刷の透かしと、オフィス文書/PDF文書のようなデジタル文書の透かしでは、あまりにも世界が違いすぎます。こんなに違う世界に同じ言葉を当てはめてしまうと混乱しませんかねぇ。1000年後に紙の透かしなんてほとんど見ない時代になったときにも透かしという言葉が生き残っているんでしょうか? 透かしとはなんぞや? 

前文が長くなりすぎたので、閑話休題、PDFを利用する観点で、PDFの透かしの機能と用途を整理してみました。PDFの透かしは実務的には次のようなことができます。

1. 透かし文字でPDF文書の位置付けを示す
例えば、草稿(Draft)や見本(Sample)などの言葉を、本文の上に薄く重ねて表示する、というのが透かしの利用パターンとして一番ポピュラーそうです。こうした文字を、対角線上(斜めに)にアウトラインのみとか、あるいは薄い文字として本文に重ねて描画するのは、まさに典型的なPDF透かしです。『瞬簡PDF作成8』、『瞬簡PDF編集7』、『PDF Tool API V5』でできます。

1.1 ダイナミックな透かし文字の追記
例えば、PDFで提出された文書に対して、システムが受け付けた日時などのメタデータをフッター領域に追記する、といった使い方もこの範疇でしょう。システムで追記となりますと、プログラムで使う必要があります。『PDF Tool API V5』であれば、日付を透かし用のテキストとして、用いて、プログラムでPDFにテキスト透かしとして設定することで、ダイナミックに変る透かしを追記できます。

2.画面には表示されないけど、印刷すると表示される透かし文字をPDFに埋め込む
ときどき、こうした透かしができるかどうかという質問をいただきます[2]。印刷の抑止目的なんでしょうか? アンテナハウスの『瞬簡PDF編集7』、『瞬簡PDF作成8』、『PDF Tool API V5』を使うと透かし画面には表示されないけど、印刷すると表示される透かしをPDFに埋め込むことができます。

3.画面に表示されるけど、印刷されない透かし文字をPDFに埋め込む
2.の逆です。弊社のお問い合わせ窓口にもこうした質問をいただくことがあります[3]。こういう透かしの用途は想像し難いですが、画面キャプチャの防止目的でしょうか? 『瞬簡PDF編集7』、『瞬簡PDF作成8』、『PDF Tool API V5』でできます。

4.著作権の保護や追跡のため、透明の文字を埋め込む
PDFの中に透かしで透明の文字を入れておくことで、もし万一PDFが想定外の場所の配布されたとき、相手に悟られずに追跡したり、自分が著作権者であることを主張できます。これも『PDF Tool API V5』であればできます。

これは何も透かしではなくても良いような気もしますが(?)

5.ソーシアルDRM
最近、電子書籍の分野でソーシアルDRMという言葉を聞く頻度が増えてきました。これは、PDFのようなデジタルデータを販売または配布する際に、購入者やダウンロードした人の個人IDをデジタルデータに埋め込み、所有者を明示することで、違法なコピーや配布を抑制しようというものです。個人のIDを透かしテキストとして用いて透かしをつけることでソーシアルDRMとして使えるのではないでしょうか。ダウンロード時にダイナミックに透かしを付けるのは1.1項と同じですので『PDF Tool API V5』によって、簡単に実現できます。

なお、ここではテキストを透かしとして使う「テキスト透かし」についてのみ取り上げています。PDFではこの他、画像、PDF文書(のページ)、色などを透かしに使えます。

[1]透かし(Wikipedia)
[2] 作成したPDFを印刷したときに、「複写禁止」などの文字列を強制的にオーバーレイして印字する製品はありますか。また、そのPDFを印刷する環境は不特定で、且つ、PC上で表示する際には、「複写禁止」などの文字列は表示されないようにできますか。
[3]PDFのヘッダー部分に、文字列を挿入して、”挿入した文字列を印刷時は印刷しない” という設定ができる製品はありますか。
[4]『瞬簡PDF作成8』
[5]『瞬簡PDF編集7』
[6]『PDF Tool API V5』

次回PDF Tool API V5の透かし機能


「Antenna House AHPDFXML 変換ライブラリ V2.0」の出力例 (画像情報)

「Antenna House AHPDFXML 変換ライブラリ V2.0」は、PDFファイルの内部データを、
XML(Extensible Markup Language:拡張可能なマークアップ言語)形式に変換するプログラムです。
このライブラリが出力するXML形式を「AHPDFXML形式」と呼びます。
PDF解析技術により文書構造を生成して、再利用に適したXMLデータを出力します。

今回は”画像情報”がAHPDFXMLに出力される例を見てみます。
変換元PDFファイルのスクリーンショットです。
サンプルは、画像”野菜のかご盛り”です。

ahpdfxml_pdf_0202

上記のPDFをAHPDFXML形式に変換したXMLの内容は次の通りです。

ドキュメントXMLの内容です。

ahpdfxml_xml_0202a

  • イメージフレーム ahp:frame-type=image
  • 領域の座標 ahp:l ahp:r ahp:t ahp:b
  • カタログXMLを参照するID ahp:file-id=f1

カタログXMLの内容です。
ahpdfxml_xml_0202b

  • 外部ファイル名 ahp:href=pdf2tmp_0.bmp
  • 画像はBMP ahp:file-type=BMP
  • 参照されるID ahp:id=f1

AHPDFXMLの出力先フォルダのスクリーンショットです。
画像ファイル pdf2tmp_0.bmp が出力されているのがわかります。

ahpdfxml_ss_0202

PDFファイルの中に含まれる画像を取り出すことができます。

XMLで表現することによって、データの扱いが容易になります。
XMLのメリットを最大限に活かしてPDFデータを活用できます。
弊社ウエブサイトより評価版の申し込みが可能です。是非ご評価ください。

製品に関するご質問は
sis@antenna.co.jp(SYSTEM担当)
または
oem@antenna.co.jp(OEM担当)
まで、お気軽にお問い合わせください。

評価版のお申込
評価版のお申込ページ

Webページ
http://www.antenna.co.jp/pdfxml/


CAS-UB:章見出しのPDF用CSSレイアウトカスタマイズ

皆さん、こんにちは。CAS-UB 営業担当です。

CAS-UB成果物の出力レイアウトは、予めテーマとして用意されているものから選択します。さらにそれをカスタマイズできます。今回はCAS-UBのPDFレイアウトカスタマイズとして「章見出し」のデザインをCSSでカスタマイズした事例を紹介します。

章タイトルをCSSでデザインする

PDFのレイアウトをカスタマイズするには、専用のCSS「styleset-pdf.css」ファイルが必要です。
先ずは空っぽのCSSファイルを作成しましょう[1]

章見出しのつくり

章見出しのレイアウトを変更するには、章見出しがどのようなレイアウト構成を持っているかを事前に把握しておく必要があります。

下の図を見ながら確認しましょう。

CAS-UBの記事編集画面の上部には、「タイトル」欄と、その横に「記事の種類」リストが並んでいます。

記事の種類が「本文:章」となっているとき、「タイトル」欄に挿入されているテキストがPDF出力したとき、「章見出し」になります。

次にCSSの構成を見ていきます。

EPUBに限らずPDF出力でも、「章」と設定されたタイトルには、デフォルトで「章番号」が付与されます(CAS-UB 生成画面より、PDFの「レイアウト設定」画面で変更が可能)。章番号を見出しに出す場合、これもCSSでカスタマイズすることができます。

PDF出力の場合のCSS属性は下記のとおりです。

項目 クラス属性 分類
章タイトル s-title-level1 ブロック
章番号 s-title-level1-number インライン
章タイトル・テキスト s-title-level1-text インライン

単純なものならば、この3つのクラス属性についてCSSを指定するだけで、見映えのする章見出しをデザインできます。

レイアウト設定例

章タイトル-縦組扉中央 章番号:黒地白抜き、章タイトル:白地黒抜き

章見出しのPDFレイアウトを予めCAS-UBの生成画面より、PDF:レイアウト詳細設定で設定しておきます。

  • 見出し番号レベル:1:章のみ(0:番号なし以外を選択)
  • 章扉の作り方:章扉を作り、その裏のページから節
  • 章扉の文字組方向:縦組
  • 章扉のタイトルの行進行方向の:中央
CSSコード
.s-title-level1{
font-weight: bold;
}
.s-title-level1-number{
padding:0.8em 0.8em 0 0.8em;
background-color:black;
border:1px solid black;
color:white;
}
.s-title-level1-text{
padding:0.8em;
border:1px solid black;
}

章タイトル-縦組扉なし、ライン

PDF:レイアウト詳細設定

  • 見出し番号レベル:1:章のみ(0:番号なし以外を選択)
  • 章扉の作り方:章は作らず、章は改ページで始まる
  • 章(見出しレベル1)>位置 レベル1:行頭寄せ
CSSコード
.s-title-level1{
font-weight: bold;
margin-top:-0.25em;
padding-top: 0.75em;
border-top:2px solid black;
border-right: 2px solid black;
padding-right:3px;
}
.s-title-level1-number{
background-color:black;
color:white;
}
.s-title-level1-text{
margin-top:1em;
}

PDF出力はEPUBと異なり、ユーザーが自由にCSSを設定することはできませんが、ある程度のデザイン力はありますので是非この機能を使ってみてください。

PDF出力用のCSS設定については、CAS-UBサイトの「サポート&ガイド一覧」より、CAS-UB PDF生成のためのガイド「第6章 見出しと本文にメリハリを付ける」をご参照ください。

CAS-UBサポート&ガイド一覧

[1] PDFのレイアウトカスタマイズ用のスタイルシートファイルはCSS(Cascading Style Sheets)の書き方を採用していますが、CSSそのものではなく、使えるプロパティの名前や値はCSSとは若干違いますのでご注意ください。