Development/Tutorials/Printing Hello World (ru)

From KDE TechBase
Revision as of 20:54, 29 June 2011 by Neverendingo (talk | contribs) (Text replace - "</code>" to "</syntaxhighlight>")


Development/Tutorials/Printing_Hello_World


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

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