Flutter古鲁穆奇文字处理插件gurmukhi_utils的使用

发布于 1周前 作者 eggper 来自 Flutter

Flutter古鲁穆奇文字处理插件gurmukhi_utils的使用

gurmukhi_utils 是一个 Dart 库,用于处理古鲁穆奇文字符串的转换、分析和测试。它支持 SantLipi 扩展。

古鲁穆奇字符串扩展

去除Vishraams

'ਸਭਨਾ ਜੀਆ ਕਾ, ਇਕੁ ਦਾਤਾ; ਸੋ. ਮੈ ਵਿਸਰਿ ਨ ਜਾਈ ॥੫॥'.removeVishraams();
// 输出: 'ਸਭਨਾ ਜੀਆ ਕਾ ਇਕੁ ਦਾਤਾ ਸੋ ਮੈ ਵਿਸਰਿ ਨ ਜਾਈ ॥੫॥'

获取首字母

'ਜਿਸਨੋ ਕ੍ਰਿਪਾ ਕਰਹਿ ਤਿਨਿ ਨਾਮ ਰਤਨੁ ਪਾਇਆ ॥'.firstGurmukhiLetters();
// 输出: ['ਜ', 'ਕ', 'ਕ', 'ਤ', 'ਨ', 'ਰ', 'ਪ']

分割字符串

'ਕੈਸੀ ਆਰਤੀ ਹੋਇ ॥'.splitGurmukhi();
// 输出: ['ਕੈ', 'ਸੀ', ' ', 'ਆ', 'ਰ', 'ਤੀ', ' ', 'ਹੋ', 'ਇ', ' ', '॥']

'ਅੰਮ੍ਰਿਤ'.splitGurmukhi();
// 输出: ['ਅੰ', 'ਮ੍ਰਿ', 'ਤ']

'ਅੰਮ੍ਰਿਤ'.splitGurmukhi(splitVirama: true);
// 输出: ['ਅੰ', 'ਮ੍', 'ਰਿ', 'ਤ']

'ਸ꠴ਯਾਮ'.splitGurmukhi(extensions: true);
// 输出: ['ਸ', '꠴ਯਾ', 'ਮ']

Unicode规范化

修复Matras

'ਅਾਦਿ'.normalizeGurmukhi();
// 输出: 'ਆਦਿ'

修复重音符号顺序

'ਕੰੁਚਰ'.normalizeGurmukhi();
// 输出: 'ਕੁੰਚਰ'

移除Sant Lipi修饰符(如果未启用)

'ਮਧ꠳ਯ'.normalizeGurmukhi();
// 输出: 'ਮਧ੍ਯ'

转换

数字转古鲁穆奇文

123.toGurmukhi();
// 输出: '੧੨੩'

ASCII转古鲁穆奇文

asciiToGurmukhi('goibMd imlx kI ieh qyrI brIAw ]');
// 输出: 'ਗੋਬਿੰਦ ਮਿਲਣ ਕੀ ਇਹ ਤੇਰੀ ਬਰੀਆ ॥'

asciiToGurmukhi('qRsîo', extensions: true);
// 输出: 'ਤ੍ਰਸ꠵ਯੋ'

示例代码

以下是一个完整的示例代码,演示了如何使用 gurmukhi_utils 插件进行各种操作:

import 'package:gurmukhi_utils/gurmukhi_utils.dart';

