質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Flutter

Flutterは、iOSとAndroidのアプリを同じコードで開発するためのフレームワークです。オープンソースで開発言語はDart。双方のプラットフォームにおける高度な実行パフォーマンスと開発効率を提供することを目的としています。

Dart

Dartは、Googleによって開発されたJavaScriptの代替となることを目的に作られた、ウェブ向けのプログラミング言語である。

Q&A

1回答

2691閲覧

【Flutter】オリジナルの画像をアイコンとして使用したい

smilax

総合スコア23

Flutter

Flutterは、iOSとAndroidのアプリを同じコードで開発するためのフレームワークです。オープンソースで開発言語はDart。双方のプラットフォームにおける高度な実行パフォーマンスと開発効率を提供することを目的としています。

Dart

Dartは、Googleによって開発されたJavaScriptの代替となることを目的に作られた、ウェブ向けのプログラミング言語である。

0グッド

0クリップ

投稿2020/09/30 03:14

編集2020/10/02 01:11

BottomNavigationBarに設定するアイコンに自前の画像を使用したいと思い
下記の記事を参考にやってみました。
参考記事

うまく表示がされせん。
icon generatorで

If image looks not as expected please convert to compound path manually.

とでるので、これが原因かもしれません。
しかし、変換はできていて、tffファイルもみた感じ問題なさそうでした。
![イイメージ説明(68ba0c0379f60f20215c39abe08e2979.png)

/// Flutter icons SettingIcon /// Copyright (C) 2020 by original authors @ fluttericon.com, fontello.com /// This font was generated by FlutterIcon.com, which is derived from Fontello. /// /// To use this font, place it in your fonts/ directory and include the /// following in your pubspec.yaml /// /// flutter: /// fonts: /// - family: SettingIcon /// fonts: /// - asset: fonts/SettingIcon.ttf /// /// /// * Linearicons Free, Copyright (C) Linearicons.com /// Author: Perxis /// License: CC BY-SA 4.0 (https://creativecommons.org/licenses/by-sa/4.0/) /// Homepage: https://linearicons.com /// import 'package:flutter/widgets.dart'; class SettingIcon { SettingIcon._(); static const _kFontFam = 'SettingIcon'; static const _kFontPkg = null; static const IconData setting_icon = IconData(0xe810, fontFamily: _kFontFam, fontPackage: _kFontPkg); }
fonts: - family: Schyler fonts: # # - asset: fonts/Schyler-Regular.ttf # # - asset: fonts/Schyler-Italic.ttf - asset: fonts/present.ttf - asset: fonts/setting.ttf # style: italic # - family: Trajan Pro # fonts:

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

変換前のSVGファイルをメモ帳などのテキストエディタで開いて、中身を確認してみて下さい。

もし、

  • <path>属性が複数ある
  • fillが設定されている

などの場合、それが原因の可能性が高いです。例えば以下のような感じです。

<svg xmlns="" viewBox=""> <path fill="blue" d="xxxxxxxxxxxxxxxxxxxxxxxxx"/> <path fill="red" d="xxxxxxxxxxxxxxxxxxxxxxxxx"/> <path fill="yellow" d="xxxxxxxxxxxxxxxxxxxxxxxxx"/> </svg>

この場合、Adobe Illustratorなどのベクター編集ソフトを使って、
以下のような、fill無し+複合パスの状態にする必要があると思います。

<svg xmlns="" viewBox=""> <path d="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"/> </svg>

参考:


追記 :

一応手元で試してみたところ、質問と同じエラーメッセージが出ていても、変換は成功しているケースが結構ありました。
なので、上記の回答は、表示崩れが起きた場合のみ参考にして下さい。

今回のように、「?」が表示されるのは、ttfファイルの配置や、pubspec.yamlの記述が間違っていると思うので、参考にしたというサイトを元に、もう一度確認し直してみて下さい。

もし直らない場合は、質問にttfファイルの配置場所とpubspec.yamlの中身などを追記して下さい。

投稿2020/09/30 10:25

編集2020/09/30 14:36
nskhei

総合スコア704

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

smilax

2020/10/02 01:11 編集

変換には成功してると思うのですが、やはり読み込んでくれません。 コードを追加しました tffファイルはルート直下のfont/に配置しています
satokei

2020/10/02 03:57

fonts/ ではないでしょうか?
smilax

2020/10/02 04:02

すみません、誤字です。fonts/に配置しています
nskhei

2020/10/02 04:17

- family: Schyler の部分を - family: SettingIcon に変えると、どうなりますか?
smilax

2020/10/02 05:44

特に変わりはないです
nskhei

2020/10/02 05:53

その状態で、 - asset: fonts/present.ttf の部分をコメントアウトしてみてもダメでしょうか? あと、この辺も試してみて下さい。 ・ttfファイル名がsetting.ttfで間違いないことを確認 ・flutter clean を実行してみる
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問