Acrobatボタンツールの囲い枠線設定について

このQ&Aのポイント
  • Acrobat Pro7を使用している場合、アンケートフォームの男・女の選択で囲い枠線を表示する設定をしたい場合、一度クリックしたら囲い枠線が消える問題が発生するかもしれません。
  • ボタンツールで男・女のそれぞれ枠線のみ表示、塗りつぶし無しに設定し、「アクション」でマウスをクリックすると囲い枠線が消えるように設定しても同様の問題が発生します。
  • 囲い枠線がマウスのクリックによって消えたり表示されたりする方法があるかどうかは分かりませんが、より使いやすいアンケートフォームを作成するためには、他の方法を検討することをおすすめします。
回答を見る
  • ベストアンサー

Acrobatのボタンツールについて

Acrobat Pro7を使用しています。PDFのアンケートフォームを作成中です。 アンケートフォームの男・女の選択で、該当するほうに囲い枠線をつける設定をしたいのですが、うまくいきません。 試したことは、ボタンツールで男・女のそれぞれ枠線のみ表示、塗りつぶし無しに設定。「アクション」でマウスをクリックするとボタンツールの枠線が消える設定をしました。 この状態では、男・女それぞれに囲い枠線が表示され、該当しないほうをクリックすると囲い枠線が消えます。該当するほうだけ囲い枠線を表示するという意味では目的は達成しました。 しかし誤ってクリックすると囲い枠線が消え、再度クリックしても表示されません。囲い枠線がマウスのクリックによって、消えたり表示させたりできる方法はないでしょうか。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • x-1919
  • ベストアンサー率52% (91/173)
回答No.3

Acrobat の JavaScript は経験なしですが、Acrobat 10 Standard で試してみた範囲ではうまく動いているように見えます。 2つのボタンを処理可能な関数にしたいところですが、私が持っている Standard エディションではダメなようで、各ボタンのアクションに記述するしかないようです。 Professional なら文書レベルで関数を作ることも可能なんじゃないかと思います。 [ボタンのプロパティ] → [アクション] タブ トリガー : "マウスボタンを離す" アクションを選択 : "JavaScript を実行 Button1 の処理 f = this.getField("男btn"); f.strokeColor = (f.strokeColor == "T")? color.red : color.transparent; 色を指定する部分は f.strokeColor = (f.strokeColor == "T")? new Array("RGB",1,0,0) : new Array("T"); と書いていたのですが、#1 さんのコードを参考にさせていただきました。

shibushijuko
質問者

お礼

ご回答いただき、ありがとうございます。 ご指摘のスクリプトでズバリ問題解決です。 color.blackだけ変えました。 助かりました。ありがとうございます。

その他の回答 (3)

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.4

ANo1、No2です。 Acrobatのスクリプトはよく知らないので、回答するためにネットでドキュメントを探しましたので、それもご参考までに記しておきます。(拾い読みしただけですが…) ◇PDFのドキュメント http://wwwimages.adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/pdf_reference_1-7.pdf ◇Acrobatスクリプトのドキュメント http://help.adobe.com/livedocs/acrobat_sdk/9/Acrobat9_HTMLHelp/wwhelp/wwhimpl/js/html/wwhelp.htm?&accessible=true また、ANo1の回答中でchangeBorder内の  if(){ ~ } の部分は、ANo1ではそのまま素直に書きましたが、  elm.strokeColor = (n==t_name && elm.strokeColo=="T")?red:tp; の1行でも同じことになります。 >ANo3様 スクリプトのドキュメントで、 Javascipt > Acrobat API Reference > Javascript API > Color > color prorerties をご覧になると、#1のkeywordが記されています。 システム定数のような形で用意されているようですが、こちらの方が視認性が良いかと思い利用した次第です。 この属性値は実際にテストしてみると、透明線の場合、値の読み出しで取得するのは「["T"]」ではなく、単なる「"T"」のようで、何だかおかしな気もしますがこれで判別できている様です。 (詳しくは確認していません。) また、ボタンのプロパティからスクリプトを設定なさっているとのことですが、片方に  changeBorder(this, event);  function changeBorder(dc, evt){ ~~ } を設定しておいて、もう一方には  changeBorder(this, event); だけを設定することで動作しないでしょうか? (私は、この設定方法でテストしました。) this値やeventは引数にする必要がないのかも知れませんが、調べている時間がなかったので、安全側で記してあります。

shibushijuko
質問者

お礼

何度もご回答いただき、ありがとうございます。 お恥ずかしい話ですがJavaスクリプトはまったく知識がありません。でも、何とか解決できました。ありがとうございます。

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.2

