KDE 3.0 アーキテクチャ/開発フレームワーク/複雑なウィジット/HTMLレンダラ - 旧 Wiki アーカイブ

!

このページは10年以上前の非常に古いものであり、歴史的資料保存を目的として維持しています。
現在の状況とは大きく異なる場合がありますので、原則として参考にはしないで下さい。

KDE 3.0 アーキテクチャ

オリジナル : http://developer.kde.org/documentation/library/kdeqt/kde3arch/khtml/index.html *1

※古すぎるのであまり参考にはならないかと思われます。


KHTML - KDE's HTML library

概観

KHTMLはDOM,Java,JavaScript?,Cascading Style Sheets(CSS)に対応したXML/HTML4準拠のHTMLライブラリです。

現在のKHTMLができることについての概観をここで得られます。

Small example

KHTMLをプログラム中で使うのは非常に簡単です。
下の例はすでにwebブラウズが可能なアプリケーションを示しています。

#コード例が古かったのでコチラを見て下さい。

この例はすでにwebにアクセスできる機能的なブラウザを示しています。(リモートファイルにアクセスするためのkio_httpが必要ですが)
testkhtmlでhttp://kde.orgを試して見て下さい。ウィジットにはKDEのホームページが表示されるでしょう。

Document Object Model (DOM)

KHTMLはほとんど完璧なDom Level1, Level2の実装を提供しています。

DOMは文書のデータを保持するために使われる内部的なクラスです。
DOMにアクセスするクラスはデータ保持の為にrefcounting schemeを用います。
よってDOMはメモリ管理を行ないます。
使う方は、文書のパーツにアクセスするためには、DOM header fileに定義されているクラスを使用するだけでよいのです。
ポインタを使わない限り、メモリリークが起きることはないでしょう。(ライブラリのバグを覗いてはね。。。;-)

表示されている文書には KHTMLWidget::document() 関数を用いて文書のどの部分にでも簡単にアクセスできます。

Java

有難い事にRichard Mooreによって、KHTMLはJava appletを表示できるようになりました。
Javaは標準では有効になっていませんが、メソッドを使って有効にできます。
CLASSPATHは以下のように設定して下さい。

CLASSPATH=$KDEDIR/share/apps/kjava/kjava-classes.zip:$JDK_DIR/lib

JDKをインストールすることが必要です。JDK-1.1.7では試しましたが、Kaffeや他のバージョンのJDKで動くかはわかりません。

JavaScript? (ECMA-Script)

JavaScript?サポートはECMAScript Language specification ECMA-262 3rd edition準拠です。
これはJavaScript1.5相当です。

Cascading Style Sheets (CSS)

Cascading style sheets 2.1 はほとんどサポートされています。

Counter: 24, today: 1, yesterday: 0