** cssj.inc.php [#dca98407] |RIGHT:100|LEFT:360|c |~サマリ|高品質印刷用PDF出力プラグイン| |~リビジョン|1.3.2| |~対応バージョン|1.4.7| |~投稿者|[[miyabe]]| |~投稿日|&new{2005-07-24 (日) 03:56:52};| #contents ** 概要 [#i531ce60] #ref(copper-pdf.gif) [[Copper PDF:http://copper-pdf.com/]]を用いてPDFを出力できるようにするプラグインです。 *** 動作環境 [#o515ebb2] [[Copper PDF 2.0.0:http://copper-pdf.com/?cat=11]]以降またはCSSJ Server 1.2.0以降が必要です。 Copper PDF(またはCSSJ)を動かすためには、[[JavaVM(J2SE 1.4.1以降)>http://java.sun.com/j2se/1.4.2/ja/download.html]]が必要です。 *** 主な機能 [#p0b2fbba] - 任意のページをPDF化します。 - 複数のページをまとめて完全なドキュメントを作ります。 - スタイルシートを切り替えて、1つの文書を別のスタイルで出力します。 以下の機能を利用するにはCopper PDFの製品ライセンスの購入が必要です。 - 用紙サイズをA4縦かA4横か選択できます。 - PDFにファイルを添付します。 - 暗号化PDFを生成します。 ** ダウンロード [#a957464c] [[こちらのページ:http://sourceforge.jp/projects/copper/releases/?package_id=8746]] からcssj-pukiwikiの最新のリリースをダウンロードしてください。 ** 基本的な導入方法 [#pacd83b5] アーカイブ内にはEUC-JP用のプラグインとUTF-8用のプラグインがそれぞれ別のディレクトリ(euc_jp, utf8))に格納されています。使用するPukiWikiのエンコーディングに合わせて選択してください。 各ディレクトリ内のpluginディレクトリとskinディレクトリを、PukiWikiの同名のディレクトリにそのまま上書きしてください。 次に、skin/cssj/global.inc.phpをテキストエディタで開き、$host, $port, $user, $passwordの値をCopper PDFに接続できるように設定してください。 ** プラグインの設定 [#f0ac7bd1] さらに詳細な設定をする場合は、以下のファイルを編集してください。 :skin/cssj/print-skin|PDF出力のためのスタイルシートが格納されたディレクトリ。 :skin/cssj/global.ini.php|Copper PDFの接続設定、入出力オプション、利用可能なスタイルシート、その他の設定(詳細はファイル中のコメント参照)。 スタイルシートは、print-skinディレクトリ内に .css という拡張子で配置してください。 Copper PDFの入出力オプション等は[[Copper PDFのドキュメント>http://copper-pdf.com/?cat=5]]を参照してください。 CSSによるスタイル付けはW3Cの[[CSS 2.1>http://www.w3.org/TR/CSS21/]]に従います。 印刷に関するものは[[Paged media>http://www.w3.org/TR/CSS21/page.html]]の章で解説されています。 また、CSS2の[[邦訳>http://www.y-adagio.com/public/standards/tr_css2/toc.html]]と CSS2.1での[[変更点>http://www.d-toybox.com/spec/CSS2.1/appendixC/]]が公開されています。 ** URL指定でのプラグインの呼び出し [#g14af341] URL指定でのプラグインで使用できるパラメータの概要は次のとおりです。 |~パラメータ名|~説明|~必須| |plugin|必ず cssj としてください。|○| |title|文書タイトル| | |author|文書作者| | |pages|PDF化するページ名。複数の場合はカンマ区切り。|○| |style|使用するスタイルシート名。| | |attachments|添付ファイル('use'=使用, 'attach'=PDFに添付)| | また、Copper PDFの[[入出力プロパティ:http://dl.cssj.jp/docs/copper/contents/5100_io-properties.html]]を使用できます。ただし、プロパティ名中のピリオド'.'はカンマ','に置き換えて使用してください。 *** 1つまたは複数のページのPDF化 [#s48fee06] ''?plugin=cssj&title=タイトル&pages=ページ名1,ページ名2,ページ名3..''という文字列をURLの後につけてPukiWikiにアクセスすることで、1つまたは複数のページをまとめて指定されたタイトルのPDFに変換することができます。タイトルを省略した場合は、最初のページの名前が使われます。 例えば、http://localhost/pukiwiki.php?FrontPageのPDF出力が欲しい場合は、http://localhost/pukiwiki.php?plugin=cssj&pages=FrontPageへアクセスしてください。 *** スタイルシートの切り替え [#q800c0b8] スタイルシートは style パラメータで切り替えることができます。スタイルシート名は、print-skinディレクトリ内のCSSファイルから、拡張子(.css)を省略したものです。 *** ファイルの添付 [#ae9f1d8f] global.ini.phpの設定で$attachmentsが'attach'に設定されている場合は、ページに添付されたファイルがPDFにも自動的に添付されます。ファイルを添付したくない場合は、$attachmentsを'use'にしておいてください。また、attachmentsパラメータでも設定を上書きすることができます。 *** 入出力プロパティの設定 [#sa08b41a] Copper PDFの[[入出力プロパティ:http://dl.cssj.jp/docs/copper/contents/5100_io-properties.html]]はglobal.ini.phpで設定できますが、パラメータにより上書きすることもできます。ただし、パラメータではプロパティ名の'.'を','に置き換えてください。 例えば、トンボを表示する場合は output,marks=both というパラメータを付加してください。 ** 「このページのPDF」メニュー [#ma1386a3] 「このページのPDF」メニューは、現在表示されているページを手軽にPDF化する機能です。 #ref(pdf-skin.png) *** Copper PDFスキン [#qf2d8e44] Copper PDFスキンを有効にすることで、「このページのPDF」メニューが表示されます。PukiWikiの設定ファイル(pukiwiki.ini.php)の、SKIN_DIR定数を'skin/cssj/'に設定することでCopper PDFスキンを有効にすることができます。 *** 「このページのPDF」メニューだけ使用する場合 [#t8318f5f] お使いのスキン(pukiwiki.skin.phpファイル)の「このページのPDF」メニューを表示させたい場所に、以下のコードを記述してください。 <?php include('skin/cssj/pdfmenu.php'); ?> ** ページ内でのプラグインの呼び出し [#k46bb0db] PDFへのリンクはインラインプラグインを利用して作ることもできます。以下の書式で記述してください。 ''&cssj''''(title,page1,page2,page3...){content};'' titleはPDFのタイトルで、page1,page2,page3...は変換対象のページ名です。 ページ名を省略すると、インラインプラグインが記述されたページ自身が対象となります。 contentはリンクに表示される文字列です。省略すると、タイトルが使われます。 生成されるリンクの横には、PDFアイコンが表示され、Copper PDFスキンの「このページのPDF」と同じ機能が利用できます。 ** プラグインの動作についての注意点 [#z8ea14f1] バージョン1.2.1まであった、出力したPDFをキャッシュする機能は廃止しました。Copper PDFはキャッシュがなくても十分な速度でPDFを出力します。 他のページの画像を参照している場合(例えばページAに添付された画像ファイルを、ページB上に表示する場合)、Copper PDFはHTTPでPukiWikiが動作しているウェブサーバーにアクセスして画像を取得しようとします。そのため、ファイヤーウォールやDNSの名前解決の問題により、ネットワーク環境によって画像などが表示できない可能性があります。 ページに直接添付されている画像ファイル(例えばページAに添付された画像ファイルを、ページA上に表示する場合)は、ドライバによってCopper PDFに直接送られるため上記のような問題は発生しません。 ** ライセンス [#gb1b3d21] Apache License Version 2.0 です。 詳細はパッケージに含まれる文書(README.txt)を参照してください。 バグ報告、要望などはSourceForgeプロジェクトページまでお願いいたします。 http://sourceforge.jp/projects/copper/ ©2005-2009 GNN & Co.,Ltd. ** 動作デモ [#vbbe99f2] [[こちらでデモサーバーを動かしています:http://demo.zama.gnn.co.jp/copper/pukiwiki/index.php?SandBox]] 毎日リセットされますので、遠慮なく編集してみてください。 ---- - cssj.cssの中で、ie5を非表示にしてしまっているので、表組がPDFになりません。 -- [[ XD]] &new{2006-07-13 (木) 20:50:20}; - php -- &new{2008-02-08 (金) 20:29:10}; - 票組みが表示されない問題を解消しました。 -- [[miyabe]] &new{2008-10-23 (木) 16:43:41}; - いいですね~ :) -- [[teanan]] &new{2008-10-23 (木) 18:38:24}; - GPL互換(?)のApache License 2.0を適用しました。また、Copper PDF本体も個人的な利用については近いうちに制約を緩和します。 -- [[miyabe]] &new{2009-01-03 (土) 19:54:03}; - とても便利で助かります^-^ -- [[ぴあっと]] &new{2009-01-07 (水) 22:48:49}; - 予告どおり個人用無料キー発行いたします。機能に制限はありますが、「すかし」は出なくなります。http://copper-pdf.com/?p=155 -- [[miyabe]] &new{2009-01-09 (金) 19:21:58}; - 有難うございました。難しそうですがやってみます。 -- [[matsu]] &new{2009-11-07 (土) 18:06:44}; #comment