3

実際には空で、まだ要素がない SVG ファイルがあります。要素を追加して、Java コードで操作します。SVG ファイルがスクロールペインに挿入されます。問題は、SVG ファイルが実際には空であり、スクロールペインを既に透明に設定していても透明にならないことです。

これがSVGファイルです(クライアントから入手しました):

<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
<svg version="1.1"
 baseProfile="full"
 xmlns="http://www.w3.org/2000/svg"
 xmlns:xlink="http://www.w3.org/1999/xlink"
 xmlns:ev="http://www.w3.org/2001/xml-events">
 id="chart"
 width="1366px" height="768px" viewBox="0 0 1366 768" >
<defs>
   <!-- some template here -->
</defs>
</svg>

これがスクロール ペインの部分です (canvasDiagram は SVGCanvas です)。

// the instantiation part
canvasDiagram.setDocumentState(JSVGCanvas.ALWAYS_DYNAMIC);
canvasDiagram.setURI(getClass().getResource("path to svg file").toString());
scrollPane = new JScrollPane(canvasDiagram){
        {
            setOpaque(false);
            getViewport().setOpaque(false);
        }
    };

スクロールペインは透明ではなく白です。透明なjPanelとその作業でスクロールペインのコンテンツを挿入しようとしたので、canvasDiagramのために白いコンテンツを信じています。canvasDiagram の空の部分を本当に透明にするのを手伝ってくれませんか?

4

1 に答える 1

1

アルファ値で背景を設定すると、設定よりも信頼性が高くなることがわかりましたisOpaque(false)

setBackground(new Color(0,0,0,0));
于 2012-06-02T18:54:06.220 に答える