Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[SFML 2.1, C++, C::B] Polskich znaków ciąg dalszy...

Ostatnio zmodyfikowano 2014-07-15 14:31
Autor Wiadomość
Mistrzu350
Temat założony przez niniejszego użytkownika
[SFML 2.1, C++, C::B] Polskich znaków ciąg dalszy...
» 2014-07-14 19:51:09
Witam!

Bawię się sfml'em i napotkałem na pewien problem. Konkretnie nie potrafię wyświetlić w w oknie tekstu z polskimi znakami.
Wiem, że to nie pierwszy temat w tym stylu, ale musicie mi uwierzyć, że na prawdę starałem się uważnie przyjrzeć każdemu z istniejących już tematów.
Sposoby, które sprawdziły się u innych i mnie nie chciały.
Nie jestem pewien w czym leży problem, może coś źle piszę, może coś z ustawieniami CB albo kompilatora...
Ogólnie rzecz biorąc tylko Ó wyświetla się poprawnie.

Proszę uprzejmie o pomoc i pozdrawiam :)
P-113797
pekfos
» 2014-07-14 20:22:56
Czcionka ma polskie znaki? Masz odpowiednie kodowanie plików źródłowych?
P-113799
Mistrzu350
Temat założony przez niniejszego użytkownika
» 2014-07-14 20:30:07
Czcionka ma polskie znaki. Zakładasz metodę odczytywania tekstu z plików, dobrze zrozumiałem? Sprawdzałem, ale chyba tylko dla jednego kodowania, zaraz się pobawię...

edit
Więc tak, na razie nic bo getline nie przyjmuje sf::String, więc bezpośrednio z pliku do niego nie mogę przenieść tekstu.
Pojawia się teraz pytanie jak przerobić std::string na sf::String... widziałem jeszcze w innych tematach coś w wstringu, spróbuję go zastosować...

edit2
próbowałem na ANSI, Unicode i UTF-8, jako sf::Stringa podawałem stringa i wstringa, różnica jest tylko taka że inne nieokreślone znaki występują, raz więcej raz mniej :/
P-113800
killjoy
» 2014-07-14 22:19:13
Zmień kodowanie pliku z kodem C++ na windows-1250, a na początku funkcji main() wklep
std::setlocale( LC_ALL, "polish" );
. Pamiętaj też, żeby doinkludować
#include <locale>
. U mnie taka konfiguracja działa.
P-113802
Mistrzu350
Temat założony przez niniejszego użytkownika
» 2014-07-15 09:08:50
Zadziałało w przypadku podania tekstu w kodzie, na odczyt z pliku nie wpłynęło, ale bardzo dziękuję :) to już znaczny krok na przód...

To teraz, ma ktoś pomysł jak odczytać z pliku tekst z polskimi znakami i go wyświetlić? :)
P-113811
unkn9wn
» 2014-07-15 10:00:52
Zadziałało w przypadku podania tekstu w kodzie, na odczyt z pliku nie wpłynęło

więc ustaw kodowanie pliku tekstowego na ANSI


sprawdź przedostatni punkt tutoriala http://cpp0x.pl/kursy​/Kurs-SFML-1-6-C++​/Wyswietlanie-tekstu/341 , pt.: Polskie litery
P-113812
Witold
» 2014-07-15 10:29:01
sf::String::fromUtf8
P-113813
Mistrzu350
Temat założony przez niniejszego użytkownika
» 2014-07-15 14:31:00
Nie nadążam za zwrotami akcji w C::B xD rano działało, teraz zaglądam w kod, w miejscu gdzie napisałem "zażółć gęślą jaźń" widnieje "za?ó3a geol1 jaYn"
Ale wyświetla się poprawnie. Nwm kiedy, ani jak, ale musiałem to jakoś prze-konwertować (?)
Próbowałem więc znaleźć sposób jak to się stało, wpisałem znów "zażółć gęślą jaźń" ale tym razem się nie zamieniło.
Usunąłem z kodu std::setlocale( LC_ALL, "polish" ); i #include <locale>, skompilowałem, dodałem z powrotem i... roszada, tekst z pliku w kodowaniu ANSI wyświetlił się poprawnie, a tekst z kody nie.
Ta wersja jest dla mnie bardziej korzystna i chyba już nic nie będę mieszał skoro działa.
Na wszelki wypadek jeszcze nie zamykam tematu.
P-113820
« 1 »
  Strona 1 z 1