質問: jso.getpagenthwordquads(0, 1) でtestには8つの値が配列で入るはずなのですがtest(0)にしか値は入っていません。 この値は妥当な値を得られているのですが、test(1)からは参照できません。 いろいろ調べて、vbaのvariantはvbのそれとは違う・・・のが原因ではというところで行き詰りここに書き込んでみることにしました。 vbaで同様なことをされている方がいましたらぜひよろしくお願いします。
回答: こんにちは。 >vbaで同様なことをされている方がいましたらぜひよろしくお願いします。 ふつうは、pdf に、テキストが入っているとは限らないし、プロテクトが掛かっていたら出来ませんので、印刷プロテクトが入っていないものなら、私は、ocr で取ってしまいます。それに、小さい規模なら、テキストが入っていれば、テキスト・コピーが利きます。 acrobat 自体は分かりませんが、 test = jso.getpagenthwordquads(0, 1) もし、もともとが、配列があるとするなら、インデックス(添え字)を入れなければ、そのまま入るはずです。ただし、変数 test は、variant 型で、配列の宣言をしないことが条件です。 そういうことではなくて、それぞれを取りたいなら、 jso.getpagenthwordquads が、8つがどのような構造をしているかは分かりませんが、 座標は、二次限配列なのですから、 getpagenthwordquads ([npage],[nword]) そのそれぞれのインデックスに、たぶん、0か、1 から、上限まで数字を入れれば出てくるはずです。