ANo1です。 >できればマウスを押すとボタン(透過設定の囲い枠線)が表示され、 >再度マウスを押すとボタンが消えるように設定したいです。 そのようになっていませんか? ボタンの枠線表示のトグルと2個のボタンの排他化を複合しましたので、細かなところでは質問者様の想定とは違っている可能性もありますが、大雑把には合っているのではないかと思っているのですけれど… もっとも、『(透過設定の囲い枠線)が表示され』って枠が見えない状態ってことだし、『ボタンが消えるように』ってボタンそのものが消えてしまうことになるので、私にはよく意味がわかっていないのも事実ですが・・・(そのような動作にはしていません。) なお、ANo1の文章中で、  をそれぞれ"Btton1"、"Btton2"と~        ↓  をそれぞれ"Button1"、"Button2"と~ のタイポでしたね。失礼いたしました。 >例えば、button1にはマウスを押したときボタン(button1) >が表示され、再度押すとボタン(button1)が非表示される >スクリプトはどのようになりますでしょうか。 ANo1にも書きましたが、Acrobatのスクリプトはよくわからないのですが、何かの御参考にでもなればと思い、実験的に試した一例を提示させていただきました。 多分、上記のスクリプトも作成することは可能だと思いますが、実際には、非表示状態のボタンを押すことは不可能なので、そのスクリプトが実行されることはないと思います。 結果的に、『(表示しているボタンを)押したら消える』というものと等価になることでしょう。

shibushijuko
質問者

お礼

再度ご回答いただき、ありがとうございます。 ボタンのアクションでマウスを離すとjavaスクリプトを実行を選択して下記スクリプトを 記載しました。これによりボタンの表示、非表示が実現しました。 f = this.getField("Button1"); f.strokeColor = (f.strokeColor == "T")? color.black : color.transparent; 実際にはボタンを透過にして枠線の色を黒にしました。ボタンが表示されるときは、実際には枠線のみ表示され、透過設定にしているのでボタンの下にある文字が表示されます。 これにより男と言う文字が囲い線で選択された表示になりました。再度、マウスをクリックするとボタン表示が消え、つまり囲い線が消えで男という文字の囲い線がなくなります。 これで思ったとおりの設定ができました。 ありがとうございます。

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

Acrobatのスクリプトはよくわかりませんが… 現在どのような設定でなさっているのかと、その後どのような処理をなさるのかなども不明なので、とりあえずの一例としてですが、 ボタンの名前をそれぞれ"Btton1"、"Btton2"と仮定するなら、共通の関数として function changeBorder(dc, evt){ var names = ["Button1", "Button2"]; var t_name = evt.target.name; var i, n, elm, tp = color.transparent, red = color.red; for(i=0; n=names[i++];){ elm = dc.getField(n); if(n == t_name){ elm.strokeColor = (elm.strokeColor=="T")?red:tp; }else{ elm.strokeColor = tp; } } } を定義しておいて、 それぞれのボタンを押したときのアクションとして、  changeBorder(this, event); のように設定し、上記の関数を呼び出せばご質問のような動作になると思います。 (とりあえず、赤色の枠線の表示/非表示にしています) 質問文に書いてないところの動作は適当に設定していますので、多少違うかもしれませんが修正願います。 (Acrobat XI にて動作確認)

shibushijuko
質問者

お礼

ご回答ありがとうございます。 ボタンツールを使い、男・女のそれぞれにボタン(Button1、Button2)を作成しました。 ボタンは透過の状態で枠線だけ表示されています。つまりこの状態で、男・女とも枠線で囲まれた状態に見えます。 できればマウスを押すとボタン(透過設定の囲い枠線)が表示され、再度マウスを押すとボタンが消えるように設定したいです。 おそらく、ボタンのプロパティーにあるアクションからマウスを押したとき「Javaスクリプトの実行」を追加して、スクリプトを記載する必要があると思います。 例えば、button1にはマウスを押したときボタン(button1)が表示され、再度押すとボタン(button1)が非表示されるスクリプトはどのようになりますでしょうか。 よろしくお願いします。

