FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» mise a jour calculatrice
par JL35 Aujourd'hui à 22:03

» KGF_dll - nouvelles versions
par Klaus Aujourd'hui à 20:32

» Compilateur FBPano
par jean_debord Aujourd'hui à 11:07

» Documentation de KGF
par Klaus Hier à 22:52

» Zoom sur une portion d'écran
par JL35 Hier à 21:51

» double guillemets "" dans un EDIT
par pascal10000 Hier à 21:08

» Recherche d'une expression dans un source
par Marc 37 Hier à 13:08

» Tracer une grille n'importe où sur l'écran
par JL35 Dim 19 Nov 2017 - 22:14

» TourD Version 2
par Klaus Sam 18 Nov 2017 - 23:58

» La métamatière et le peuple
par JL35 Ven 17 Nov 2017 - 21:18

» Capture d'une zone de l'écran total
par JL35 Ven 17 Nov 2017 - 18:41

» Logiciel de soutien scolaire en langues.
par Pedro Alvarez Ven 17 Nov 2017 - 11:49

» qui peut résoudre mon prb
par pascal10000 Jeu 16 Nov 2017 - 17:30

» évènements et objets système : listage automatique
par Jean Claude Jeu 16 Nov 2017 - 11:15

» Panoramic et la reconnaissance vocale.
par papydall Jeu 16 Nov 2017 - 3:45

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2017
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
27282930   
CalendrierCalendrier

Partagez | 
 

 Projet en cours: gestion d'impression en texte ET graphique

Voir le sujet précédent Voir le sujet suivant Aller en bas 
Aller à la page : 1, 2  Suivant
AuteurMessage
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Projet en cours: gestion d'impression en texte ET graphique   Ven 30 Avr 2010 - 1:20

Je suis en traine de mettre la dernière main à mes nouvelles fonctions dans la DLL permettant de gérer les impressions.

On pourra imprimer du texte et des graphiques, y compris des images. On pourra dessiner avec des ellipses, rectangles et traits, en couleur, en trait ou en masse.

Le texte pourra être positionné précisément, avec fond opaque ou transparent.

On pourra choisir l'orientation de la page et le nombre de copies, et bien sûr police, taille, attributs, imprimante etc.

Il y aura des nouvelles dans qelques jours...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
JL35



Nombre de messages : 5992
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 30 Avr 2010 - 1:45

Donc ça remplacera WinTextPrint, avec beaucoup plus de possibilités ?
J'en salive d'avance...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 30 Avr 2010 - 2:20

Oui, il y a un peu de ça. Bientôt, je mettrai une beta en ligne, avec les fonctions suivantes:
- choix du titre de l'édition (pour le spooler)
- choix de l'orientation (portrait ou paysage)
- choix du nombre de copies
- début d'impression, nouvelle page, fin d'impression
- positionnement dans la page, en relatif ou absolu
- choix de la police, sa taille et les attributs gras, italique, sousligné et barré
- choix des couleurs pour l'avant-plan et l'arrière-plan
- impression d'un texte avec fond opaque ou transparent
- dessin de lignes droites, de rectangles et d'éllipses
- remplissage de formes

La gestion des images et fichiers PDF viendra plus tard.
Il y aura aussi un mode "batch" en passant un fichier texte en paramètre, un peu comme WinTextPrint, mais c'est pour plus tard aussi.
Il y aura également une prévisualisation de l'édition en cours de construction...

Voilà en gros le projet en cours.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
JL35



Nombre de messages : 5992
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 30 Avr 2010 - 10:28

Effectivement, c'est bien alléchant tout ça !
Bon, pour les images, j'attendrai un peu, mais comme je dois m'absenter une huitaine de jours, ce sera sûrement fait à mon retour ! Very Happy
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Invité
Invité



MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 30 Avr 2010 - 21:30

Super Klaus!

J'en ai besoin justement dans mon programme mais je ne sais pas si je devrais attendre les vrais commandes de Jack pour l'impression?

