0

我们正在使用 Apache Royale 进行迁移项目,该项目包含大量包含 JPG 和 PNG 图像的 SWC 文件。

我们一直在尝试直接从库中使用它们,但没有任何成功。如果我们将文件直接复制到源文件夹,它就可以工作。但是我们需要能够引用和使用库中的图像。

文件夹结构如下所示

在此处输入图像描述

ascongig.json 看起来像这样

{
    "compilerOptions": {
        "source-map": true,
        "targets": [
            "JSRoyale"
        ],
        "js-external-library-path": [
            "${royalelib}/js/libs/MXRoyaleJS.swc",
            "${royalelib}/js/libs/JewelJS.swc"
        ],
        "js-library-path": [
            "libs/images.swc"
        ]
    },
    "files": [
        "src/HelloRoyale.mxml"
    ]
}

HelloWorld.mxml 看起来像这样

<?xml version="1.0" encoding="utf-8"?>
<j:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                xmlns:j="library://ns.apache.org/royale/jewel"
                applicationComplete="init()">
    <fx:Script>
        <![CDATA[
            internal var iconAgenda:String = "images/visualizar_agenda.png";
            internal var iconAgenda2:String = "images2/visualizar_agenda.png";
            public function init():void{
                imagem.src = iconAgenda;
                imagem2.src = iconAgenda2;
            }
        ]]>
    </fx:Script>

    <j:initialView>
        <j:View>
            <j:beads>
                <j:VerticalLayout />
            </j:beads>
            <j:Label text="From Library" />
            <j:Image id="imagem"/>
            <j:Image src="images/afericao.png"/>
            <j:Label text="From Sources Folder"/>
            <j:Image id="imagem2"/>
            <j:Image src="images2/afericao.png"/>
        </j:View>
    </j:initialView>
</j:Application>

这导致了这个

在此处输入图像描述

我们在 Apache Royal 0.9.8 中使用 VS Code。

4

1 回答 1

0

对不起。我现在才发现这个问题。

添加到 asconfig.json 文件中:

    "copySourcePathAssets": true,

像这样:

{
"compilerOptions": {
    "source-map": true,
    "targets": [
        "JSRoyale"
    ],
    "js-external-library-path": [
        "${royalelib}/js/libs/MXRoyaleJS.swc",
        "${royalelib}/js/libs/JewelJS.swc"
    ],
    "js-library-path": [
        "libs/images.swc"
    ]
},
"copySourcePathAssets": true,
"files": [
    "src/HelloRoyale.mxml"
]

}

于 2021-11-25T10:52:23.263 回答