リンクをクリップボードにコピー
コピー完了
リンクをクリップボードにコピー
コピー完了
数字の件、InDesign上では方法はありません。それ自体がハイパーリンクの挙動を示す情報であるためです。
ごくせこいテストで、ハイパーリンク設定の「ズーム設定」だけ他のものに変えてPDFを書き出すと、例の数字も全くちがう物になります。
意味がわからないものは得てして邪魔なものとしてとらえられがちですが、これはリンクを成立させるための必須情報なのです。
>PDF上のリンクを貼った移動先を一括でテキストデータとして書き出す方法
これについてはAcrobatフォーラムの住人を頼ったほうが的確な回答を得られると思うので、
よかったらこのままスレッドをAcrobatのほうに移動します。いかがでしょう。
リンクをクリップボードにコピー
コピー完了
丁寧に教えていただきありがとうございます。
なるほど、数字を振られることは回避できないのですね。
PDFのリンクの移動先書き出しの件はご提案くださったようにAcrobatフォーラムへの移動をお願いできますか?
何から何までありがとうございます。
リンクをクリップボードにコピー
コピー完了
ということでスレッドをInDesignフォーラムからAcrobatフォーラムへ移動させていただきました。
全部自分で回答できればかっこいいんですが…
QuickTimer先生、妙案ありませんか(他力本願)
リンクをクリップボードにコピー
コピー完了
むむっ(カビラさんのモノマネをしている華丸さん風)
SKさん
先に謝っておきますね
私ごときでは
PDFになってから(インデザインに戻そうとする…笑)については
有益な情報もってない…トホホ
Acrobatの
javascriptだと
リンクオブジェクトの
位置情報は取れるけと
リンク先の内容が取れないんです。
リンクには大きく分けて
A:PDFドキュメント内のインターナルリンク
B:PDFドキュメント外の外部リンク
の
2つがありますが
B:PDFドキュメント外の外部リンク
外部リンク
HTTPリンクについては、比較的簡易に取得できるんです
Xpdfでpdftohtmlコマンドを使ったHTMLにして
aタグを抽出すれば一覧にするのは簡単ですし
PyPDFなんかでも簡単に抽出できるんです
が
A:PDFドキュメント内のインターナルリンク
の
一覧形式での
取得方法を、『私は』知らないんです…申し訳ないm(_ _)m
一応
AcrobatのHTML書き出しするとnameとフラグメントは付くのですが
何ページ目のどこ?とか?すぐにわかるような形ではないんです
代替え案…アイディアとしてはリンクオブジェクトを全部シオリ=ブックマークにしてブックマークを書き出すってのはアリかもしれない…遠い目(絶対目が合わないヤツ)冷静に考えたら↑これ無理だ
PDFの内部構造に詳しい方からの書き込みがあると良いのですが…(他力本願 ふたたび)
参考まで
参考リンク
Xpdf
https://www.xpdfreader.com/download.html
参考コマンド
/path/to/Xpdf/binARM/pdftohtml "/path/to/pdf/入力.pdf" "/path/to/output/dir/保存先フォルダ"
PyPDF
参考ソース
#! /usr/bin/env python3
import sys
from pypdf import PdfReader
strFilePath = "/some/dir/koko-ha/fullpath-ne/Desktop/調べたい.pdf"
app_PdfReader = PdfReader(strFilePath)
for itemPage in app_PdfReader.pages:
if "/Annots" in itemPage:
for annotArray in itemPage["/Annots"]:
subtype = annotArray.get_object()["/Subtype"]
if subtype == "/Link":
dict_Annot = (annotArray.get_object())
# print(dict_Annot)
if "/A" in dict_Annot:
print(annotArray.get_object()["/A"])
dict_A = (annotArray.get_object()["/A"])
if "/D" in dict_A:
print(dict_A.get_object()["/D"])
elif "/URI" in dict_A:
print(dict_A.get_object()["/URI"])
# if "/Dest" in dict_Annot:
# print(annotArray.get_object()["/Dest"])
# obj_dist = annotArray.get_object()["/Dest"]
# print(obj_dist["target_page_index"])
# Dest関連はエラーになるので仕様通りに動作しない
sys.exit(0)
これで
PDF Accessibility API ReferenceのPDFかけると
戻り値は こんな感じになります
参考ソース
AcrobatのHTML書き出ししたHTMLのインターナルリンク
<p name="bookmark0">リンク先</p>
<p style="padding-left: 5pt;text-indent: 0pt;line-height: 145pt;text-align: left;">
<a href="#bookmark0">リンク付きテキスト</a></p>
新しいアドビコミュニティで、さらに多くのインスピレーション、イベント、リソースを見つけましょう
今すぐ検索