Mais ça va me faire patienter au moins!
Revenir en haut Aller en bas
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Sam 1 Mai 2010 - 0:27

Loin de moi de vouloir faire de l'ombre à Jack. Il se trouve simplement que j'ai surtout besoin de Panoramic pour résoudre les problèmes d'informatique de gestion. A proeuve, mes outils de manipulation de dates, une gestion de fichiers multi-clés ISAM à l'aide d'excel, etc. Et une puissante fonction d'impression est indispensable.

Or, de par ma formation, j'ai une certaine facilité à concevoir des outils, et c'est ce que je mets à profit pour créer ceux dont j'ai besoin. La possibilité offerte par Panoramic (par JAck) d'utiliser des DLL était un vrai cadeau pour moi, et seul le bug de la fonction adr(a$) m'empêchait jusqu'à récemment de me lâcher pleinement dans ce domaine.

Après la belle correction que Jack a apporté à ce problème, j'ai immédiatement publié ma première fonction, le choix d'une imprimante Windows, qui pour mo était le point de départ pour tout un ensemble de routines de gestion d'impression. Cette routine était déjà prête et fonctionnait en environnement purement Delphi, et j'ai donc simplement pu l'intégrer dans ma DLL.

Mais la suite est en cours de finition (hormis l'impression des mages et la gestion de l'aperçu avant impression qui sont pour plus tard) et viendra dans les jours prochains. Histoire de faire quelques tests approfondis...

Je ne sais pas ce ue Jack a prévu au niveau de la gestion des impressions. Lorsqu'il mettra ces extensions de Panoramic en ligne, je retirerai peut-être mes fonctions de la DLL, car mon but n'est absolument pas d'unstaurer une compétition ou une concurrence. Je veux simplement me servir rapidement de fonctions dont j'ai besoin, et cela me fait plaisir si d'autres peuvent en avoir l'utilité. je les publie dans cet esprit.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Sam 1 Mai 2010 - 11:26

C'est fait: une première version de mes fonctions d'impression est mises en ligne. Ces fonctions se trouvent dans ma DLL, et la doc est en ligne.

ATTENTION: comme d'habitude, ces fonctions sont à appeler par une instruction du type:
Citation :
res% = dll_calln("nom_fonction",par1,par2,...,parn)
avec n étant le nombre de paramètres. Le nom de la fonction DOIT respecter les majuscules et minuscules !

Pour le moment, je gère les fonctions suivantes:

- choix de l'imprimante Windows à utiliser:
Citation :
res% = SelectWindowsPrinter(adr(nom$),len(nom$))

- gestion des fonctions de base d'mpression
Citation :
res% = PrinterManager(f%,phnd%,chnd%,opt%)
avec les fonctions suivantes:
Citation :
Début impression
Nouvelle page
Fin impression
Orientation définie par opt%
Copies définie par opt%
Titre de l'impression (pour le queue manager)

- gestion des fonctions spécifiques d'impression
Citation :
res% = PrinterFunction(f%,phnd%,chnd%,opt1%,opt2%,opt3%)
avec les fonctions suivantes:
Citation :
imprimer le texte txt$
dessiner une forme à partir de la position active
remplissage de la forme contenant la position active
positionner en absolu ou relatif
choisir police, taille et attributs
choisir couleur avant-plan et arrière-plan

Ces fonctions doivent être utilisées dans un ordre logique:

1er groupe: choix d'imprimante:
Citation :
res% = SelectWindowsPrinter(adr(nom$),len(nom$))

2ème groupe: configuration de l'imprimante choisie:
Citation :
Orientation définie par opt%
Copies définie par opt%
Titre de l'impression (pour le queue manager)

3ème groupe: début de l'impression:
Citation :
Début impression

