ひよっこ。

I want to…

Posts Tagged ‘PDF’

Tracの任意のWikiページをPDF出力するスクリプトを作ったよ(暫定版)

Posted by hikaruworld : 2010 1月 7

TracのPDF出力する方法は、以前の記事でも述べたようにいくつかあります。
が、その中で唯一日本語に対応しているTracWikiExportプラグインは、
残念な事にテーブル内に日本語構成が含まれていた場合にテーブル構造が崩れたり、

{{{#!html}}}

を正しく解釈できないという微妙な問題を含んでいます。

それで困っていたので、簡単にJavaのPDF出力ライブラリのiText5を利用して作ってみました。
サラッと作っただけでまだバグバグですが、コアとなるJavaの部分だけ晒しておきます。
launchpad.netにあげているので、ここからダウンロードできます。
目標としてはAdobeAirを利用したプレビュー機能&ダウンロード機能をつけたいですね。

ちなみに、プラグインとして作らずにAPIを利用して別アプリとして作ったのは、
PDF出力する状況を考えるとTrac上にプラグインとして存在する必要もないかなと思ったので。
むしろ、管理者レベルがある特定のタイミング(納期や外部との打ち合わせ)で利用するだけかなと。

使い方

実行可能jar形式なのでjava -jar で実行してください。
その際引数に、TracのXML-RPCプラグインのURL(認証には未対応),出力先,対象Wikiページ,の指定が必要になります。
以下サンプルです。

java -jar TracPDFConvertor.jar http://localhost:8080/trac/sample/xmlrpc /Output TracGuide,WikiFormatting,Hoge/HelloWorld,Piyo/*

いくつか補足します。
第一引数ではxmlrpcで接続先を指定するのでxmlrpcプラグインが必須です。
ただし、現状では認証に対応していませんので注意してください。

第三引数は、出力したいWikiページをカンマ区切りで指定します。
その際、サブディレクトリ構造を持つWikiページはそのまま指定してください(Hoge/HelloWorld)。
任意のサブディレクトリ構造以下を指定したい場合は*指定が使えます。上記のサンプル(Piyo/*)ではPiyo以下のすべてのWikiページを出力します。

出力結果は以下の通りです。

/Output/TracGuide.pdf
/Output/WikiFormatting.pdf
/Output/Hoge/HelloWorld.pdf
/Output/Piyo/1.pdf
/Output/Piyo/2.pdf

Wikiページ名+.pdfファイル名で出力が行われます。
また、サブディレクトリ指定の場合はサブディレクトリ単位でディレクトリが生成されます。

WikiFormattingの出力結果のファイルを添付しておきます。

TODO

  • AdobeAirのアプリケーションでラップする(JWSとかじゃないのは単なる趣味)
  • Wordへの出力
  • 出力形式の整形
  • Imageなどでリンク先のファイルが存在しない場合にIOExceptionで落ちる
  • スタイルシート及びフォントの設定などをプロパティから読み込めるようにする
  • 接続先Tracのスタイルシート設定の解析

ソースコードはここにあります。

xmlrpcclientで通信して、対象ページのHTMLを取得した後、iTextで書き出しているだけです。
また、外部ライブラリとして、iText5及びApacheXmlRpc、日本語フォントとしてIPAモナーフォントを利用しています。感謝。

以上です。

広告

Posted in program | タグ: , , , , | Leave a Comment »

AdobeDigitalEditionsをインストール中にresolving hostnameでエラーになる

Posted by hikaruworld : 2009 2月 26

AdobeDigitalEditionsというソフトがある。
俗に言うAdobeReaderの多機能版(限定機能版?どちらかわからんが)のようなものである。

基本的に、PDFを読むときは「読み物」として読むケースが多い。
ので、個人的には昔からこれを愛用しているのだが、
最近再インストールしようとしたらなぜかダウンロードに失敗してしまいインストールできなかった。

実際は、以下のようなエラーで落ちる
———————————————————————-
出力先フォルダ:C:\Program Files\Adobe\Adobe Digital Editions
digitaleditions_win.zip を C:\DOCUME~1\hoge\LOCALS~1\Temp にダウンロードする
ダウンロードが失敗しました : resolving hostname
———————————————————————-

しばらくAdobeReaderで我慢していたが、やっぱりDigitalEditionsが良くて何とかならないものか
調べていると、2009/2/2付けでAdobeのサポートに以下のようなSUPPORTがUPされていた。

Adobe Digital Editions installation fails in some proxy server networks

とりあえず、Adobe側も問題として認識はしてくれているようだ。
んで、解決策は?と思い、SOLUTIONを読んでみる。

Adobe is considering possible solutions for future releases of Adobe Digital Editions.

To work around this installation issue, download the standalone installer for Digital Editions from “Adobe Digital Editions does not install on Windows or Mac OS” (TechNote kb403051)

要するに、standalone installerを使えってことね(笑。
以下のURLの手順に従って、手動でexeファイルをダウンロードして、インストール完了。
http://kb.adobe.com/selfservice/viewContent.do?externalId=kb403051&sliceId=1

どうでもいいが、なぜイチイチFlashのインターフェイス経由で落とさせているのか
ちょっと疑問に残った今日この頃である。

Posted in item | タグ: , , , | Leave a Comment »