関連するQ&A

  • Acrobatのツールボタンの消し方

    いつもお世話になっております。 現在、Windows2000(SP4)、Visual Basic6.0(SP6)を使って開発中です。 今回、Form上にAcrobat Readerを使って、PDFファイルを表示させたいのですが、デフォルトで表示されるAcrobatのツールボタンのうち、「Yahoo!」、「Web検索」、「電子メール」のボタンを非表示にしたいと思っています。 インターネットで調べたところ、下記の方法で出来そうなのですが、 ------------------------------------------------------ Dim AcroApp As Object Set AcroApp = CreateObject("AcroExch.App") AcroApp.hideToolbarButton("Save") ←ここでは上書きボタンを消す ------------------------------------------------------ 実際には、2行目でエラーが出てしまいます。 何がいけないのか、分かる方がいましたら教えて下さい。 ちなみに、Acrobat Readerは7がインストールしてあります。 よろしくお願いします。

  • Acrobatのクイックツールとパネルの設定

    バージョンは、Acrobat XI Pro です。 クイックツールに表示させたいものがあるのですが、 クイックツールをカスタマイズする、歯車の形をしたボタンが表示されていません。 調べてみましたが、クイックツールの変更は、このボタンが表示されていることが 前提で説明してあり、、ボタンが表示されていない場合のことが書いてありません。 この場合どうしたら、クイックツールをカスタマイズできるのでしょうか? クイックツールに追加したいのは、「注釈」の「スタンプの追加」です。 クイックツールを右クリックして出てくるメニューの中の 「注釈」には、「ノート注釈を追加」と、「テキストをハイライト表示」のみが、表示されます。 それと、画面右に表示されるパネルを、Acrobat起動時に、常に表示させたいのですが、 どこで設定するのか見つけることができません。 宜しくお願い致します。

  • Acrobat8のタイプライターツールの使い方が分からない

    Acrobat8(Standard)を使っています。PDFのファイルに任意に文字を書きたいのですがテキストボックスを使うと文字が赤でサイズも固定なので使い勝手が悪いです。そこで似たような機能を持つ「タイプライターツール」を最近発見し、使おうとしているのですが使い方が分かりません。 (聞きたいこと) タイプライターツールを表示し、文字を任意の場所に打ち込むと文字が消えてしまいます。マウスでダブルクリックしているとまた現れ、別の場所をマウスで触るとまた入力した文字が消えてしまいます。 入力した文字が消えないようにするにはどうしたらよいのでしょうか?(私は基本的なことを間違っているのでしょうか?)

  • Adobe Acrobat (writer)の手のひらツール

    Acrobat (writer)の手のひらツールを使うと、内側に下向きの矢印が表示された手のひらアイコンが表示され、この状態でページ内を左クリックすると半ページくらい下方向にページスクロールしてしまいます。(DragではなくてClick) また、「全体表示」ボタンを押していても、この矢印付き手のひらツールでページ内をクリックすると「幅に合わせる」の状態に自動で切り替わってしまいます。これだと使いにくいので、通常の矢印の無い手のひらツールの動きにするにはどうしたらいいのでしょうか?Acrobatは7.0 Standardです。よろしくお願いします。

  • Acrobat Reader ボタンジャンプ機能

    Acrobat Readerで、しおり(ツリー形式)ではなく、 目次タイトルをクリックすると該当ページにジャンプする・・・といったボタン機能はどのように設定したら良いのでしょうか。 ご存知の方、ご教示願います。

  • Acrobat の鉛筆ツールでのリンク

    Acrobat 5.0 を使用しています。 「鉛筆ツール」や「円形ツール」で書いたものにリンクの設定は出来ないのでしょうか? また、新しいバージョンのAcrobatなら出来るのでしょうか? 御存知の方、御教授を宜しくお願いします。

  • Acrobatでクリックすると拡大してしまう

    Adobe Acrobatで、手のひらツールがアクティブになった状態で画面をクリックすると、表示が拡大されてしまうのですが、そのモードを止めたい時はどのようにして設定したら良いのでしょうか?? Acrobat 5.0 Win2000 です。

  • コントロールツールボックス

     コントロールツールボックスをWordで使用可能にし、コマンドボタンを挿入したいのですが、挿入時にボタンをクリックすると、自動的に文書上にボタンができてしまいます。また、コードを入れて、動かそうと思ってクリックすると、動作せず、コードの中身、モジュールが表示されるだけです。どこを直せば良いのでしょうか(Excelでの「ツール」→「ユーザー設定」でコマンドタブから「フォーム」を選んだ時にできるようなボタンはWordにはないのでしょうか)?

  • Acrobatについて

    AcrobatやAcrobatReaderを使っていると、AcrobatDistillerという言葉がよくでてきますが、いまいち何をするものか良くわかりません。設定-プリンタで表示されてきますが、実際にはプリンタではないですよね??AcrobatのツールにもAcrobatDistillerがありますよね?? あと、同じくAcrobatWriter(?)とかいうのもよくわかりません・・・。 どなたか教えてください!!

  • Acrobat フォーム準備につきまして

    いつもお世話になっております。 Adobe Acrobat Pro CDを使っています。 ツール⇒フォームを準備 でテキストフィールド、チェックボックス、ラジオボタン … などの中に 画像フィールド が表示されていません。元々はないのでしょうか。VBAでテキストと画像を差し込み印刷したいのですが、画像の差し込み方がわかりません。どなたかご協力頂けないでしょうか。宜しくお願い致します。