4ème groupe: élaboration d'une page d'impression:
Citation :
imprimer le texte txt$
dessiner une forme à partir de la position active
remplissage de la forme contenant la position active
positionner en absolu ou relatif
choisir police, taille et attributs
choisir couleur avant-plan et arrière-plan
et
Nouvelle page

5ème groupe: fin d'impression:
Citation :
Fin impression

La fonction "remplissage" dépend des capacités du driver de l'imprimante et n'est pas disponible partout; le cas échéant, un message d'avertissement est affiché.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
JL35



Nombre de messages : 5992
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Sam 1 Mai 2010 - 11:43

Ouh là ! impressionnant, si je puis dire.
Et ça va faire du boulot à interpréter et tester tout ça, et ça va chauffer dans les imprimantes...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Invité
Invité



MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Sam 1 Mai 2010 - 16:06

C'est vite tout ça Klaus!!!!!!!
Very Happy Very Happy Very Happy Very Happy Very Happy
Revenir en haut Aller en bas
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Lun 3 Mai 2010 - 1:31

J'ai ajouté une nouvelle possibilité à la fonction PrinterFunction de ma DLL. Maintenant, on peut imprimer des images en choisissant la position et les dimensions:
Citation :

dim i%, largeur%, hauteur%

nom_image$ = "MonImage.jpg"
largeur% = 600
hauteur% = 800
i% = dll_call6("PrinterFunction",7,adr(phnd),adr(chnd),adr(nom_image$),largeur%,hauteur%)

Cet exemple imprime l'image contenue dans le fichier MonImage.jpg à partir de la position active sur une largeur de 600 pixels et une hauteur de 800 pixels. Rappelons que la position active est (0,0) au début, puis se trouve à la fin de chaque texte ou graphique imprimés. Elle peut être modifiée par PrinterFunction code 4, en absolu ou en relatif.

Je sais, pour l'instant, tout est en pixels. La gestion des mesures en millimètres suivra plus tard.

ATTENTION: l'image sera adaptée au rectangle dont le coin en haut à gauche est la position active, et le coin en bas à droite la position active additionnée de largeur et hauteur. Si le ratio hauteur/largeur ne correspond pas à celui de l'image d'origine, l'image sera déformée: aplatie horizontalement ou verticalement.

On peut bien sûr dessiner, autour de l'image imprimée, un rectangle arrondi avec une épaisseur de trait et une couleur choisies avec fond transparent pour obtenir un cadre... Laissez aller votre inventivité !

Voilà, au lieu d'utiliser WinTextPrint, on peut maintenant utiliser directement un programme Panoramic pour tout imprimer, y compris des planches photos (n'est-ce pas, JL35 ?).
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Invité
Invité



MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Lun 3 Mai 2010 - 2:09

Je suis impressionné.
Pour l'instant je n'ai pas regardé ton programme, je suis sur le mien, et j'ai plus d'encre pour faire des essais.
Je ne sais pas si il y des explications sur la façon de procéder, mais l'envie ne manque pas d'aller voir.
Bonne nuit.
Revenir en haut Aller en bas
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Lun 3 Mai 2010 - 10:15

Pour tester toute impression sans gâcher d'encre ni de papier, on peut installer une imprimante virtuelle créant un fichier PDF au lieu de l'édition physique.

Moi, j'utilise PDFCreator de SourceForge.Non limité, il permet d'enchaîner directement la visualisation si on le désire - on voit ainsi directement le résultat à l'écran !

Voici le lien du téléchargement:
http://prdownloads.sourceforge.net/pdfcreator/PDFCreator-0_9_9_setup.exe?download

Je mettrai un programme de démonstration en ligne rapidement.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Jean Claude

avatar

Nombre de messages : 5061
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Lun 3 Mai 2010 - 12:44

Bravo, çà c'est écolo.....
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Lun 3 Mai 2010 - 18:12

Voici mon petit programme démo pour les fonctions d'impression de ma DLL. Pour l'essayer, pensez à télécharger ma dernière DLL et de la copier dans le répertoire de l'éditeur Panoramic, en la renommant KGF.dll !

