以下のSVGをAndroid StudioのVector Asset Studioで開くことができず、エラーが発生します。
「プレビュー画像が空です!TareSymbol.svgの解析中の例外:入力文字列の場合:「8.7337904mm」XMLファイルの解析中に例外が発生しました:ファイルの終了が早すぎます。」
次のSVGファイルがVector Asset Studioと互換性がないのはなぜですか?
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
version="1.1"
id="svg20235"
viewBox="0 0 61.500162 30.946501"
height="8.7337904mm"
width="17.356712mm">
<defs
id="defs20237" />
<metadata
id="metadata20240">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
transform="translate(-109.24987,-351.17467)"
id="layer1">
<path
d="m 145.03542,367.34167 10.897,-4.49325 -0.009,3.30587 13.69124,0.0372 1.13537,0 0,2.1285 -1.13537,0 -13.69662,-0.0373 -0.009,3.33988 -10.87325,-4.281 z m -13.38814,-13.15875 0,-3.00825 16.97389,0 0,3.00825 -6.8995,0 0,27.93825 -3.15214,0 0,-27.93825 -6.92225,0 z m 3.31725,13.15875 -10.897,4.49325 0.009,-3.3055 -13.69129,-0.0373 -1.13537,0 0,-2.1285 1.13537,0 13.69662,0.0372 0.009,-3.33988 10.87325,4.28063 z"
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none"
id="path20212" />
</g>
</svg>
Inkscapeで生成された.svgファイルをAdobe Illustratorにインポートしてエクスポートすると、この問題は100%修正されました。
Android Studio Vector Asset Studioは現在、SVGのすべての機能をサポートしていません。この tool を使用して、SVGをVectorDrawableに変換できます。
それが役に立てば幸い。
代わりにmm
を使用するには、svgの幅と高さをpx
から変更する必要があります。これは、問題が修正されるまで保留中の現在の回避策です。
バグ報告は既に提出されています こちら
数時間を費やした後、私は問題を理解し、外部のsvg2vectordrawableスクリプトを使用しても解決できませんでした。
図形のサイズおよび/またはドキュメントのページサイズには、幅/高さに14.134や3.5などの浮動小数点数を含めることはできません
形状とページの幅と高さはintegers!でなければなりません
Vector Asset
ツールを使用してSVGをインポートしようとしたときに機能したもののコンパイル(これらは相互に排他的ではありません):
mm
からpx
に変更します(通常はwidth
/height
属性にあります)width
/height
またはviewBox
またはstyle
属性にあります)。 224.5
が好きです。これはポリゴンで行う必要はありませんが、SVGノードでのみ行う必要があります。このようなエラーを引き起こす可能性のあるさまざまなオプションがあります(そのうちのいくつかはここにリストされています)。
原因は、.svgファイルでrgba(r,g,b,a)
を使用している可能性があります。見つかったら変換してください。
ヒント:任意のファイルエディターで.svgファイルを編集できます。
設定で言語を変更すると助けになりました!コンピューターの言語としてオランダ語を使用し(浮動小数点の代わりにコンマが使用されている)、英語に変更して再起動するとうまくいきました。
テキストをオブジェクトに変更すると、この問題は修正されました。 Inkscapeを使用している場合:最初のクリック Ctrl+K (パス結合)その後 Ctrl+J (動的オフセット)。