void main() {
  // 去除Vishraams
  print('ਸਭਨਾ ਜੀਆ ਕਾ, ਇਕੁ ਦਾਤਾ; ਸੋ. ਮੈ ਵਿਸਰਿ ਨ ਜਾਈ ॥੫॥'.removeVishraams());

  // 获取首字母
  print('ਜਿਸਨੋ ਕ੍ਰਿਪਾ ਕਰਹਿ ਤਿਨਿ ਨਾਮ ਰਤਨੁ ਪਾਇਆ ॥'.firstGurmukhiLetters());

  // 分割字符串
  print('ਕੈਸੀ ਆਰਤੀ ਹੋਇ ॥'.splitGurmukhi());
  print('ਅੰਮ੍ਰਿਤ'.splitGurmukhi());
  print('ਅੰਮ੍ਰਿਤ'.splitGurmukhi(splitVirama: true));
  print('ਸ꠴ਯਾਮ'.splitGurmukhi(extensions: true));

  // Unicode规范化
  print('ਅਾਦਿ'.normalizeGurmukhi());
  print('ਕੰੁਚਰ'.normalizeGurmukhi());
  print('ਮਧ꠳ਯ'.normalizeGurmukhi());

  // 数字转古鲁穆奇文
  print(123.toGurmukhi());

  // ASCII转古鲁穆奇文
  print(asciiToGurmukhi('goibMd imlx kI ieh qyrI brIAw ]'));
  print(asciiToGurmukhi('qRsîo', extensions: true));
}

更多关于Flutter古鲁穆奇文字处理插件gurmukhi_utils的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter古鲁穆奇文字处理插件gurmukhi_utils的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


当然,以下是一个关于如何在Flutter项目中使用gurmukhi_utils插件的示例代码。这个插件通常用于处理和显示古鲁穆奇(Gurmukhi)文字,可能包括转换、验证或其他与古鲁穆奇文字相关的功能。

首先,确保你已经在你的pubspec.yaml文件中添加了gurmukhi_utils依赖:

dependencies:
  flutter:
    sdk: flutter
  gurmukhi_utils: ^最新版本号  # 替换为实际的最新版本号

然后运行flutter pub get来安装依赖。

接下来,在你的Flutter项目中,你可以按照以下方式使用gurmukhi_utils插件。以下是一个简单的示例,演示如何导入并使用该插件:

import 'package:flutter/material.dart';
import 'package:gurmukhi_utils/gurmukhi_utils.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Gurmukhi Utils Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: GurmukhiUtilsDemo(),
    );
  }
}

class GurmukhiUtilsDemo extends StatefulWidget {
  @override
  _GurmukhiUtilsDemoState createState() => _GurmukhiUtilsDemoState();
}

class _GurmukhiUtilsDemoState extends State<GurmukhiUtilsDemo> {
  String convertedText = '';

  void convertTextToGurmukhi() {
    // 假设我们有一个要转换的拉丁文字符串
    String latinText = "Hello, World!";
    
    // 使用gurmukhi_utils插件的转换功能(注意:具体方法名可能根据插件版本不同)
    // 这里假设有一个方法叫convertToGurmukhi,实际使用时请参考插件文档
    String gurmukhiText = GurmukhiUtils.convertToGurmukhi(latinText); // 伪代码,实际方法可能不同
    
    // 更新状态
    setState(() {
      convertedText = gurmukhiText;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Gurmukhi Utils Demo'),
      ),
      body: Padding(
        padding: const EdgeInsets.all(16.0),
        child: Column(
          crossAxisAlignment: CrossAxisAlignment.start,
          children: <Widget>[
            Text('Original Latin Text:'),
            Text('Hello, World!', style: TextStyle(fontSize: 18)),
            SizedBox(height: 16),
            Text('Converted Gurmukhi Text:'),
            Text(convertedText, style: TextStyle(fontSize: 18)),
            SizedBox(height: 16),
            ElevatedButton(
              onPressed: convertTextToGurmukhi,
              child: Text('Convert Text'),
            ),
          ],
        ),
      ),
    );
  }
}

注意

  1. GurmukhiUtils.convertToGurmukhi(latinText) 是一个假设的方法名,实际使用时请参考gurmukhi_utils插件的官方文档,以获取正确的方法名和使用方式。
  2. gurmukhi_utils插件可能包含多种功能,比如验证、格式化等,这里只展示了文本转换的示例。
  3. 确保插件版本是最新的,并且查阅最新的官方文档,因为插件的API可能会随着版本的更新而变化。

由于我无法直接访问最新的gurmukhi_utils插件文档和代码,以上示例基于假设和通用实践编写。实际使用时,请参考插件的官方文档和示例代码。

回到顶部