diff --git a/.vscode/launch.json b/.vscode/launch.json
new file mode 100644
index 0000000..a6dcb34
--- /dev/null
+++ b/.vscode/launch.json
@@ -0,0 +1,46 @@
+{
+ // Use IntelliSense to learn about possible attributes.
+ // Hover to view descriptions of existing attributes.
+ // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
+ "version": "0.2.0",
+ "configurations": [
+
+ {
+ "name": "yx_icon_fonts_flutter",
+ "request": "launch",
+ "type": "dart"
+ },
+ {
+ "name": "yx_icon_fonts_flutter (profile mode)",
+ "request": "launch",
+ "type": "dart",
+ "flutterMode": "profile"
+ },
+ {
+ "name": "yx_icon_fonts_flutter (release mode)",
+ "request": "launch",
+ "type": "dart",
+ "flutterMode": "release"
+ },
+ {
+ "name": "example",
+ "cwd": "example",
+ "request": "launch",
+ "type": "dart"
+ },
+ {
+ "name": "example (profile mode)",
+ "cwd": "example",
+ "request": "launch",
+ "type": "dart",
+ "flutterMode": "profile"
+ },
+ {
+ "name": "example (release mode)",
+ "cwd": "example",
+ "request": "launch",
+ "type": "dart",
+ "flutterMode": "release"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/example/.metadata b/example/.metadata
index cca80bc..2b7c01b 100644
--- a/example/.metadata
+++ b/example/.metadata
@@ -4,7 +4,7 @@
# This file should be version controlled and should not be manually edited.
version:
- revision: "8defaa71a77c16e8547abdbfad2053ce3a6e2d5b"
+ revision: "be698c48a6750c8cb8e61c740ca9991bb947aba2"
channel: "stable"
project_type: app
@@ -13,11 +13,11 @@ project_type: app
migration:
platforms:
- platform: root
- create_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b
- base_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b
- - platform: ios
- create_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b
- base_revision: 8defaa71a77c16e8547abdbfad2053ce3a6e2d5b
+ create_revision: be698c48a6750c8cb8e61c740ca9991bb947aba2
+ base_revision: be698c48a6750c8cb8e61c740ca9991bb947aba2
+ - platform: android
+ create_revision: be698c48a6750c8cb8e61c740ca9991bb947aba2
+ base_revision: be698c48a6750c8cb8e61c740ca9991bb947aba2
# User provided section
diff --git a/example/android/.gitignore b/example/android/.gitignore
new file mode 100644
index 0000000..be3943c
--- /dev/null
+++ b/example/android/.gitignore
@@ -0,0 +1,14 @@
+gradle-wrapper.jar
+/.gradle
+/captures/
+/gradlew
+/gradlew.bat
+/local.properties
+GeneratedPluginRegistrant.java
+.cxx/
+
+# Remember to never publicly share your keystore.
+# See https://flutter.dev/to/reference-keystore
+key.properties
+**/*.keystore
+**/*.jks
diff --git a/example/android/app/build.gradle.kts b/example/android/app/build.gradle.kts
new file mode 100644
index 0000000..d3682ce
--- /dev/null
+++ b/example/android/app/build.gradle.kts
@@ -0,0 +1,44 @@
+plugins {
+ id("com.android.application")
+ id("kotlin-android")
+ // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
+ id("dev.flutter.flutter-gradle-plugin")
+}
+
+android {
+ namespace = "com.example.yx_icon_fonts_example"
+ compileSdk = flutter.compileSdkVersion
+ ndkVersion = flutter.ndkVersion
+
+ compileOptions {
+ sourceCompatibility = JavaVersion.VERSION_11
+ targetCompatibility = JavaVersion.VERSION_11
+ }
+
+ kotlinOptions {
+ jvmTarget = JavaVersion.VERSION_11.toString()
+ }
+
+ defaultConfig {
+ // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
+ applicationId = "com.example.yx_icon_fonts_example"
+ // You can update the following values to match your application needs.
+ // For more information, see: https://flutter.dev/to/review-gradle-config.
+ minSdk = flutter.minSdkVersion
+ targetSdk = flutter.targetSdkVersion
+ versionCode = flutter.versionCode
+ versionName = flutter.versionName
+ }
+
+ buildTypes {
+ release {
+ // TODO: Add your own signing config for the release build.
+ // Signing with the debug keys for now, so `flutter run --release` works.
+ signingConfig = signingConfigs.getByName("debug")
+ }
+ }
+}
+
+flutter {
+ source = "../.."
+}
diff --git a/example/android/app/src/debug/AndroidManifest.xml b/example/android/app/src/debug/AndroidManifest.xml
new file mode 100644
index 0000000..399f698
--- /dev/null
+++ b/example/android/app/src/debug/AndroidManifest.xml
@@ -0,0 +1,7 @@
+
+
+
+
diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..c195878
--- /dev/null
+++ b/example/android/app/src/main/AndroidManifest.xml
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/example/android/app/src/main/kotlin/com/example/yx_icon_fonts_example/MainActivity.kt b/example/android/app/src/main/kotlin/com/example/yx_icon_fonts_example/MainActivity.kt
new file mode 100644
index 0000000..7bf7801
--- /dev/null
+++ b/example/android/app/src/main/kotlin/com/example/yx_icon_fonts_example/MainActivity.kt
@@ -0,0 +1,5 @@
+package com.example.yx_icon_fonts_example
+
+import io.flutter.embedding.android.FlutterActivity
+
+class MainActivity : FlutterActivity()
diff --git a/example/android/app/src/main/res/drawable-v21/launch_background.xml b/example/android/app/src/main/res/drawable-v21/launch_background.xml
new file mode 100644
index 0000000..f74085f
--- /dev/null
+++ b/example/android/app/src/main/res/drawable-v21/launch_background.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
diff --git a/example/android/app/src/main/res/drawable/launch_background.xml b/example/android/app/src/main/res/drawable/launch_background.xml
new file mode 100644
index 0000000..304732f
--- /dev/null
+++ b/example/android/app/src/main/res/drawable/launch_background.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
diff --git a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 0000000..db77bb4
Binary files /dev/null and b/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 0000000..17987b7
Binary files /dev/null and b/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 0000000..09d4391
Binary files /dev/null and b/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 0000000..d5f1c8d
Binary files /dev/null and b/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 0000000..4d6372e
Binary files /dev/null and b/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/example/android/app/src/main/res/values-night/styles.xml b/example/android/app/src/main/res/values-night/styles.xml
new file mode 100644
index 0000000..06952be
--- /dev/null
+++ b/example/android/app/src/main/res/values-night/styles.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
diff --git a/example/android/app/src/main/res/values/styles.xml b/example/android/app/src/main/res/values/styles.xml
new file mode 100644
index 0000000..cb1ef88
--- /dev/null
+++ b/example/android/app/src/main/res/values/styles.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
diff --git a/example/android/app/src/profile/AndroidManifest.xml b/example/android/app/src/profile/AndroidManifest.xml
new file mode 100644
index 0000000..399f698
--- /dev/null
+++ b/example/android/app/src/profile/AndroidManifest.xml
@@ -0,0 +1,7 @@
+
+
+
+
diff --git a/example/android/build.gradle.kts b/example/android/build.gradle.kts
new file mode 100644
index 0000000..89176ef
--- /dev/null
+++ b/example/android/build.gradle.kts
@@ -0,0 +1,21 @@
+allprojects {
+ repositories {
+ google()
+ mavenCentral()
+ }
+}
+
+val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get()
+rootProject.layout.buildDirectory.value(newBuildDir)
+
+subprojects {
+ val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name)
+ project.layout.buildDirectory.value(newSubprojectBuildDir)
+}
+subprojects {
+ project.evaluationDependsOn(":app")
+}
+
+tasks.register("clean") {
+ delete(rootProject.layout.buildDirectory)
+}
diff --git a/example/android/gradle.properties b/example/android/gradle.properties
new file mode 100644
index 0000000..f018a61
--- /dev/null
+++ b/example/android/gradle.properties
@@ -0,0 +1,3 @@
+org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError
+android.useAndroidX=true
+android.enableJetifier=true
diff --git a/example/android/gradle/wrapper/gradle-wrapper.properties b/example/android/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 0000000..ac3b479
--- /dev/null
+++ b/example/android/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,5 @@
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-all.zip
diff --git a/example/android/settings.gradle.kts b/example/android/settings.gradle.kts
new file mode 100644
index 0000000..ab39a10
--- /dev/null
+++ b/example/android/settings.gradle.kts
@@ -0,0 +1,25 @@
+pluginManagement {
+ val flutterSdkPath = run {
+ val properties = java.util.Properties()
+ file("local.properties").inputStream().use { properties.load(it) }
+ val flutterSdkPath = properties.getProperty("flutter.sdk")
+ require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" }
+ flutterSdkPath
+ }
+
+ includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
+
+ repositories {
+ google()
+ mavenCentral()
+ gradlePluginPortal()
+ }
+}
+
+plugins {
+ id("dev.flutter.flutter-plugin-loader") version "1.0.0"
+ id("com.android.application") version "8.7.3" apply false
+ id("org.jetbrains.kotlin.android") version "2.1.0" apply false
+}
+
+include(":app")
diff --git a/example/lib/icons.dart b/example/lib/icons.dart
index 16dd970..64c62f1 100644
--- a/example/lib/icons.dart
+++ b/example/lib/icons.dart
@@ -4,6 +4,23 @@ import 'package:yx_icon_fonts_example/example_icon.dart';
// 此文件由脚本自动生成!
final icons = [
+ // 其他图标
+ ExampleIcon(YXIconFonts.iconVoicepause, 'icon voicepause'),
+ ExampleIcon(YXIconFonts.iconVoice, 'icon voice'),
+ ExampleIcon(YXIconFonts.Subtract, 'Subtract'),
+ ExampleIcon(YXIconFonts.icon24Search, 'icon 24 search'),
+ ExampleIcon(YXIconFonts.icon24Up, 'icon 24 up'),
+
+ // 编辑相关图标
+ ExampleIcon(YXIconFonts.icon44Edit, 'icon 44 edit'),
+ ExampleIcon(YXIconFonts.icon36Editline, 'icon 36 editline'),
+ ExampleIcon(YXIconFonts.icon24Edit, 'icon 24 edit'),
+
+ // 删除相关图标
+ ExampleIcon(YXIconFonts.icon44Delete, 'icon 44 delete'),
+ ExampleIcon(YXIconFonts.icon36Delete, 'icon 36 delete'),
+ ExampleIcon(YXIconFonts.icon24Delete, 'icon 24 delete'),
+
// 个人中心相关图标
ExampleIcon(YXIconFonts.icon44MeQuit, 'icon 44 me quit'),
ExampleIcon(YXIconFonts.icon44MePassword, 'icon 44 me password'),
@@ -14,10 +31,6 @@ final icons = [
ExampleIcon(YXIconFonts.icon44MeSafe, 'icon 44 me safe'),
ExampleIcon(YXIconFonts.icon44MePhone, 'icon 44 me phone'),
- // 其他图标
- ExampleIcon(YXIconFonts.icon24Search, 'icon 24 search'),
- ExampleIcon(YXIconFonts.icon24Up, 'icon 24 up'),
-
// 消息相关图标
ExampleIcon(YXIconFonts.iconMsgContacts, 'icon msg contacts'),
ExampleIcon(YXIconFonts.iconMsgViedo, 'icon msg viedo'),
@@ -37,11 +50,6 @@ final icons = [
ExampleIcon(YXIconFonts.icon24Arrowleft, 'icon 24 arrowleft'),
ExampleIcon(YXIconFonts.icon24Arrowdown, 'icon 24 arrowdown'),
- // 编辑相关图标
- ExampleIcon(YXIconFonts.icon44Edit, 'icon 44 edit'),
- ExampleIcon(YXIconFonts.icon36Editline, 'icon 36 editline'),
- ExampleIcon(YXIconFonts.icon24Edit, 'icon 24 edit'),
-
// 特殊字符图标
ExampleIcon(YXIconFonts.icon24, 'icon 24 -'),
@@ -68,11 +76,6 @@ final icons = [
// 复制相关图标
ExampleIcon(YXIconFonts.icon24Copy, 'icon 24 copy'),
- // 删除相关图标
- ExampleIcon(YXIconFonts.icon44Delete, 'icon 44 delete'),
- ExampleIcon(YXIconFonts.icon36Delete, 'icon 36 delete'),
- ExampleIcon(YXIconFonts.icon24Delete, 'icon 24 delete'),
-
// 日历相关图标
ExampleIcon(YXIconFonts.icon44Calendar, 'icon 44 calendar'),
diff --git a/example/pubspec.lock b/example/pubspec.lock
index 7cdac94..8c14e31 100644
--- a/example/pubspec.lock
+++ b/example/pubspec.lock
@@ -206,7 +206,7 @@ packages:
path: ".."
relative: true
source: path
- version: "1.0.1"
+ version: "1.0.4"
sdks:
dart: ">=3.7.0-0 <4.0.0"
flutter: ">=3.18.0-18.0.pre.54"
diff --git a/fonts/iconfont.ttf b/fonts/iconfont.ttf
index eb773d7..4207b56 100644
Binary files a/fonts/iconfont.ttf and b/fonts/iconfont.ttf differ
diff --git a/iconfont.json b/iconfont.json
index 17ee46c..a30ac51 100644
--- a/iconfont.json
+++ b/iconfont.json
@@ -5,6 +5,41 @@
"css_prefix_text": "",
"description": "学习官OA系统图标",
"glyphs": [
+ {
+ "icon_id": "45492400",
+ "name": "icon_voicepause",
+ "font_class": "icon_voicepause",
+ "unicode": "e64b",
+ "unicode_decimal": 58955
+ },
+ {
+ "icon_id": "45492399",
+ "name": "icon_voice",
+ "font_class": "icon_voice",
+ "unicode": "e64c",
+ "unicode_decimal": 58956
+ },
+ {
+ "icon_id": "45263171",
+ "name": "Subtract",
+ "font_class": "Subtract",
+ "unicode": "e64a",
+ "unicode_decimal": 58954
+ },
+ {
+ "icon_id": "45214203",
+ "name": "icon_44_edit",
+ "font_class": "icon_44_edit",
+ "unicode": "e648",
+ "unicode_decimal": 58952
+ },
+ {
+ "icon_id": "45214202",
+ "name": "icon_44_delete",
+ "font_class": "icon_44_delete",
+ "unicode": "e649",
+ "unicode_decimal": 58953
+ },
{
"icon_id": "45160662",
"name": "icon_44_me_quit",
@@ -82,13 +117,6 @@
"unicode": "e61d",
"unicode_decimal": 58909
},
- {
- "icon_id": "44625451",
- "name": "icon_44_edit",
- "font_class": "icon_44_edit",
- "unicode": "e638",
- "unicode_decimal": 58936
- },
{
"icon_id": "44625452",
"name": "icon_44_me_password",
@@ -194,13 +222,6 @@
"unicode": "e62e",
"unicode_decimal": 58926
},
- {
- "icon_id": "44625449",
- "name": "icon_44_delete",
- "font_class": "icon_44_delete",
- "unicode": "e62f",
- "unicode_decimal": 58927
- },
{
"icon_id": "44625444",
"name": "icon_32_quit",
diff --git a/lib/src/yx_icon_fonts_data.dart b/lib/src/yx_icon_fonts_data.dart
index 588754d..58054a1 100644
--- a/lib/src/yx_icon_fonts_data.dart
+++ b/lib/src/yx_icon_fonts_data.dart
@@ -9,6 +9,31 @@ class YXIconFonts {
// 私有构造函数,防止实例化
YXIconFonts._();
+ /// icon_voicepause 图标
+ ///
+ /// Unicode: e64b
+ static const IconData iconVoicepause = YXIconData(0xe64b);
+
+ /// icon_voice 图标
+ ///
+ /// Unicode: e64c
+ static const IconData iconVoice = YXIconData(0xe64c);
+
+ /// Subtract 图标
+ ///
+ /// Unicode: e64a
+ static const IconData Subtract = YXIconData(0xe64a);
+
+ /// icon_44_edit 图标
+ ///
+ /// Unicode: e648
+ static const IconData icon44Edit = YXIconData(0xe648);
+
+ /// icon_44_delete 图标
+ ///
+ /// Unicode: e649
+ static const IconData icon44Delete = YXIconData(0xe649);
+
/// icon_44_me_quit 图标
///
/// Unicode: e647
@@ -64,11 +89,6 @@ class YXIconFonts {
/// Unicode: e61d
static const IconData icon32Arrowright = YXIconData(0xe61d);
- /// icon_44_edit 图标
- ///
- /// Unicode: e638
- static const IconData icon44Edit = YXIconData(0xe638);
-
/// icon_44_me_password 图标
///
/// Unicode: e639
@@ -144,11 +164,6 @@ class YXIconFonts {
/// Unicode: e62e
static const IconData icon24Copy = YXIconData(0xe62e);
- /// icon_44_delete 图标
- ///
- /// Unicode: e62f
- static const IconData icon44Delete = YXIconData(0xe62f);
-
/// icon_32_quit 图标
///
/// Unicode: e630
diff --git a/pubspec.yaml b/pubspec.yaml
index f2edf58..269fad5 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,7 +1,7 @@
name: yx_icon_fonts
description: 学习官OA系统图标字体库,基于iconfont.ttf和iconfont.json生成
-version: 1.0.2
-homepage: https://github.com/your-username/yx_icon_fonts
+version: 1.0.4
+homepage: https://gitea.23544.com/wangyang/yx_icon_fonts_flutter
environment:
sdk: '>=3.0.0 <4.0.0'