• ベストアンサー

ページ内の画像印刷について

<a href="javascript:window.print();">印刷</a> 等でホームページ全体の印刷はできるようですが、印刷ボタンを押す事で特定の画像だけを印刷するにはどのようにすれば良いのかお教え下さい。

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

  • ベストアンサー
  • kappa-pa
  • ベストアンサー率49% (101/206)
回答No.1

印刷のリンクに特定の画像URLを指定してあげれば可能です。 それともこういうことかな。URL参照 http://www.nextftp.com/laputa/imgprint.html ただし、印刷時のレイアウト指定などは無理があります。 そう言った場合は印刷用レイアウトのページ(CSSなどで印刷むきのレイアウトにしてやる)を作り印刷の場合はそちらのページを印刷するよう仕組む事が必要です。

sputonik2
質問者

補足

kappa-paさん、早速の回答有り難うございました。 質問が舌っ足らずのようでしたが、参照URLのような感じでOKです。ただ、このサイトは別ウィンドウをオープンしてからそこにある画像を印刷する為にJavascriptを使用して複雑になり過ぎています。 kappa-paさんのコメントにあるように、印刷のリンクに画像のURLを指定するにはどうすれば良いのですか。 例えば <input type="button" value="印刷ボタン" onclick="window.print('images/map.gif')"> では駄目のようですが。 ホームページ初挑戦で悪戦苦闘しています。どうか宜しくお願い致します。

その他の回答 (3)

  • abacabu
  • ベストアンサー率37% (250/663)
回答No.4

またまた書き込みします 私は素人ですので今回が頭をひねりきった限界です 最近はフレームは検索エンジンに登録される時に 多少の不具合(TOPページでなくフレーム内のあるページへ 飛んでしまい、リンク無しで迷子になる場合あり)がありますが 別画面を1つの画面に表示できるので今ある知識+フレーム でやるという方法です。 しかし問題があって、今後フレーム要素が使えなくなる 可能性がある事です…。何年後かは分かりませんが。 あともうひとつ、 画像の有料印刷サイトというか料金制にしている場合は 使えない方法ですが、 JavaScript等プログラムは印刷の妨げになりますので マウス右クリックの印刷を推奨するコメントを書くという 方法もあると思いますが、 恐らく質問者様はサイト側でそれをしようとお考えと思いますので、 フレームをお勧めします。 フレームはよく印刷の妨げと言われますが、 それは画面に出ている全てのページを印刷できない (1つのページに見えて複数のページが表示されている為 右クリックした所の画面のみ印刷されると思われます)ので それを逆手に取ってフレームで画像を分けてしまうのが 簡単ではないかと思います。 すこし陳腐な策ですが参考になりますかね? 私もそれ程沢山のタグはまだ使ってないし、 JavaScriptに関しては本等に載ってない様々なプログラムが 存在する様ですが、まだ知識の浅い私には ここまでしかアドバイス出来そうにないです。 お力になれずすいません…。

sputonik2
質問者

お礼

度々の御丁寧な回答、有り難うございました。 また、数日間、家を空けていた為に返信が遅れてしまい申し訳ありませんでした。 マウス右クリックは一つの方法ですが、これですとコピペをしなければいけないので若干スマートさに欠けると思い、ボタンで印刷出来ればと思った次第です。良案が無ければこれで行くのも手かも知れません。 ところでフレームを使う方法も確かに面白いですね。ただ、今回ホームページを作るにあたり、これからはフレームはできるだけ避けてスタイルシート式で作成するようにと参考書に載っていたのでフレームのタグは全く使っておらず、勉強?しなければなりません。悩ましいところですが、挑戦してみたいと思います。 abacabuさん、本当にお世話になり有り難うございました。

  • abacabu
  • ベストアンサー率37% (250/663)
回答No.3

ひきつづき回答します CSSで同一ページ内に改ページを設定すれば なんとかなりませんかね。 実際そこから印刷が分かれますが、 タグですが <style type="text/css"> .(sample)お好きな名前{ page-break-before:always;} </style> <body> <p>ああああああ</p> <p class="sample"> いいいいい </body> こんな感じで「あ」と「い」は別に印刷されます このタグの存在を忘れてました…。

sputonik2
質問者

お礼

再びの回答、有り難うございました。 実は “page-break-before:always” については数日前にWebや本などを必至に探して知ったのですが、CSS上での使い方が解らず困っていた所でした。 そこでabacabuさんに教えて頂いたようにしてみたのですが、これは単に画像の前に改ページを入れるだけであって、印刷ダイアログが出てきた時にそのページを選択しなければなりませんし、且つ、画像の後の情報はそのまま一緒に印刷されてしまいます。 画像単独のページにするには以下のように2つのタグを並べれば良いようですが(文法上、正しいかどうかは判りません)、それでも印刷時のページ選択は必要になってしまいます。 page-break-before:always page-break-after:always 贅沢を言って申し訳ないのですが、良い方法が見つかったら、また教えて下さい。 宜しくお願い致します。

  • abacabu
  • ベストアンサー率37% (250/663)
回答No.2

ちょっと探してみました。 参考になれば幸いです。

参考URL:
http://jsm.suepon.com/script/jsm41.html
sputonik2
質問者

お礼

abacabuさん、上記URLを探して頂き有り難うございました。 ただ、御紹介のJavascriptは、特定の画像だけではなく、ホームページ全体を印刷してしまうと思われますので、残念ながら私の意図にそうものではありません。 しかし、貴重な時間を割いて探して頂いた事に感謝致します。