Annotations JSON API – アノテーションJSON API
このドキュメントでは、annotations.jsonファイルの構造について説明します。 BuildVuで注釈がどのように機能するかについて詳しくは、”BuildVuで注釈はどのように機能しますか?“をご覧ください。
IDRViewer内で使用されるアノテーションの読み込みと表示のためのシンプルな実装を提供します。この実装は、提供されるままに、あるいはインスピレーションのために、あるいは独自のカスタムソリューションの基礎として、ご自由にお使いください。
基本構造:
{ "pages": [{ "page": 1, "annotations": [{ "type": "Highlight", "bounds": [0, 0, 100, 100], "objref": "255", "contents": "contents value", (optional) "appearance": "1/annots/255.png" (optional) } ] } ] }
アノテーション(注釈)タイプ “type” :テキスト、リンク、フリーテキスト、線、正方形、円、多角形、ポリゴン、ハイライト、下線、波線、ストライクアウト、スタンプ、キャレット、インク、ファイル添付ファイル、サウンド、ムービー、ウィジェット、画面、透かし、 TrapNet、ウォーターマーク、3D、プロジェクション、RichMedia、スクリーン、TextLink
境界 “bounds”:左上の原点を使用して[x、y、幅、高さ]の形式で提供されます。
オブジェクト参照 “objref”:オブジェクト参照(「objref」):PDFファイル内の注釈のオブジェクト参照。
オブジェクト参照は、次の2つの状況では使用できません。
- まれに、注釈がインライン配列を使用して定義されている場合。
- PDFファイルから検出されたリンクからTextLinkアノテーションが生成される場合。
コンテンツ “contents”:通常、ポップアップ注釈のプレーンテキストコンテンツまたは注釈の説明(提供されている場合)。
外観 “appearance”):「通常」状態の外観(AP)ストリームのラスタライズバージョン(APディクショナリが提供されている場合)。
タイプ固有の値:
ポップアップのタイプ: テキスト(ノート)、ライン、矩形、円(楕円形)、多角形、折れ線、ハイライト、下線、波状下線、消し線、ゴム印(スタンプ)、キャレット(校正記号)、インク(フリーハンド)、ファイル添付、プロジェクション、墨消し(黒塗り)
{
"type": "Highlight",
"bounds": [0, 0, 100, 100],
"objref": "255", (optional)
"title": "title value", (optional)
"contents": "contents value", (optional)
"appearance": "1/annots/255.png" (optional)
}
リンクのタイプ:リンク、ウィジェット
{
"type": "Link",
"bounds": [0, 0, 100, 100],
"objref": "255", (optional)
"title": "title value", (optional)
"contents": "contents value", (optional)
"action": { } (optional)
"appearance": "1/annots/255.png" (optional)
}
アクションのタイプ:URI, GoTo, Named, Sound アクション固有の値:
URI:
"action": {
"type": "URI",
"uri": "https://www.example.com"
}
GoTo:
"action": {
"type": "GoTo",
"page": 1
}
Named:
"action": {
"type": "Named",
"name": "NextPage"
}
Name タイプ: NextPage, PrevPage, FirstPage, LastPage
LAUNCH:
"action": {
"type": "Launch",
"target": "executable/or/file/path.pdf"
}
SOUND:
"action": {
"type": "Sound",
"sound": "path/to/sound.wav"
}
添付ファイル:
{
"type": "FileAttachment",
"bounds": [0, 0, 100, 100],
"objref": "255", (optional)
"title": "title value", (optional)
"contents": "contents value", (optional)
"attachment": "path/to/file",
"filename": "attachment.pdf",
"appearance": "1/annots/255.png" (optional)
}
リッチメディア:
{
"type": "RichMedia",
"bounds": [0, 0, 100, 100],
"objref": "255", (optional)
"contents": "contents value", (optional)
"richmedia": [{
"src": "path/to/media.mp4",
"type": "video/mp4"
}]
"appearance": "1/annots/255.png" (optional)
}
サポートされているビデオタイプ:m4v, mov, mp4 (video/mp4)
サポートされているオーディオタイプ:mp3 (audio/mpeg)
スクリーン:
{
"type": "Screen",
"bounds": [0, 0, 100, 100],
"objref": "255", (optional)
"action": {
"type": "Rendition",
"media": {
"src": "path/to/media.mp4",
"type": "video/mp4"
}
},
"appearance": "1/annots/255.png" (optional)
}
サポートされているメディアタイプ:mp4 (video/mp4), mp3 (audio/mpeg)
サウンド:
{
"type": "Sound",
"bounds": [0, 0, 100, 100],
"objref": "255", (optional)
"title": "title value", (optional)
"contents": "contents value", (optional)
"sound": "path/to/sound.wav",
"appearance": "1/annots/255.png" (optional)
}
サポートされているメディアタイプ:wav