IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques, systèmes et outils C Discussion :

Générer fichier PDf en C


Sujet :

Bibliothèques, systèmes et outils C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 168
    Par défaut Générer fichier PDf en C
    Bonjour tout le monde

    Je ne sais pas si quelqu'un a déjà fait cela ici.

    Je suis en train de développer un programme simple en C pour gérer une petite comptabilité. Les données sont stockées dans une base de données sql.

    Je sèche sur une partie : je voudrais générer un PDF pour exporter une facture, mais je ne sais pas comment faire. Je voudrais organiser les données récoltées dans la base, et ensuite les exporter dans un PDF en travaillant la présentation (ajout de cadres, du logo de l'entreprise, etc.) mais je n'ai encore jamais fait ça.

    Auriez vous des pistes à me proposer car je ne trouve rien.

    J'ai pensé peut-être à générer un fichier XML pour le convertir ensuite en PDF peut être, mais sans avoir creuser davantage.

    En vous remerciant pour votre aide

  2. #2
    Membre chevronné Avatar de licardentaistor
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2021
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juillet 2021
    Messages : 345
    Par défaut
    en supposant que la base est en mysql et en utilisant libharu

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
     
    #include <stdio.h>
    #include <stdlib.h>
    #include <mysql/mysql.h>
    #include "hpdf.h"
     
    void error_handler(HPDF_STATUS   error_no,
                       HPDF_STATUS   detail_no,
                       void         *user_data)
    {
        printf ("ERROR: error_no=%04X, detail_no=%u\n",
                    (HPDF_UINT)error_no, (HPDF_UINT)detail_no);
    }
     
    int main() {
        MYSQL *con = mysql_init(NULL);
     
        if (con == NULL) {
            fprintf(stderr, "%s\n", mysql_error(con));
            exit(1);
        }
     
        if (mysql_real_connect(con, "localhost", "root", "root_password",
              "test_db", 0, NULL, 0) == NULL) {
            fprintf(stderr, "%s\n", mysql_error(con));
            mysql_close(con);
            exit(1);
        }
     
        if (mysql_query(con, "SELECT * FROM table_name")) {
            fprintf(stderr, "%s\n", mysql_error(con));
            mysql_close(con);
            exit(1);
        }
     
        MYSQL_RES *result = mysql_store_result(con);
     
        if (result == NULL) {
            fprintf(stderr, "%s\n", mysql_error(con));
            mysql_close(con);
            exit(1);
        }
     
        // Create a PDF
        HPDF_Doc pdf = HPDF_New(error_handler, NULL);
        HPDF_Page page = HPDF_AddPage(pdf);
        HPDF_Page_SetSize(page, HPDF_PAGE_SIZE_A4, HPDF_PAGE_PORTRAIT);
        HPDF_Font font = HPDF_GetFont(pdf, "Helvetica", NULL);
        HPDF_Page_SetFontAndSize(page, font, 24);
     
        int row_count = 0;
        MYSQL_ROW row;
     
        while ((row = mysql_fetch_row(result))) {
            HPDF_Page_BeginText(page);
            HPDF_Page_TextOut(page, 50, 750 - row_count * 30, row[0]);  // Assumer que row[0] est une chaîne
            HPDF_Page_EndText(page);
            row_count++;
        }
     
        HPDF_SaveToFile(pdf, "output.pdf");
        HPDF_Free(pdf);
     
        mysql_free_result(result);
        mysql_close(con);
     
        exit(0);
    }

Discussions similaires

  1. générer fichier PDF
    Par sky88 dans le forum JSF
    Réponses: 5
    Dernier message: 01/10/2011, 00h09
  2. générer fichiers pdf en JSP
    Par flowerofspring dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 21/03/2010, 10h25
  3. Générer fichier pdf
    Par mikees dans le forum Flex
    Réponses: 3
    Dernier message: 21/12/2009, 13h18
  4. [FPDF] Générer fichier pdf
    Par Jiraiya42 dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 28/05/2007, 19h03
  5. générer fichier pdf (ou autre) via flash
    Par haltabush dans le forum Flash
    Réponses: 9
    Dernier message: 02/10/2006, 14h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo