0

manfiest から画像をロードしようとする create js を使用して html5 クリエイティブをビルドしています。インライン html をビルドするために、画像パスをエンコードされた画像に置き換えることはできますか

既存のコード:

manifest: [
    {src:"images/test_logo.png", id:"test_logo"},
    {src:"images/tg.png", id:"tg"},
    {src:"images/tq_logo.png", id:"tq_logo"},
    {src:"images/tq_1.png", id:"tq_1"},
    {src:"images/tq2_2.png", id:"tq2_2"}
]
loader.loadManifest(lib.properties.manifest);

test_logo.png をエンコード文字列に置き換えようとしましdata:image/png;base64,iVBORw0KGgoAAAANSUhEたが、XMLHttpRequest がファイルを読み込めないためエラーが発生しましたクロスオリジン要求は、http、data、chrome、chrome-extension、https、chrome-extension-resource のプロトコル スキームでのみサポートされています。

これを乗り越える方法があれば教えてください。

ありがとう。

4

3 に答える 3

0

エンコードされた文字列にエラーがある可能性があります。

以下の方法で画像エンコード文字列を取得できます。

クローム & オペラ:

  1. 画像を含むページを読み込み (画像を直接読み込むことはできません)、それを右クリックします。[要素の検査] を選択します。

ここに画像の説明を入力

  1. コンソールが表示されます。src 属性の値をクリックします。

ここに画像の説明を入力

  1. コンソールが [リソース] タブに切り替わり、画像が強調表示されます。それを右クリックして、[画像をデータ URL としてコピー] を選択します。

ここに画像の説明を入力

詳細については、https ://www.abeautifulsite.net/convert-an-image-to-a-data-uri-with-your-browser をご覧ください。

または、マニフェストに許可を含めたい

https://developer.chrome.com/extensions/declare_permissions

于 2016-11-04T12:03:35.870 に答える
0

PreloadJS はエンコードされた画像をサポートせず、画像パスのみをサポートします。

データがある場合、プリロードする必要はないため、サポートは考慮されませんでした。これのユースケースは何ですか?完全なデータが既にあるのに、なぜそれをプリロードする必要があるのでしょうか?

于 2016-11-04T15:41:59.763 に答える