Code:

    dim i%, j%, phnd%, chnd%, dh, dv, lg%, ht%, horz, vert, pi2, fact, s$
    dim x%, y%, t%, p%, cf%, cb%, n%, chform%
   
' charger la DLL
    dll_on "KGF.dll"

' spécifier le titre pour le queue manager de Windows
    s$ = "Test Impression KGF.DLL"
    i% = dll_call4("PrinterManager",6,adr(phnd%),adr(s$),len(s$))

' début d'impression
    i% = dll_call4("PrinterManager",1,adr(phnd%),adr(chnd%),0)

' boucle pour imprimer des rectangles de couleur aléatoire
    pi2 = 3.14159/2.0
    horz = 4958
    vert = 7016
    for j%=1 to 255
        fact = cos((pi2/255)*j%)
        x% = int((horz/2.0)*(1-fact) + 0.5)
        y% = int((vert/2.0)*fact + 0.5)
        lg% = int(horz*fact +0.5)
        ht% = int(vert*(1-fact) + 0.5)
' couleur aléatoire, fond transparent, épaisseur 1
        cf% = (int((rnd(255)))*256+int(rnd(255)))*256+int(rnd(255))  : ' couleur du dessin
        cb% = -2                          : ' fond transparent
        n% = 1                            : ' épaisseur du trait
        i% = dll_call6("PrinterFunction",6,adr(phnd%),adr(chnd%),cf%,cb%,n%)
' positionner sur le coin en haut à gauche du rectangle
        n% = 0    : ' absolu
        i% = dll_call6("PrinterFunction",4,adr(phnd%),adr(chnd%),n%,x%,y%)
' tracer le rectangle
        p% = 1    : ' rectangle
        i% = dll_call6("PrinterFunction",2,adr(phnd%),adr(chnd%),p%,lg%,ht%)
    next j%
   
' couleur bleue sur fond transparent, épaisseur 50
    cf% = 255*256*256                : ' couleur du dessin
    cb% = -2                          : ' fond transparent
    n% = 50                          : ' épaisseur du trait
    i% = dll_call6("PrinterFunction",6,adr(phnd%),adr(chnd%),cf%,cb%,n%)

' positionner sur le coin en haut à gauche du rectangle à tracer
    n% = 0                            : ' absolu
    x% = 1500
    y% = 500
    i% = dll_call6("PrinterFunction",4,adr(phnd%),adr(chnd%),n%,x%,y%)
   
' tracer un rectangle bleu eux coins arrondis
    p% = 1 + 256                      : ' rectangle arrondi
    lg% = 2000
    ht% = 500
    i% = dll_call6("PrinterFunction",2,adr(phnd%),adr(chnd%),p%,lg%,ht%)
   
' positionner sur coin en haut à gauche du texte à imprimer
    n% = 0                            : ' absolu
    x% = 1700
    y% = 600
    i% = dll_call6("PrinterFunction",4,adr(phnd%),adr(chnd%),n%,x%,y%)
   
' police Arial taille 24 en gras et italique
    s$ = "Arial"                      : ' nom police
    n% = 24 + 256 + 512              : ' taille police + gras + italique
    cf% = 255                        : ' couleur texte
    i% = dll_call6("PrinterFunction",5,adr(phnd%),adr(chnd%),adr(s$),cf%,n%)
   
' imprimer un texte avec le fond transparent
    n% = 1                            : ' fond transparent
    s$ = "Démo Impression"
    i% = dll_call6("PrinterFunction",1,adr(phnd%),adr(chform%),adr(s$),len(s$),n%)

' fin impression
    i% = dll_call4("PrinterManager",3,adr(phnd%),adr(chnd%),0)
    message "Le test est terminé !"

' décharger la DLL
    dll_off
    terminate
   
    end

Je n'ai pas mis l'impression des images pour éviter de poster des images, pais on peut l'ajouter facilement !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Invité
Invité



MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Jeu 6 Mai 2010 - 15:27

Salut Klaus,
Je viens de publier un programme "editeur de cellules" et j'aurai voulu faire l'essai de l'imprimer.

Je me comprends bien, mais parfois du mal de comprendre les autres.
Peux-tu me donner une piste pour y arriver. Un s'agit bien d'un picture.
Le modèle que l'on voit en présentation, n'est pas intéressant pour imprimer, mais il m'ai venu l'idée que mon programme pouvait servir de support pour faire des lettres, ou une facture... Je vais bientôt rajouter la possibilité de mettre des fontes différentes et de formater des nombres, et ce programme pourra donc servir de support pour la présentation d'une fiche (enfin je pense, il faut le vérifier avant).

Ton expérience serait la bienvenu pour l'impression de ce document.
Merci à toi.
Revenir en haut Aller en bas
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 7 Mai 2010 - 1:31

je suis sonvaincu qu'avec mes fonctions d'impression, tu peux éditer des documents comme des lettres ou des factures, de façon très élégante.

Mon petit programme de démonstation ne montre pas l'impression d'une image. Je l'ai dit dans le post. Il montre le choix d'une police, de sa taille et des attributs, le positionnement direct du point "actif" sur la page à imprimer, le dessin de rectangles creux en couleur, au coins à angle droit ou arrondis, en choisissant l'épaisseur du trait. Il montre également qu'on peut imprimer un texte avec fond transparent, sans écraser les dessins qui se trouvent en-dessous.

Il y a beaucoup plus de possibilités. Les formes possibles sont rectangles ou éllipses (donc cercles aussi), et pour tous deux un peut choisir la couleur du trait, l'épaisseur du trait et la couleur du fond qui peut aussi être transparent. On peut tracer des traits droits, isolés ou formant des polygones quelconques, en choisissant là encore couleur et épaisseur du trait. Et on peut imprimer des images en spécifiant le nom du fichier et les dimensions résultantes souhaitées - les déformations et zooms se font automatiquement. Toute action d'impression se fait à la position "active" qui est au départ (0,0) soit le coin en haut à gauche de la feuille. La position "active" se déplace avec chaque action d'impression pour se trouver sur le coin en bas à droite de la zone fraichement imprimée. On peut déplacer la position active en absolu en spécifiant de nouvelles coordonnées, et en relatif en spécifiant les décalages (positifs ou négatifs) dans les deux directions. On peut demander une "nouvelle page" ce qui imprime la page en cours de préparation et prépare une nouvelle page blanche avec la position active en (0,0). Et bien sûr, il y a une fonction pour "début d'impression", "fin d'impression" et le choix de l'imprimante. Après avoir choisi l'imprimante (nécessaire uniquement si l'on ne veut PAS imprimer sur l'imprimante Windows par défaut) et avant de faire début d'impression, on peut choisir l'orientation portrait (par défaut) ou paysage, le nombre de copies (1 par défaut) et le titre d'impression (pour le queue manager de Windows).

Dans un post un peu plus haut, j'ai détaillé tout cela en classant toutes les fonctions en 5 "groupes". Il faut utiliser les groupes dans l'ordre croissant de leur numéro. A l'intérieur d'un groupe, on peut utiliser autant de fonctions que l'on veut, dans n'importe quel ordre, mais une fois passé au groupe n, on ne peut plus utiliser les instructions du groupe n-1, n-2 etc. Les groupes représentent une suite logique de fonctions.

Avec ces fonctions, tu peux facilement réaliser un sous-programme dessinant le cadre ou formulaire d'une page, que ce foit facture ou similaire, avec les cadres, les libellés fixes, un fond de page sous forme d'image, des logos ou cliparts sous forme d'images etc. Tu peux ensuite faire un autre sous-programme remplissant les données dynamiques, celles qui changent à chaque édition ou à chaque page. Tu réalises finalement l'habillage de tout cela avec début et fin d'impression, et ton programme d'édition aura la structure suivante:

