| Formatage (page A4) | |
|
|
|
Auteur | Message |
---|
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Formatage (page A4) Ven 22 Fév 2013 - 17:11 | |
| Quant à moi le programme m'affiche des zéros partout, quelque chose ne doit pas lui plaire... | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Formatage (page A4) Ven 22 Fév 2013 - 17:27 | |
| @Ygeronimi: Tu as donc le même gestionnaire que moi, sous XP. Tu as 2 solutions: 1. Dans l'onglet "principal", premier cadre, tu sélectionnes le symbole juste à gauche (texte) 2. Dans l'onglet "plus d'options", deuxième combo, passe de "fin" à "normal". C'est cette dernière configuration que j'emploie chez moi. Voici ce que ça donne: @JL35: Le programme essaie d'utiliser l'imprimante par défaut. Sélectionne une imprimante par le panneau de contrôle, ou ajoute la ligne - Code:
-
SelectWindowsPrinter() juste devant PrinterManagerStartDoc(). J'ai ajouté cette ligne dans le source posté plus haut. EDIT @YgeronimoDésolé. cela ne suffit pas. Dans l'onglet "principal", il faut cocher " Brouillon", et ne pas toucher l'onglet "Plus d'options". Là, ça passe. Je vais faire des recherches pour voir si je peux réduire le besoin en mémoire, afin de tenir compte des résolutions plus fortes. | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Formatage (page A4) Ven 22 Fév 2013 - 17:54 | |
| Pour moi ça ne change rien, j'ai bien ajouté le SelectWindowsPrinter avant le StartDoc, mais ça n'ouvre aucune boîte de dialogue et ça rend une chaîne vide (sans affichage d'erreur)... et je n'ai qu'une imprimante, celle par défaut. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Formatage (page A4) Ven 22 Fév 2013 - 18:19 | |
| Là, je ne comprends pas. Cela marche à l'évidence sous XP (chez moi), sous W7 (Ygeronimi), alors ça devrait marcher partout. As-tu la dernière version de KGF.dll et KGF_SUB.bas ? | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Formatage (page A4) Ven 22 Fév 2013 - 18:23 | |
| Oui, je les ai téléchargés tout à l'heure, tous les deux. Et ce qui encore plus bizarre, c'est que si je fais: - Code:
-
KGF_initialize("C:\PANORAMIC\KLAUS\DLLs\KGF.dll") KGFdllVersion(): Message str$(KGFdllVersion%) SelectWindowsPrinter() message str$(SelectWindowsPrinter)+" " + SelectWindowsPrinter$ stop PrinterManagerStartDoc() ... ça m'affiche 0 dans les deux messages... et pas d'erreur signalée et pas d'affichage de boîte de dialogue pour le choix imprimante. comme si ça passait à travers la dll sans rien faire. Bon, là je dois m'absenter un peu. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Formatage (page A4) Ven 22 Fév 2013 - 18:26 | |
| Alors, ça vient de ta version de Panoramic. Charge la version V0.24i10 du 14 Février 2013 - elle corrige justement ce problème ! | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 22 Fév 2013 - 18:54 | |
| voilà ce que j'obtiens en passant en "Brouillon" | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Formatage (page A4) Ven 22 Fév 2013 - 19:15 | |
| Moi aussi. Là, ça doit passer... | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Formatage (page A4) Ven 22 Fév 2013 - 19:21 | |
| J'ai fait une nouvelle version de ce petit programme pour montrer les autres informations disponibles, également: - Code:
-
' infos_imprimante.bas
dim R%, G%, B%
memo 1 : top 1,10 : left 1,10 : width 1,550 : height 1,400 font_name 1,"Courier"
KGF_initialize("KGF.dll")
SelectWindowsPrinter() PrinterManagerStartDoc()
item_add 1,"Paramètres de la page d'impression:" PrinterFunctionGetMetrics(1) item_add 1,"PHYSICALOFFSETX décalage horizontal en pixel: "+str$(PrinterFunctionGetMetrics%) PrinterFunctionGetMetrics(2) item_add 1,"PHYSICALOFFSETY décalage vertical en pixel: "+str$(PrinterFunctionGetMetrics%) PrinterFunctionGetMetrics(3) item_add 1,"PHYSICALWIDTH largeur totale en pixel: "+str$(PrinterFunctionGetMetrics%) PrinterFunctionGetMetrics(4) item_add 1,"PHYSICALHEIGHT hauteur totale en pixel: "+str$(PrinterFunctionGetMetrics%) PrinterFunctionGetMetrics(5) item_add 1,"LOGPIXELSX résolution horizontale en pixels/pouce: "+str$(PrinterFunctionGetMetrics%) PrinterFunctionGetMetrics(6) item_add 1,"LOGPIXELSY résolution verticale en pixels/pouce: "+str$(PrinterFunctionGetMetrics%) PrinterFunctionGetMetrics(7) item_add 1,"HORZRES largeur utile en pixels: "+str$(PrinterFunctionGetMetrics%) PrinterFunctionGetMetrics(8) item_add 1,"VERTRES hauteur utile en pixels: "+str$(PrinterFunctionGetMetrics%) PrinterFunctionGetMetrics(9) item_add 1,"HORZSIZE largeur utile en milimètres: "+str$(PrinterFunctionGetMetrics%) PrinterFunctionGetMetrics(10) item_add 1,"VERTSIZE hauteur utile en milimètres: "+str$(PrinterFunctionGetMetrics%)
item_add 1,"" item_add 1,"Autres paramètres:" PrinterFunctionGetValues(1) item_add 1,"abscisse (x) de la position active: "+str$(PrinterFunctionGetValues%) PrinterFunctionGetValues(2) item_add 1,"ordonnée (Y) de la position active: "+str$(PrinterFunctionGetValues%) PrinterFunctionGetValues(3) B% = bin_and(PrinterFunctionGetValues%,255) G% = bin_and(int(PrinterFunctionGetValues%/256),255) R% = int(int(bin_and(PrinterFunctionGetValues%,255*256*256)/256)/256) item_add 1,"couleur de la police: "+str$(R%)+","+str$(G%)+","+str$(B%) PrinterFunctionGetValues(4) B% = bin_and(PrinterFunctionGetValues%,255) G% = bin_and(int(PrinterFunctionGetValues%/256),255) R% = int(int(bin_and(PrinterFunctionGetValues%,255*256*256)/256)/256) item_add 1,"couleur du fond: "+str$(R%)+","+str$(G%)+","+str$(B%) PrinterFunctionGetValues(5) B% = bin_and(PrinterFunctionGetValues%,255) G% = bin_and(int(PrinterFunctionGetValues%/256),255) R% = int(int(bin_and(PrinterFunctionGetValues%,255*256*256)/256)/256) item_add 1,"couleur de dessin: "+str$(R%)+","+str$(G%)+","+str$(B%) PrinterFunctionGetValues(6) item_add 1,"taille de la police: "+str$(PrinterFunctionGetValues%)
PrinterManagerReset(0) end
#INCLUDE "KGF_SUB.bas"
ATTENTION: il faut recharger KGF_SUB.bas (KGF.dll est inchangée) ! Et voici ce que ça donne avec ma Epson Stylus: | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 22 Fév 2013 - 19:31 | |
| je commence à comprendre le mécanisme... ...enfin presque... Ce qui me parait fastidieux c'est la mise en page. Imaginons un memo avec dix lignes il va falloir répéter la sub dix fois avec les paramètres adéquats pour que les lignes de texte ne se chevauchent pas en fonction de la taile de la police et mesurer la ligne pour qu'elle ne dépasse pas de la page... et si je veux imprimer un tableau.... Ouff!...je crois que je vais attendre un peu avant de me lancer dans ces fonctions là... | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Formatage (page A4) Ven 22 Fév 2013 - 20:17 | |
| Merci Klaus ! effectivement, j'ai loupé un épisode, j'étais resté sur la i9 ! Et maintenant tout va beaucoup mieux ! Je l'avais pourtant lu, mais... en diagonale... Bon, je peux poursuivre mes investigations. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Formatage (page A4) Sam 23 Fév 2013 - 11:13 | |
| J'ai mis en place une nouvelle version de KGF.dll qui gère maintenant correctement les impression en résolution 600 dpi. C'est la version V1.90 du 23 Février 2013. | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 23 Fév 2013 - 12:01 | |
| L'impression fonctionne en mode normal mais avant l'impression j'ai toujours ce message : | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Formatage (page A4) Sam 23 Fév 2013 - 12:19 | |
| C'est normal, Ygeronimi ! Cela vient de la fonction PrinterFunctionFlood que j'utilise pour remplir l'intérieur d'un rectangle (lignes 221 et 232). Ton driver d'imprimante ne gère pas cela, alors tu devrais désactiver ces lignes. | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 23 Fév 2013 - 12:35 | |
| ok ! | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Formatage (page A4) Sam 23 Fév 2013 - 13:49 | |
| @Klaus, une question annexe: est-ce que Print.dll est l'image exacte des fonctions d'impression de KGF.dll ? autrement dit, tenu à jour en même temps (puisqu'il est distribué avec) ? C'est ce que j'utilise, pour n'avoir à charger que les fonctions que j'utilise. (et j'imprime en 600 dpi).
PS Je crois que j'ai la réponse à ma question en regardant les dates des modules: janvier 2012 pour Print.dll... dommage. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Formatage (page A4) Sam 23 Fév 2013 - 17:57 | |
| Effectivement, je ne maintiens plus les DLLs de détail - trop de travail. Trop de travail. Tout est intégré dans KGF.dll - je l'avais d'ailleurs signalé au moment où j'ai pris cette décision. Et je l'ai fait parce que certains Panoramiciens me demandaient de faire une seule DLL regroupant tout, car cela devenait complexe à gérer dans un programme, dès lors qu'on voulait utiliser des fonctions résidant dans des DLLs différentes.
Donc, les autres DLLs ne sont plus là que pour des raisons historiques - essentiellement parce que Severin m'a demandé de ne pas les supprimer. | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Formatage (page A4) Dim 24 Fév 2013 - 0:48 | |
| OK Klaus, merci et dont acte ! | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Formatage (page A4) Dim 24 Fév 2013 - 15:18 | |
| Mon programme posté sur la page 3 (affichage des infos relatives à l'imprimante) a été modifié de sorte à tenir compte des nouvelles infos retournées par le code 9 de PrinterFunction (largeur et hauteur du texte imprimé sur le papier). Ceci fait partie de la nouvelle version V1.91 de KGF.dll. | |
|
| |
Contenu sponsorisé
| Sujet: Re: Formatage (page A4) | |
| |
|
| |
| Formatage (page A4) | |
|