Development/Tutorials/Printing Hello World

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

    The mission

    Print Hello World on your printer.

    The code

    #include <qpainter.h>
    #include <qprinter.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;
    
        QPrinter printer;
        printer.setFullPage(true);
        QPainter painter;
        painter.begin(&printer);
        painter.drawText(100,100,"Hello World");
        painter.end(); 
        // this makes the print job start
    }
    

    How to compile

    CMakeLists.txt

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

    Make and Run

    Then do:

    cmake .
    make
    ./printhelloworld