Scriere in culori intr-un fisier text

8 posts / 0 new
Last post
ono
Scriere in culori intr-un fisier text

Vin cu rugamintea, ca, dacă ştie cineva să îmi spună şi mie, cum se poate scrie într-un fişier cu diferite culori, folosind programarea in C sau C++? Din ce am găsit pe internet, (chiar şi la noi pe forum) se poate scrie în culori, doar ce se afişează în consolă. Dar dacă aş vrea să scriu într-un fişier, cum ar trebui să procedez? Se poate? Mulţumesc anticipat.

N3o
N3o's picture
Cred ca te referi la

Cred ca te referi la sublinierea sintaxei. Daca despre aia e vorba atunci foloseste Kate/Kwrite, GEdit sau vim pt consola.

Tip: salveaza intai fisierul gol cu extensia .c sau .cpp si dupa aceea, cand scrii efectiv o sa vezi ca apare sublinierea de sintaxa corect.

Kate se poate folosi foarte frumos ca un fel de IDE avand la dispozitie si o consola in aceasi fereastra, de unde poti compila direct cu gcc/g++ fisierul sursa pe care l-ai editat.

De asemenea poti folosi CodeBlocks ca IDE pe care il gasesti in medii!

ono
Nu megeam aşa de departe

cu gândul, ci numai dacă ofstream / ifstream ar putea stoca / reda informaţii şi despre culoarea caracterelor. Afişarea la imprimantă oferă astfel de posibilitate, cu cout chiar, dar despre ofstream ori ifstream nu am găsit încă vreo referire similară. Am să studiez şi toate programele care folosesc sublinierea sintaxei, fiindcă ele au rezolvat cu bine acest lucru, mulţumesc mult pentru idee!

ono

nlg
E impropriu spus a "scrie

E impropriu spus a "scrie într-un fişier cu diferite culori". Fisierul e un grup de octeti iar ca atribute are denumire, data, lungime etc. dar nu culori, font si alte elemente vizuale.
Acestea din urma sunt redate vizual in urma interpretarii informatiilor din fisier. Un fisier .pdf (de exemplu) e gandit/conceput pentru asa ceva. Poti pastra in el orice element de grafica. La fel sunt documentele OpenOffice/KOffice etc.
Deci poti scrie ce vrei tu via C/C++ intr-un fisier cu un format cunoscut (asa cum am dat exemplele anterioare) iar la redare/dechidere/citire cu programele adecvate vei avea cerinta rezolvata. Sau poti tu gandi propriul format de fisier dar faci si programul de interpretare. Pentru consola ai biblioteca **ncurses** iar daca vrei pentru modul grafic ai la dispozitie QT, GTK+, wxWidgets etc.

ono
Multumesc, nlg!

Cu qt si wxWidgets am lucrat, dar cu ncurses nu. Cum pot scrie via C++ intr-un fisier OpenOfice, inca nu stiu. La MS Windows existau clase de documente si biblioteci consacrate, faceam un obiect word, de ex, pe care apoi il manevram cum voiam. Dar la linux nu cunosc maniera inca.

ono

N3o
N3o's picture
Exista ceva plugin pt OOo

Exista ceva plugin pt OOo care sa iti sublinieze sintaxa. COOoder ii zice. Probabil mai sunt si altele dar asta l-am vazut cel mai rapid.

L.E.: Si cam asa arata python in OOo "vopsit" de COOoder:

snapshot20.png (152 KB)

nlg
Ai si in OpenOffice aceleasi

Ai si in OpenOffice aceleasi notiuni ca in MSOffice. Doar ca e un alt framework. Cauta SDK-ul lor si ai sa vezi.
QT, wxWidgets ori GTK+ includ controale de editare prin care poti formata textul (in genul RTF).

Da' nu e cel mai simplu sa faci un HTML ?

ono
Ba cred că da!

Tot cazul a pornit de la cerinţa de a lista nişte rapoarte, într-un fişier cât mai simplu - text - dar sugestiv - şi ce e mai sugestiv, ca un pasaj tipărit cu altă culoare? Din cauza asta am cam scăpat din vedere varianta cu html. Pe de altă parte, programul este şi trebuie să rămână în C / C++, nu visual, ci clasic, cu consolă. Cel mult output-urile pot fi în documente cu format portabil.
Aşa se face că acuma am bibliografie adecvată şi vă mulţumesc foarte mult!

ono