Citation :

dim numero_page%, facture_est_finie
label edi_fac, edi_fac_nouvelle_page, fact_formulaire, fact_data
label ouvre_imprimante, ferme_imprimante, nouvelle_page, choix_imprimante




edi_fac:
gosub choix_imprimante
numero_page% = 0
facture_est_finie% = 0
gosub ouvre_imprimante
edi_fact_nouvelle_page:
gosub fact_formulaire

' préparer les données de la page à imprimer
' éventuellement mettre facture_est_finie% = 1


gosub fact_data

if facture_est_finie%=1
gosub ferme_imprimante
return
else
gosub nouvelle_page
numero_page% = numero_page% + 1
goto edi_fact_nouvelle_page
end_if
return : ' ce return ne sera jamais atteint, présent uniquement pour la clarté

' ici, on place les différentes routines de service...


Ce n'est bien sûr qu'une suggestion et pas un programme tout prêt à prendre par copier/coller. C'est juste un exemple de structure qui peut être adapté à volonté. Ce que j'ai voulu montrer, c'est la séparation rigoureuse de tout ce qui est de l'ordre du formalisme (ouverture/fermeture, dessin du formulaire etc) de l'édition des données proprement dites. Une fois qu'on a conçu le formulaire (représenté par le sousprogramme fact_formulaire ce qui n'est après tout qu'un simple traval de conception graphique, on peut se concentrer sur le coeur de l'édition qui est le traitement des données, représenté par le sousprogramme fact_data.

Je t'assisterai bien sûr avec des conseils, des examples et des bouts de code.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Invité
Invité



MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 7 Mai 2010 - 1:53

Je te remercie pour ta réponse.
Je vois que je ne suis pas au bout de mes peines, et je pense que je vais laisser cela de côté. Si encore il n'y avait qu'à positionner du texte, mais le fond en couleur de chaque ligne, complique tout.

Si je trouve le temps, j'essayerai de voir si je ne peux pas utiliser IrfanView.

Je transforme du texte en image dans mon programme, et ensuite l'image en texte, tu comprendras que c'est pas logique.

Merci bien pour tes conseils, mais là je ne crois pas que ton programme conviendra (en tout cas pour la facilité). Il n'y a pas de reproche, il n'avait pas été prévu pour cela, et le monde ne se construit pas en un jour.

Je trouverai peut-être une autre solution. Les idées je n'ai que ça, mais rarement le temps d'aller au bout, et mon programme, si tu lis mes postes, n'est pas fini (d'autant qu'il y en a deux en parallèle, avec des différences).

Bonne nuit, il y a du travail demain.
Revenir en haut Aller en bas
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 7 Mai 2010 - 9:55

Je crois qu')la fois, j'au dû mal comprendre et mal me faire comprende. Si tuas déjà une image à imprimer, il suffit, avec mes routines, de faire la séquence suivante:
Citation :

dim i%,phnd%,chnd%,nom$,larg%,haut%,nom$, num_fact%

' préparation de l'impression
res% = dll_call4("PrinterManager",5,phnd%,chnd%,2) : ' deux copies
nom$ = "Facture " + str$(num_fact%)
res% = dll_call4("PrinterManager",6,phnd%,adr(nom$),len(nom$)) : ' nom de l'impression

' impression proprement-dite
res% = dll_call4("PrinterManager",1,phnd%,chnd%,0) : ' début d'impression
nom$ = "nom_du_fchier_image.jpg" ; ' ou BMP ou GIF
larg% = ??? : ' largeur de l'image sur papier
haut% = ??? : ' hauteur de l'mage sur papier
res% = dll_call6("PrinterFunction",7,phnd%,chnd%,adr(nom$),larg%,haut%) : ' impression de l'image
res% = dll_call4("PrinterManager",3,phnd%,chnd%,0) : ' fin d'impression
Comme tu vois, le tour est joué avec 2 appels à mes fonctions pour préparer et 3 appels à mes fonctions pour éditer !
!
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Invité
Invité



MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 7 Mai 2010 - 10:49

Merci, je verrais cela. Hier j'avais fait un essais et j'avais un message d'erreur en essayant l'exemple:
(29) Not Correct Arithmetic Expression : error in Function Line 10.
C'était la copie de ton programme.

Prends ton temps pour répondre, je me sauve maintenant.
Revenir en haut Aller en bas
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 7 Mai 2010 - 11:03

Cette erreur vient quand la DLL n'est pas chargée correctement.

Je rappelle qu'il faut placer le fichier KGF.dll dans le répertoire de l'éditeur Panoramic ainsi qu'éventuellement dans le répertoire dans lequel se trouve l'exécutable que u génères à partir de ton programme Panoramic.

Pour cela, il faut aussi renommer KGF.17.dll téléchargeable à partir de mon site, en KGF.dll. Et là, ça marchera.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Invité
Invité



MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 7 Mai 2010 - 13:45

Le dernier kgf.dll est le 28, j'ai cru que c'était le dernier, donc j'ai recopié le même. Excuses moi. Mais pour l'instant mon programme est de côté pour ce truc là, vu que je sais pas repérer la ligne dans l'écran d'un picture lorsqu'il y a un scroll.
merci
Revenir en haut Aller en bas
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 7 Mai 2010 - 13:58

Sur mon site, c'est toujours KGF.17.dll qui est proposé en téléchargement. Il date du 4/5/2010 et c'est le plus récent.

Je suis à ta disposition si tu as besoin de moi.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Invité
Invité



MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Ven 7 Mai 2010 - 14:04

Compris,j'ai seulement fait une erreur de chargement. Par contre ça ne résoudra pas le problème de repérage de ligne de mes cellules avec les ascenseurs, ce qui fait que c'est pas urgent.
Revenir en haut Aller en bas
JL35



Nombre de messages : 5992
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Sam 8 Mai 2010 - 22:47

Bonsoir Klaus.
En rentrant j'ai le plaisir de découvrir la nouvelle version de KGF.dll.
Je vais pouvoir attaquer les essais d'impression d'images.

Juste une petite remarque concernant ton module de test: les dimensions indiquées en pixels horz = 4958 et vert = 7016 correspondent aux dimensions totales de la page A4, soit 210x297 millimètres.
Ce qui conduit à une impression du losange tronquée à droite en et bas du fait des marges non imprimables.
Sur mon imprimante, le zéro est à 3mm du bord gauche et à 4 mm du bord haut. Et la marge non imprimable est de 4 mm à droite et 3 mm en bas.
Donc une surface imprimable de 203 x 289 millimètres.
Pour avoir la figure complète, j'applique une règne de 3 qui me conduit à mettre les constantes horz = 4793 et vert = 6827, et là j'obtiens le losange complet.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10127
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   Sam 8 Mai 2010 - 23:27

Tu as parfaitement raison: j'ai simplement appliqué les dimensions physiques du papier. En réalité, il faudrait déduite une petite marge (dépendante de chaque imprimante physique) pour avoir la zone imprimable, puis déduire les notions de marge gauche, droite, haute et basse. Ma DLL contiendra bientôt une fonction qui en un seul appel retournera toutes ces valeurs. C'est en cours...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé




MessageSujet: Re: Projet en cours: gestion d'impression en texte ET graphique   

Revenir en haut Aller en bas
 
Projet en cours: gestion d'impression en texte ET graphique
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 2Aller à la page : 1, 2  Suivant
 Sujets similaires
-
» Projet en cours: gestion d'impression en texte ET graphique
» [Projet en cours ] Titix Contre le Dr Shlumpt
» PROJET EN COURS... Salle mutlisport - HYH créations
» [Résolu] Texte impossible dans Outlook Express
» Mon dernier projet

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: