Development/Tutorials/Printing Hello World (ru)

From KDE TechBase
Revision as of 12:03, 18 July 2012 by AnneW (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.


Note
This tutorial seems not to be up to date with current KDE4 development.


Цель

Печать Hello World на принтере.

Версия KDE

Этот код будет работать как для KDE 3 так и для KDE 4.

Код

#include <kprinter.h>
#include <qpainter.h>
#include <kapplication.h>
#include <kaboutdata.h>
#include <kmessagebox.h>
#include <kcmdlineargs.h>

/*
This prints Hello World on your printer
*/

int main(int argc, char *argv[])
{
  KAboutData aboutData( "test", "test", "1.0", "test",
      KAboutData::License_GPL, "(c) 2006" );
  KCmdLineArgs::init( argc, argv, &aboutData );
  KApplication app;

  KPrinter job;
  job.setFullPage( true );
  if ( job.setup() )
  {
    QPainter painter;
    painter.begin( &job );
    painter.drawText(100,100,"Hello World");
    painter.end(); 
    // this makes the print job start
  }
}

Разъяснение

Пример печати в KDE необходим, как пример собственной конфигурации, включающей конфигурацию принтера. Создадим его как пример класса KApplication.

Как компилировать

С KDE 4 и CMake

CMakeLists.txt

find_package(KDE4 REQUIRED)
include_directories( ${KDE4_INCLUDES} )
kde4_add_executable(printhelloworld printtest.cpp)
target_link_libraries(printhelloworld ${KDE4_KDEPRINT_LIBS})

Выполнение сборки и запуск (Make and Run)

Затем делаем:

cmake .
make
./printhelloworld

С KDE 3

Лёгкий способ:

gcc printtest.cpp -o print -I/usr/lib/qt3/include \
-I/opt/kde3/include -L/opt/kde3/lib \
-L/usr/lib/qt3/lib  -lqt-mt -lkdeprint

Смотрите также