Как написать программу для принтера распечатки документов самостоятельно хотя бы на винде это возможно?

Вот я книжку прочитал. Там герой создавал программу для печатывания файлов на Линуксе.
А использовал Олдовое железо 2008 года примерно. Плюс как мне совершенно не понятно как он это делал. То есть если допустим для виндовс можно найти информайцию как создать допустим игру (компьютерный движок) то составить программу использующую функцию печатать файлы это проблематично. В интернете вылезают или сайты с офисными программами или сайты с ссылками на программы в которых можно скачать готовые программы для разных видов принтера.
Поделитесь своими ответами в описании к вопросу.
Желательно 1.
Какой язык использовать для написания такой программы.
2. Какие программы использовать для графического модуля программы
3. Как протестировать программу на наличие багов и исправлять эти баги

Дополнено (1). Желательно пусть ответят программисты.
А не юзеры.
Ответом типа Читай как они это сделали.
или Изучай языки…
это нифига не тот ответ что мне нужен.

Скачал офис окон (Windows ofice)

Все блокнотики заменились на другие файлы, с помощью офиса я их мог открывать. Так же когда кликал по рабочему столу ПКМ появлялось создать>Windows ofice типо блокнот.
Удалил я этот офис, теперь не могу на рабочем столе создать блокноты. Помогите