- Qt 5.15
- Qt Virtual Keyboard
- Qt Virtual Keyboard | Commercial or GPLv3

# Qt Virtual Keyboard

The Qt Virtual Keyboard project provides an input framework and reference keyboard frontend for Qt 5 on Linux Desktop/X11, Windows Desktop, and Boot2Qt targets.

The input framework makes it easy to write custom input methods or to integrate 3rd party input engines. The input methods can be implemented in C++ or QML.

## Features

Key features of the Qt Virtual Keyboard include:

- Customizable keyboard layouts and styles with dynamic switching.
- Predictive text input with word selection.
- Character preview and alternative character view.
- Automatic capitalization and space insertion.
- Scalability to different resolutions.
- Support for different character sets (Latin, Simplified/Traditional Chinese, Hindi, Japanese, Arabic, Hebrew, Korean, and others).
- Support for most common input languages, with possibility to easily extend the language support.
- Left-to-right and right-to-left input.
- Hardware key support for 2-way and 5-way navigation.
- Handwriting support, with gestures for fullscreen input.
- Audio feedback.
- Cross-platform functionality.
- Supports both Qt Quick and Qt Widgets applications.

## Supported Languages

The Virtual Keyboard supports the following languages:

- Albanian
- Arabic
- Bulgarian
- Bulgarian (Latin)
- Croatian
- Czech
- Danish
- Dutch
- English (British)
- English (American)
- Estonian

- Finnish
- French
- French (Canadian)
- German
- Greek
- Greek (Latin)
- Hebrew
- Hebrew (Latin)
- Hindi
- Hungarian
- Indonesian
- Italian

- Japanese (Hiragana)
- Japanese (Katakana)
- Japanese (Full Width Latin)
- Japanese (Latin)
- Korean
- Malay
- Norwegian
- Persian/Farsi
- Polish
- Portugese
- Romanian
- Russian

- Serbian
- Serbian (Latin)
- Simplified Chinese
- Traditional Chinese (Zhuyin)
- Traditional Chinese (Cangjie)
- Slovak
- Slovenian
- Spanish
- Swedish
- Thai
- Turkish
- Ukrainian
- Vietnamese

To add support for an additional language, see Adding New Keyboard Layouts.

## Third-party Plugins

The Qt Virtual Keyboard supports third-party plugins from the following vendors:

- T9 Write handwriting text input.
- MyScript Text handwriting recognition

Building Qt Virtual Keyboard describes how to integrate these plugins into the Qt Virtual Keyboard.

## Guides

- Building Qt Virtual Keyboard
- Deployment Guide
- Technical Guide
- User Guide

## API Reference

- QML Types
- C++ Classes

## Examples

- Qt Virtual Keyboard Examples

## Licenses and Attributions

Qt Virtual Keyboard is available under commercial licenses from The Qt Company. In addition, it is available under the GNU General Public License, version 3. See Qt Licensing for further details.

Furthermore Qt Virtual Keyboard potentially contains third party modules under following permissive licenses:

Lipi Toolkit, version 4.0.0 | MIT License
OpenWnn | Apache License 2.0
PinyinIME | Apache License 2.0
Traditional Chinese IME (tcime) | Apache License 2.0 and BSD 3-clause "New" or "Revised" License