1

JavaプログラムでXboxゲーマーカードを表示しようとしています:ゲーマーカードは次のとおりです:http://gamercard.xbox.com/de-DE/anybody.card

現在、私は次のものを持っています:

import java.awt.Dimension;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;

import javax.swing.JEditorPane;
import javax.swing.text.html.HTMLEditorKit;

public class CardLoader extends JEditorPane {
    private static final long serialVersionUID = 1L;
    private static final String[] card = { "http://gamercard.xbox.com/de-DE/", ".card" };
    private static final String styleSheetLink = "http://gamercard.xbox.com/Content/Gamercard/default/gamercard.css";

    public CardLoader(String username) {
        HTMLEditorKit kit = new HTMLEditorKit();
        this.setEditable(false);
        this.setPreferredSize(new Dimension(200, 135));

        kit.getStyleSheet().addRule(URLCaS(styleSheetLink));
        this.setEditorKit(kit);

        try {
            this.setPage(card[0] +username +card[1]);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    String URLCaS(String url){
        InputStream in = null;
        String returner = new String();
        try {
            in = new URL(url).openStream();
            InputStreamReader inR = new InputStreamReader( in );
            BufferedReader buf = new BufferedReader( inR );
            String line;

            while ( ( line = buf.readLine() ) != null ) {
                returner += line + "\n";
            }

            in.close();
        } catch (Exception e){
            e.printStackTrace();
        }
        return returner.substring(3);
    }
}

スタイルシートを適用できるようですが、正しくはありません。

誰かが私を助けてくれることを願っています。

4

1 に答える 1

0

Html を Swing にレンダリングできるFlying-Saucerを見てみましょう。

Flying Saucer は XML またはXHTMLを受け取り、 Swingまたは SWTを使用して PDF (iText 経由)、画像、および画面上にレンダリングするために、CSS 2.1 準拠のスタイルシートを適用します。

ここにはいくつかのスクリーンショットがあります: https://code.google.com/p/flying-saucer/wiki/Screenshots

于 2013-02-10T18:54:48.647 に答える