HMDT - Logic and Intuition -

HMDT Home

Coral

iCart

Download

Coral1.3.dmg

Mac OS X 10.3 またはそれ以降。Web Kit を利用している。Coral 1.1 以降では、Universal Binary 化されている。
フリーウェア。

CoralSrc1.3.zip

ソースコードのライセンス:BSD ライセンス。

News

  • Fecuruary 24, 2009 Coral 1.3 を公開。
  • June 2, 2007 Coral 1.2 を公開。
  • February 13, 2006 Coral 1.1 を公開。
  • April 4, 2005 Coral 1.0 を公開。

Coral(コーラル)は、Web Kitを利用した、コマンドラインの HTML 画像レンダラだ。Web ページの URL を指定して、JPEG や PNG や PDF で保存することができるんだ。

Web ページをブラウズするには、Web ブラウザを使えばいい。そのページの HTML ファイルをダウンロードするには、curl などのダウンローダが使える。では、Web ページを画像や PDF で残しておきたいときは?そんなときに、Coral を使おう。


[New]Coral 1.3 の新機能

Coral 1.3 には、フォーマットとしてwebarchive、またはWebArchiveを追加。Safariで使われている、Web Archive形式で保存できるようにした。Web Archiveで保存したファイルは、Safariやシイラで開く事ができる。

Web Archiveのサポートは、清野貴博さんから送ってもらったパッチをもとに作成した。ありがとうございました。

Coral 1.2 の新機能

Coral 1.2 では、-t/--timer オプションを追加。これを使うと、読み込みの後、指定した秒数が経過してから画像を保存する。Flash が含まれているページなどで活躍する。

あと、-d/--dialog で印刷ダイアログを表示したときに、背景の印刷の制御が効かないバグを修正。

Coral 1.1 の新機能

Coral 1.1 では、-d/--dialog オプションを追加した。このオプションを指定すると、プリントダイアログを表示して、印刷を行うことができる。コマンドラインから直接 Web ページを印刷するときに便利。

また、印刷をサポートしていないアプリケーションのためのヘルパーとしても利用できる。アプリケーションの書類を HTML として出力して、coral に -d オプションとともに出力すれば、印刷ダイアログを利用できる。

また、Coral 1.1 では Universal Binary になっている。

使い方

Coral は、コマンドラインから起動するユーティリティだ。Coral をダウンロードして解凍すると、coral というフォルダができあがる。ターミナルを起動して、その中に移動しよう。そうすると、bin フォルダの下に coral というファイルがある。これを使って Coral を起動するんだ。

画像として保存

まず、指定した URL を画像として保存するには、こうだ。

% ./coral www.apple.com

これで、Apple の Web ページを、画像として保存する。この場合、画像フォーマットはデフォルトの JPEG、ファイル名は、Web ページのタイトルを使って、'Apple.jpg' になる。

画像フォーマットの指定

画像フォーマットを指定するには、-f オプションを使うんだ。

% ./coral -f png www.apple.com

これで、PNG フォーマットで保存することになる。サポートしているフォーマットは、以下の通りだ。

  • JPEG
  • PNG
  • GIF
  • TIFF
  • PDF
  • Web Archive

PDF を指定すると、そのページすべての領域が保存される。それ以外のフォーマットだと、スクリーンサイズ、デフォルトでは 800 x 600、の領域だけだ。スクリーンサイズの変更の仕方は、後で説明しよう。

出力ファイル名の指定

出力ファイル名は、デフォルトだと Web ページのタイトルを使う。日本語でも、そのまま使ってしまっているぜ。出力ファイル名をを指定する場合は、-o オプションを使う。

% ./coral -o apple.jpg www.apple.com

ここで、出力ファイル名に拡張子をつけると、それが自動的に画像フォーマットとして使われるんだ。この場合、-f オプションを使ってフォーマットを指定する必要がなくなるわけだ。

レンダリングサイズの指定

HTML をレンダリングするときは、そのサイズをあらかじめ決めておかなくてはいけない。デフォルトでは 800 x 600 のサイズにしている。この大きさを変更したいときは、-s オプションを使う。

% ./coral -s 400 300 www.apple.com

出力画像サイズの指定

画像として保存するときに、画像サイズを縮小することもできます。サムネイルを作るときとかに便利だ。-S オプションを使おう。レンダリングサイズとの比率か、絶対値で指定する。

% ./coral -S 0.5 www.apple.com
% ./coral -S 200 100 www.apple.com

こんな感じで、Coral を使える。

オプション一覧

文法

coral [option] URL

オプション

-c/--compress
圧縮率を指定する。0.0から1.0の少数で指定する。JPG、PNG、TIFF フォーマットで適用される。デフォルトは 1.0。

-f/--format <format>
画像フォーマットを指定する。有効な値は、次の通り。

jpg、JPG、jpeg、JPEG、png、PNG、gif、GIF、tif、TIF、tiff、TIFF、pdf、PDF、webarchive、WebArchive

このオプションが指定されていない場合、JPEG フォーマットになる。

-h/--help
ヘルプを表示する。

-s/--screen <width height>
レンダリングするスクリーンのサイズを指定する。デフォルトは 800 x 600。

-S/--SIZE <ratio> | <width height>
出力する画像のサイズを指定する。もとの画像との比率で指定する場合は、0.0 から 1.0 の値を指定する。絶対値で指定する場合は、幅と高さを指定する。デフォルトは 1.0。PDF で保存するときは、無視される。

-d/--dialog
印刷ダイアログを表示する。

-v/--verbose
Web ページの読み込み状況を表示する。

-t/--timer <time>
読み込みが完了した後、画像を取得するまでの時間を指定する。単位は秒。

Coral の実体

Coral はコマンドラインから使えるようにしているけど、実体は Cocoa アプリケーションだ。ウィンドウを表示せず、Dock にも現れない、フェィスレスのアプリケーションということになる。

Tips:
フェイスレスにするには、Info.plist に NSUIElement の項目を加える。

Coral の起動に使っている coral ファイルは、シェルスクリプトだ。ここから、coral.app/Contents/MacOS にある、実行ファイルである coral を呼び出している。

Cocoa アプリケーションなんで、NSApplicationMain を呼び出して、Cocoa のランループを走らせている。Web Kit のレンダリングが、これがないと動かないんでね。だから、通常のコマンドラインとは違うところが多いので、注意してください。

back to top content

HMDT Products

HMDT Books

Programming Tips

Copyright © 2002-2006 HMDT. All rights reserved.