[英]Qt 5 encoding problems
我有一個使用Qt 4構建的應用程序。它使用latin-1作為源,並且我始終使用QString :: fromLatin1。 但是,當嘗試移植到Qt 5時(實際上,我同時使用了Qt 5和Windows 8,但我不認為這是Windows的錯),編碼實際上看起來是正確的,在文本之前/之后有一些奇怪的空格。
這是在Qt 5 / Windows 8上運行的應用程序:
如您所見, ç
和ã
確實顯示正確,並且在它們之間添加了一些奇怪的空間。 另外, ó
字符顯示正確,沒有空格。
這就是我設置QLabel的方式:
m_msgWelcome->setText(QString("Bem vindo ao biocódigo!\nSelecione uma opção ao lado para iniciar"));
我已經嘗試了QString::fromUtf8
和QString::fromLatin1
沒有成功。
通常,使用Qt5,您可以將所有文件保存為UTF-8(無需使用QString::fromAnythingEncoding
類的方法)。
使用Qt Creator,您可以通過以下方法執行此操作: 編輯然后選擇編碼 (針對所有文件)。
為了將來,您還可以更改默認設置: 工具 > 選項 > 文本編輯器 > 行為 > 默認編碼,然后輸入UTF-8 。
如果間距問題仍然存在,請嘗試使用其他字體。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.