旅先で恋に落ちたくなる?思わぬ運命の恋に巡り合う映画

PHPでPDFを作成し、PDFがブラウザで表示されたら自動印刷するようにしようと思っています。

FPDFを使い、用紙サイズA4・用紙方向縦に設定したPDFを生成することができました。
さらにFPDFのphpファイルを拡張して、PDFファイルにAcrobat JavaScriptを埋め込めるようにしました。
プリンタを指定してAdobe Readerで自動印刷することができました。

後は給紙を用紙トレイにできればよいのですが、方法がわかりません。

Acrobat JavaScriptでできるのでしょうか?FPDFでできるのでしょうか?
それとも給紙方法の制御は無理なのでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (1件)

Acrobatのjavascriptはプリンタを選べるのでしょうか?


もし選べるなら同じプリンタドライバをもう一個いれて、
デフォルトの給紙を用紙トレイにしておけばよいのでは?
もはやPHPの話ではないですが・・・。
    • good
    • 0
この回答へのお礼

> Acrobatのjavascriptはプリンタを選べるのでしょうか?

FPDF( http://www.fpdf.org/ )のScriptsのところに、
"Title"が"JavaScript support"というリンク
( http://www.fpdf.org/en/script/script36.php )があります。
ここにPHP生成時に自動印刷のJavaScriptを埋め込むサンプルがありました。
getPrintParamsというメソッドを使えばプリンタ指定できるようです。

> もし選べるなら同じプリンタドライバをもう一個いれて、
> デフォルトの給紙を用紙トレイにしておけばよいのでは?

盲点でした。これでなんとかできそうです。どうもありがとうございました。

お礼日時:2008/01/31 13:33

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QPHPでPDFファイルの直接印刷

HTML、PHP、JavascriptでWeb画面上から印刷枚数を指定し、Web画面上の「印刷」ボタンを押すと、直接、特定のファイルパスのPDFファイルを印刷できるようにしたいと思っています。
かなり検索したのですが、それを実現できるようなものが見当たりません。
どうかご教授ください。よろしくお願い致します。

Aベストアンサー

PXDocについて、
所詮はXMLなので、PHPで、SVGの記述にそったXMLを出力すればよいです。ブラウザ側には、pxd拡張子で投げるため、
PHPで、header指定のコードを記述する必要はありそうです。

header("Content-type: application/pxd");

PXDocのサイト(参考URL)にサンプルとリファレンスがあります。
.pdx という拡張子がありますが、単なるXMLファイル(テキストファイル)なので、メモ帳なり秀丸なりで開けば、ああなるほどとわかると思います。

複雑な帳票で、テンプレートを作り、部分的に動的な値を埋め込む場合は、テンプレートをExcelとかOpenOffice.orgで作ってSVG保存したものを使えばよいと思います。

※SVG(つまり実体はXML)はテキストファイルなので、
ユーザが内容を書き換えることが可能です。(書き換えようと思えばですが)

PDFのように、編集不可にする手段はないのでご注意ください。

参考URL:http://www.pxdoc.com/sample/index.htm

PXDocについて、
所詮はXMLなので、PHPで、SVGの記述にそったXMLを出力すればよいです。ブラウザ側には、pxd拡張子で投げるため、
PHPで、header指定のコードを記述する必要はありそうです。

header("Content-type: application/pxd");

PXDocのサイト(参考URL)にサンプルとリファレンスがあります。
.pdx という拡張子がありますが、単なるXMLファイル(テキストファイル)なので、メモ帳なり秀丸なりで開けば、ああなるほどとわかると思います。

複雑な帳票で、テンプレートを作り、部分的に動的な値...続きを読む

QVBscriptでPDFファイルを直接印刷できるようにするためには?

Windows2000 or WIndowsXP
IIS5.0
ASP(言語はVBscrptを使用)

今あるボタンを押すと、PDFファイルを作成し、
そのできたファイルへのリンクを画面に表示
するようにしています。
そのリンクをクリックするとAcrobatReaderに
よってプレビューが開かれ、そこで印刷ボタンを
押すと印刷できるという仕組みになっています。

これからはそうではなくて、あるボタンを押すと
PDFファイルを作成し、データをプリンタに送って?
印刷できるようにしたいと考えています。

(1)そんなことは技術的に可能でしょうか?
(2)また、印刷する際にどのプリンタから出力される
かをプログラムで指定することはできますでしょうか?
指定しなければ、通常使うプリンタから出る?
(3)印刷する際に、印刷設定ダイアログ(プリンタ選択画面)を出現させることは可能でしょうか?

大変困っています。どなたかヒントだけでも
(できればサンプルコードも)よいので
教えて下さいませんでしょうか?

よろしくお願いします。

Windows2000 or WIndowsXP
IIS5.0
ASP(言語はVBscrptを使用)

今あるボタンを押すと、PDFファイルを作成し、
そのできたファイルへのリンクを画面に表示
するようにしています。
そのリンクをクリックするとAcrobatReaderに
よってプレビューが開かれ、そこで印刷ボタンを
押すと印刷できるという仕組みになっています。

これからはそうではなくて、あるボタンを押すと
PDFファイルを作成し、データをプリンタに送って?
印刷できるようにしたいと考えています。

(1)そんなことは技術的に...続きを読む

Aベストアンサー

サーバー(IIS)側からプリンタに出力するのであれば
可能と思われます。
一番簡単なのはAcrobatReaderのコマンドラインを使用
する方法です。
イメージでいえば
1.クライアントから印刷指示
2.サーバー側でPDF作成
3.サーバー側でAcrobatReaderのコマンドラインに
  2.のPDFを渡し印刷する

AcrobatReaderのコマンドラインには印刷指定やプリンタ
指定などがあるのやりたいことはできると思います。
但し、サーバーが参加しているネットワーク上のプリンタ
のみが対象になりますが・・・

AcrobatReaderのコマンドラインについては
1.http://www.adobe.co.jp/partners/main.htmlへアクセス
2.「ASNディベロッパープログラム FAQ 」をクリック
3.文書番号3821の「Acrobat 6.0 SDK : Acrobat Developer FAQ 日本語版」をクリック
4.DeveloperFAQ.pdfを開く
5.一番下の「Windows 上のコマンドラインからAcrobat およびAdobe Reader を使用」を選択
で参照してください。

どうしてもクライアントで行いたい場合は
ActiveX等を作成する必要がありますが、証明書を
申請したりしないとセキュリティ上難しいので
お勧めできません。

お役に立てれば幸いです。

サーバー(IIS)側からプリンタに出力するのであれば
可能と思われます。
一番簡単なのはAcrobatReaderのコマンドラインを使用
する方法です。
イメージでいえば
1.クライアントから印刷指示
2.サーバー側でPDF作成
3.サーバー側でAcrobatReaderのコマンドラインに
  2.のPDFを渡し印刷する

AcrobatReaderのコマンドラインには印刷指定やプリンタ
指定などがあるのやりたいことはできると思います。
但し、サーバーが参加しているネットワーク上のプリンタ
のみが対象になりますが・・・
...続きを読む

Q配列をPOSTで受けとる

タイトルのまんまですが
配列をformで送って
それをPOSTで受け取りたいのですが
うまくいきません

具体的に言うと
<?php
print"<form method=POST action=action.php>";

for($i=0; $i<$n; $i++){
   print"<input type=text name=foo[$i]>";
}
print"<input type=hidden name=n value=$n>";
print"<input type=submit value=go>";
print"<form>";
?>


///////////以下action.php//////////////////
<?php
$n = $_POST["n"];
for($j=0; $j<$n; $j++){
   $foo[$j] = $_POST["foo[$j]"];
   print"$foo[$j]";
}
?>


こんな感じのことがしたいのですが
うまくいきません
どうもPOSTされてないみたいでfoo[$j]はnullです
凡ミスな気がしなくもないんですが...プログラム初心者なんで↓↓
教えてください
よろしくお願いします

タイトルのまんまですが
配列をformで送って
それをPOSTで受け取りたいのですが
うまくいきません

具体的に言うと
<?php
print"<form method=POST action=action.php>";

for($i=0; $i<$n; $i++){
   print"<input type=text name=foo[$i]>";
}
print"<input type=hidden name=n value=$n>";
print"<input type=submit value=go>";
print"<form>";
?>


///////////以下action.php//////////////////
<?php
$n = $_POST["n"];
for($j=0; $j<$n; $j++){
   $foo[$j] = $_POST["foo[$j...続きを読む

Aベストアンサー

atsuGTさんこんにちは。


受け取り側は

$foo = $_POST["foo"];

とするだけで$fooに送信された配列が格納されます。


$_POST["foo[添え字]"] ではなく、
$_POST["foo"][添え字] となります。

QonClickに複数の関数を挿入する方法

初心者なのですがアニメーションの関数anime1、anime2、anime3を作成し、onClickに下記のように設定しました。
クリックするとアニメーション2つの設定ではは動くのですが、3つ目を設定すると動かなくなります。
通常はこのような設定はしないものなのでしょうか?
教えてください。
よろしくお願いします。
<INPUT type="button" value="START" onClick="anime1(), anime2()">・・・OKです。
<INPUT type="button" value="START" onClick="anime1(), anime2(),anime3()">・・・動きません。

Aベストアンサー

セミコロンでつなぐのが常道ですが、3つ以上なら
別途function化したほうが、可読性が高くなると
思います。

QPDFファイルを開かずに印刷したい

幾つものPDFファイルを印刷したいのですが、
できればAdobeReaderを起動させずに印刷したいです。

ファイルのアイコン上で右クリック→印刷でも可能ですが、
数が多くなると、この作業も大変です。
そこでVisualBasic2008ExpressEditionを使って、
簡単なシステムを作りたいと考えています。

しかし、PDFを開かずに印刷する方法が、どうしてもわかりません。
ネット検索、教えてgoo内の検索でもヒットせず途方に暮れています。
参考になるホームページや書籍がありましたら教えてください。
「こんな手法があるよ」というものでも構いません。

宜しくお願いします。

Aベストアンサー

PDFを開く際にACRORD32.exeに対して以下のコマンドラインを指定してください。

ACRORD32.EXE /s /l /p /h [PDFのパス]

コマンドラインの解説は参照URLを。

参考URL:http://scripting.cocolog-nifty.com/blog/2007/07/adobe_reader_81_e41e.html

Qテーブル内の文字サイズを変更したい。

HTMLのテーブル内の文字サイズを変更したいのですが。
イマイチ上手くいかずに悩んでいます。
出来れば全体的に<TABLE></TABLE>のほうでいじれますか?
<TD>タグや<TR>タグのところでいじくるのですか?

Aベストアンサー

いろいろやり方はありますが
文字単位でサイズを変更するには
#2の方法ですね。

テーブルごとやセル(<TD>)ごとにサイズを変更するには
スタイルシート(CSS)を使用します。

テーブルごとにサイズを変更する場合
<TABLE style="font-size : 20px;">

セル(<TD>)ごとにサイズを変更する場合
<TD style="font-size : 20px;">あああ</TD>

#1の方法だとページ内の全てのセル(<TD>)に設定することになります。

スタイルシート(CSS)はこれら以外にも
いろいろな設定方法があります。

QEXCEL VBAで計算値を四捨五入、切り上げ、切捨てする方法

ネットで探してみたのですが、計算結果を四捨五入して特定のセルを
返すにはどうしたらいいのでしょうか?

Sub hokangosa()

Dim ZPS As Double
Dim ZPOS As Double
Dim DMN As Double
MsgBox (" >>> 補間誤差自動計算 <<< ")
MsgBox (" >>> 初期値入力します <<< ")
ZPS = InputBox(">>> ステップを入力してください<<<")
ZPOS = Sheet1.Cells(22, 4).Value
DMN = ZPOS / ZPS
Sheet1.Cells(23, 6).Value = DMN
End Sub

ここでDMNの値を四捨五入したいです。

またこれとは別に切上げ、切捨ても教えていただけるとありがたいです。

Aベストアンサー

DMN = Application.WorksheetFunction.Round(ZPOS / ZPS, 0)
で、四捨五入
DMN = Application.RoundDown(ZPOS / ZPS, 0)
で切り捨て
DMN = Application.RoundUp(ZPOS / ZPS, 0)
で切り上げです。

引数で、対象桁を変更できます。

QDBエラーの意味

フォームからDBにデータ挿入しようとすると

Column count doesn't match value count at row 1

というエラーが出てしまいます・・・どういう意味を持ったエラーなんでしょうか?

Aベストアンサー

カラム数と値の数が合わない、と言う事です。簡単な英語なので覚えましょう。
カラム数が4つにもかかわらず、
"INSERT INTO tablename VALUES (1,'hoge',3)"
とやった場合等に出るエラーだと思います。

QボタンをクリックでPHP文を実行

ボタンをクリックしたときのみPHP文を実行したいのですが・・・

<input type="button" onClink="<?php~?>">
でいけるかと思ったのですが、
ページ表示時に<?php~?>が実行されてしまい、うまくいきませんでした。

onClink="window.open(test.php)"
という方法以外でお願いします。

Aベストアンサー

AjaxはもともとJavaScriptの機能である非同期通信をつかったもので。Ajaxという言語があるわけではありません

Ajaxを利用するのであれば、JavaScriptのXMLHttpRequestを使って非同期通信できるような実装をしなくてはなりません
簡単にサンプルコードで書けるほど単純なものでもありません

一般的なサーバーサイドスクリプトの動作として、
ボタンを押す->サーバーへリクエストする->サーバーが処理する->クライアントに何かしらの結果を返す(出力する)です
つまり、PHP等のサーバーサイドスクリプトは、遷移させることが大前提で動作します

ですから、ボタンを押してその場でJavaScriptと同じようにPHPが動くなんてことはありえません。
ボタンを押したらサーバーにリクエストする という動作ならば可能です。

つまり
質問で言われているような
onClink="window.open(test.php)"

<form name="f1" action="test.php" method="post">
<input type="submit" name="submit" value="submit" />
</form>
等のような形になります

こういった一般的な方法だと いちいち画面が切り替わったようになってしまうのを嫌って Ajaxでコレと同じことを、画面を切り替えずに行っているだけに過ぎません

AjaxはもともとJavaScriptの機能である非同期通信をつかったもので。Ajaxという言語があるわけではありません

Ajaxを利用するのであれば、JavaScriptのXMLHttpRequestを使って非同期通信できるような実装をしなくてはなりません
簡単にサンプルコードで書けるほど単純なものでもありません

一般的なサーバーサイドスクリプトの動作として、
ボタンを押す->サーバーへリクエストする->サーバーが処理する->クライアントに何かしらの結果を返す(出力する)です
つまり、PHP等のサーバーサイドスクリプトは、...続きを読む

Qhtmlでのpdf資料のリンク方法

こちらの質問方法が悪かったようです。再度質問させてください。現在建築設計事務所を営んでおり、自社サイトを自分でHTMLを使って構築しているのですが、過去のデザイン物件のページの一部に「詳しい資料はこちら」といったテキスト画像を配置して、そこをクリックするとアクロバットが立ち上がり、作成した図面等が掲載されているPDFが表示されるようにしたいと考えています。その方法を教えてください。HTMLに記載するコード、特にPDFファイルとリンクするためのコード、PDFファイルを置くべき位置、その他注意事項があれば教えてください。よろしくお願いいたします。

Aベストアンサー

>「詳しい資料はこちら」といったテキスト画像
「ペイント」などを使ってこの画像(120px×25pxの大きさとして)
を作り「img01.gif」として「data」という名前のフォルダに格納した。
>作成した図面等が掲載されているPDF
(例えば「sample1.pdf」というファイル名として)これも
「data」というフォルダに格納したとします。
「data」フォルダはこのページのhtmlファイルを
格納しているフォルダと同じフォルダ内にあるとします。

>そこをクリックすると作成した図面等が掲載されている
>PDFが表示されるようにしたい
とのことなので

「img01.gif」という画像にハイパーリンクを設定することに
なりますので

<a href="./data/sample1.pdf"><img src="./data/img01.gif" alt="詳しい資料はこちらから(PDF版)" width="120" height="25"></a>

といった形でいいでしょう。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング