1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/zlgopen-awtk

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
awtk_project_description_file.md 12 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 22:52 91e8897

AWTK 项目描述 файл

AWTK Designer (далее — Designer) создаёт проекты, каждый из которых имеет файл описания project.json. Этот файл в формате JSON является обязательным и содержит основную информацию о проекте: название, тип, стартовая страница, конфигурация ресурсов и т. д. Designer использует этот файл для получения сведений о проекте и определения возможности его открытия.

Пример файла:

{
  "name": "project_name",
  "version": "1.0.0",
  "date": "2020-07-04",
  "team": "AWTK Develop Team",
  "author": "XXXX <xxxx@zlg.cn>",
  "desc": "Использование XML (UI-файл) для описания пользовательского интерфейса и реализация бизнес-логики на C/C++. Приложение представляет собой программу с виджетом.",
  "copyright": "Guangzhou ZHIYUAN Electronics Co.,Ltd.",
  "type": "PROJECT_WIDGETS_APPLICATION",
  "subType": "",
  "entry": "main",
  "assets": {
    "activedTheme": "default",
    "outputDir": "res",
    "loadFrom": "any",
    "const": "resource_data",
    "screenDPR": "x1",
    "defaultLanguage": "zh",
    "defaultCountry": "CN",
    "themes": {
      "default": {
        "activedSystemBar": "system_bar",
        "activedBottomSystemBar": "system_bar_b",
        "packaged": true,
        "fonts": {
          "default": {
            "text": " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~,。?!确定取消",
            "18": " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~,。?!确定取消"
          }
        },
        "lcd": {
          "width": "800",
          "height": "480",
          "colorDepth": "16bit",
          "colorFormat": "BGR(A)"
        }
      }
    }
  },
  "creator": {
    "name": "AWTK Designer",
    "version": "1.0.0"
  },
  "awtkRoot": "${DesignerPath}/SDK/awtk",
  "usesSdk": {
    "awtk:minSdkVersion": "20070",
    "awtk:maxSdkVersion": "20090",
    "awtk:targetSdkVersion": "20090"
  }
}

1. name

Обязательный параметр, обозначающий название проекта. Для проектов с пользовательскими библиотеками виджетов название должно быть написано строчными буквами и соединено символами подчёркивания.

2. version

Необязательный параметр, указывающий версию проекта. По умолчанию — «1.0.0».

3. date

Необязательный параметр, содержащий дату создания проекта.

4. team

Необязательный параметр, представляющий название команды разработчиков проекта.

5. author

Необязательный параметр, включающий имя автора и контактную информацию.

6. desc

Необязательный параметр, описывающий проект или его функции.

7. copyright

Необязательный параметр, отражающий заявление об авторских правах.

8. type

Необязательный параметр, определяющий тип проекта. Может принимать следующие значения:

  • PROJECT_WIDGETS_APPLICATION — приложение, использующее XML для описания интерфейса пользователя и реализующее бизнес-логику на C/C++, с доступом к виджетам через AWTK API;
  • PROJECT_CUSTOM_WIDGET — библиотека пользовательских виджетов, которую можно импортировать в Designer и использовать для редактирования и предварительного просмотра;
  • PROJECT_THEME — тема приложения, которая может быть импортирована в другие проекты;
  • PROJECT_UI_SNIPPET — фрагмент интерфейса, который можно импортировать в другие проекты. По умолчанию — PROJECT_WIDGETS_APPLICATION.

9. subType

Необязательный параметр для проектов типа PROJECT_UI_SNIPPET. В настоящее время доступны два варианта: system_bar (системная панель) и keyboard (мягкая клавиатура).

10. entry

Обязательный параметр, задающий стартовую страницу приложения или примера программы.

11. assets

Обязательный параметр, управляющий конфигурацией ресурсов приложения или примера программы:

11.1 activedTheme

Указывает текущую активную тему Designer, а также тему по умолчанию для приложения или примера программы.

11.2 outputDir

Определяет каталог вывода при упаковке ресурсов. По умолчанию это каталог res проекта.

11.3 loadFrom

Управляет способом упаковки ресурсов, предоставляя два варианта:

  • any — включает файлы и константы, создавая как ресурсы для файловой системы, так и постоянные ресурсы, доступные для компиляции в код;
  • fs — упаковывает только ресурсы для файловой системы.

11.4 const

Описывает формат констант ресурсов, особенно для шрифтов и изображений при их упаковке. Доступны три формата:

  • resource_data — исходные данные, где константный массив хранит исходные файлы данных (например, исходные данные PNG-изображения);
  • bitmap_data — данные растрового изображения, где константный массив содержит данные Bitmap;
  • all_data — объединяет оба предыдущих формата.

11.5 screenDPR

Задаёт коэффициент пиксельного устройства LCD (DPR), влияя на то, какие изображения будут включены в упакованные константные ресурсы. Доступны следующие варианты:

  • x1 — включает изображения x1, xx и svg;
  • x2 — включает изображения x2, xx и svg;
  • x3 — включает изображения x3, xx и svg.

11.6 defaultLanguage

Устанавливает язык по умолчанию для приложения, обычно китайский (zh).

11.7 defaultCountry

Обозначает страну или регион, связанные с языком по умолчанию, обычно Китай (CN).

11.8 themes

Содержит список тем, используемых приложением. Темы могут быть множественными, и по умолчанию используется default.

Каждая тема имеет свои параметры:

  • activedSystemBar — указывает на используемую верхнюю системную панель;

  • activedBottomSystemBar — указывает на используемую нижнюю системную панель;

  • packaged — определяет, будет ли тема упакована при создании ресурсов;

  • fonts — описывает шрифты, используемые темой:

    • default — устанавливает символы, сохраняемые при обрезке файлов TTF;
    • 18 — определяет символы, которые должны быть сохранены при генерации шрифтов размером 18 пунктов, где значение указывает размер шрифта.
  • lcd — содержит параметры целевого LCD:

    • width — ширина LCD;
    • height — высота LCD;
    • colorDepth — глубина цвета LCD;
    • colorFormat — формат цвета LCD.

Глубина цвета и формат определяют формат Frame Buffer LCD. При глубине цвета 1 бит формат всегда MONO, при глубине 16 бит и формате RGB(A) Frame Buffer равен RGB565, при глубине 32 бита и формате RGB(A) — RGB8888, при глубине 16 бит и формате BGR(A) — BGR565, а при глубине 32 бита и формате BGR(A) — BGR8888.

Формат Frame Buffer, в свою очередь, определяет форматы упакованных шрифтов и графических изображений. Если Frame Buffer — MONO, альфа-канал шрифтов равен 1 биту, иначе — 8 битам. Текст запроса:

时,无论图片的颜色通道是什么格式,统一转为 1bit;原颜色灰度>10 时 为 1(表示白色),否则为 0(表示黑色)。

Frame Buffer 为 565 格式时,没有 alpha 通道的图片会转为 565 格式的位图数据,但有 alpha 通道 的图片则仍会转为 8888 格式的位图数据(运行时经过半透混合会转成 565 格式);

Frame Buffer 为 8888 格式时,则全部转为 8888 格式的位图数据。

需要注意的是,对于控件样式(比如背景颜色、文本颜色等):

由于运行时计算灰度会影响效率,因此,当 Frame Buffer 为 MONO 时,AWTK 认为颜色的 R 通道为 0 时表示黑色,否则为白色。建议 MONO 模式下,样式里的颜色均显式地设为黑色或白色。

Перевод текста на русский язык:

В это время, независимо от формата цветового канала изображения, он преобразуется в 1 бит; если исходный цвет имеет яркость серого цвета больше 10, то устанавливается значение 1 (что означает белый цвет), иначе устанавливается значение 0 (что означает чёрный цвет).

Если Frame Buffer имеет формат 565, то изображение без альфа-канала будет преобразовано в данные растрового изображения формата 565. Однако изображение с альфа-каналом всё равно будет преобразовано в данные растрового изображения формата 8888 (во время выполнения через полупрозрачное смешивание оно будет преобразовано в формат 565);

если Frame Buffer имеет формат 8888, то все данные будут преобразованы в данные растрового изображения формата 8888.

Следует отметить, что для стилей элементов управления (например, цвета фона, цвета текста и т. д.):

поскольку вычисление яркости серого во время выполнения влияет на производительность, AWTK считает, что при значении Frame Buffer MONO, если канал R цвета равен 0, это означает чёрный цвет, в противном случае — белый. Рекомендуется явно устанавливать цвета в стилях как чёрные или белые в режиме MONO.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/zlgopen-awtk.git
git@api.gitlife.ru:oschina-mirror/zlgopen-awtk.git
oschina-mirror
zlgopen-awtk
zlgopen-awtk
master