FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Impression de fichiers PDF Emptypar Pedro Aujourd'hui à 10:37

» Un autre pense-bête...
Impression de fichiers PDF Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Impression de fichiers PDF Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Impression de fichiers PDF Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Impression de fichiers PDF Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Impression de fichiers PDF Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Impression de fichiers PDF Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Impression de fichiers PDF Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Impression de fichiers PDF Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Impression de fichiers PDF Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Impression de fichiers PDF Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Impression de fichiers PDF Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Impression de fichiers PDF Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Impression de fichiers PDF Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Impression de fichiers PDF Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le Deal du moment : -55%
Friteuse sans huile – PHILIPS – Airfryer ...
Voir le deal
49.99 €

 

 Impression de fichiers PDF

Aller en bas 
4 participants
AuteurMessage
JL35




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

Impression de fichiers PDF Empty
MessageSujet: Impression de fichiers PDF   Impression de fichiers PDF EmptyJeu 18 Nov 2010 - 15:52

Le problème est le suivant: souvent quand on achète un appareil électronique, il est livré avec un manuel d'utilisation sous la forme d'un fichier Pdf sur un CD joint (en plus d'une vague brochure d'installation en 36 langues très succincte).
Il y a deux solutions: soit on imprime le manuel en entier, qui peut être très long avec un tas de pages sans intérêt, d'où gâchis de papier et d'encre, soit on le consulte sur l'écran, mais il faut alors allumer l'ordinateur, etc.

J'ai écrit un petit programme qui permet de regrouper sur une feuille A4 plusieurs pages choisies du pdf côte à côte: au choix 2, 4 ou 9 pages (si une seule page, autant prendre Acrobat Reader, à 9 pages il faut de bons yeux, et au-delà il faudrait un microscope).
On peut évidemment faire du recto/verso (manuel), ce qui économise deux fois plus.

Le programme choisit automatiquement le format portrait ou paysage en fonction des dimensions (rapport largeur/hauteur) de la page d'origine.
Les pages pdf sont converties en images, puis imprimées à l'aide de WinTextPrint de Klaus qui permet de positionner avec précision des images sur la page à imprimer.

Je ne sais pas si ça peut intéresser grand monde, mais si oui je fournirais le programme dans la rubrique 'Mes sources...' .

Exemple:
4 pages/A4 avec les pages d'origine verticales (portrait), 9 pages/A4 avec les pages d'origine horizontales (paysage):
Impression de fichiers PDF 0exemple


Dernière édition par JL35 le Jeu 18 Nov 2010 - 17:58, édité 1 fois
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyJeu 18 Nov 2010 - 16:32

Je résume, le programme permet de transformer une page d'un même fichier pdf en image
pour pouvoir l'imprimé séparement.
C'est dèja possible avec Adobe reader 9.
- ouvrir l'onglet page
- sélectionner une page
- Click_droit,puis sélectionner des pages
- choisir impression page sélectionnée

L'idée était bonne....

A+
Revenir en haut Aller en bas
JL35




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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyJeu 18 Nov 2010 - 17:39

Jean Claude, je ne suis pas sûr que tu aies bien lu ce que j'ai écrit.
Le but n'est évidemment pas d'imprimer une ou plusieurs pages d'un pdf, ça on peut le faire depuis toujours dans Acrobat Reader.
Le but est de regrouper plusieurs pages du pdf sur la même feuille, de façon à économiser des feuilles et de l'encre et de l'encombrement.

A ma connaissance on ne peut pas faire ça avec Acrobat, ou alors quelque chose m'a échappé ?

Un exemple:
J'ai un fichier pdf (celui à droite ci-dessus) dont les pages font 162x128 mm (Fichier, Propriétés), si je l'imprime tel quel, les pages pdf vont être centrées au milieu d'une feuille A4, avec plein de blanc tout autour
d'où gaspillage de papier.
Si j'en imprime 100 pages comme ça... Mad
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyJeu 18 Nov 2010 - 20:00

Ho que si! j'ai bien lu ce que tu as écrit, mais je n'ai pas bien analysé une phrase
Citation :
J'ai écrit un petit programme qui permet de regrouper sur une feuille A4 plusieurs pages choisies du pdf côte à côte

Vu comme çà, cà apporte éffectivement un plus.

Envoi ton bébé, pour voir, cela pourrait être utile

Je suis mauvais Mad

Revenir en haut Aller en bas
JL35




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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyJeu 18 Nov 2010 - 20:29

Pourtant, il y avait les exemples...

Bon alors, à la demande générale et enthousiaste de Jean Claude, j'envoie:
Code:
' Impression partielle d'un fichier pdf: 2, 4, 6 ou 9 pages par A4 (la page sera
' orientée automatiquement pour un remplissage optimum, en fonction du rapport
' largeur/hauteur de la page d'origine du pdf: on considère a priori que toutes
' les pages ont le même rapport). Mais on peut forcer l'orientation.
' ----------------------------------
' Pour obtenir les dimensions d'une page PDF en mm: on convertit la page en image
' bmp, puis on récupère dans le fichier les dimensions de l'image en pixels, que
' l'on convertit en millimètres.
' Si le PDF est protégé par mot de passe, il faut le déprotéger préalablement sur:
' http://freemypdf.com (déprotection en ligne, téléchargement d'une copie libre)
' -----------------------------------
' Les pages désirées du pdf sont converties en images jpg et imprimées comme telles
' par l'excellent WinTextPrint de notre ami Klaus. La conversion pdf->image est
' effectuées par un module p2iagent (trouvé également chez Klaus sous le nom
' ConvertPDF.exe)
'
' PS: Le nom du fichier PDF ne doit pas comporter d'espaces !
'    -----------------------------------------------------
DIM pdf2img$, AcroRd$, f$, i%, w%, h%, wm%, hm%, x0, y0, l, h, hmax, lmax
DIM fimg$(10), fpr$, fi$, wtp$, a$, r, pge(10), pp(10), mg%, mh%, md%, mb%, ev%, eh%
DIM mpx, w0, h0, x10, y10, w10, h10, yd, orient, npg%, rtmp$
DIM x(10), y(10)
DIM bt%, dp%, dq%, omg%, omh%, omd%, omb%, oev%, oeh%, ppa%
LABEL Acrobat, rr, rs, Chf, Majm, Trait, DimImg, Imprime, Majp

AcroRd$ = "C:\Progra~1\Adobe\Reader~1.0\Reader\AcroRd32.exe ": ' Acrobat Reader
pdf2img$ = "C:\UTIL\ConvertPDF.exe ": ' (= p2iagent.exe: conversion pdf -> image)
' Arguments: --dest=...  répertoire de destination
'            --format=... format de sortie (0 BMP, 1 JPG)
'            --help      affichage de l'aide, et exit
'            --no-text    conversion uniquement des images et dessins
'            --pages=...  n°s de pages (ex. 1,3,5-10 = pages 1,3 et 5 à 10)
'            --pswd=...  mot de passe du source PDF
'            --src=...    path du document PDF source

wtp$ = "C:\UTIL\WinTextPrint.exe "
rtmp$ = "Z:": ' répertoire de travail
fpr$ = rtmp$ + "\Fprn.txt": ' fichier temporaire d'impression
f$ = ""
orient = 0: ' orientation portrait
mpx = 3.71: ' rapport pixels/mm à l'écran (nb de pixels par mm)
            ' à ajuster, en fonction de la taille de l'écran.
w0 = 1130: h0 = 1150
h0 = SCREEN_Y-30
WIDTH 0, w0: HEIGHT 0, h0 : COLOR 0, 230,255,255
FONT_BOLD 0
y10 = 5
PICTURE 10: ' image de la feuille A4
IF orient = 0
    w10 = 210*mpx: h10 = 297*mpx: x10 = 330: ' dimensions en pixels, portrait
ELSE
    w10 = 297*mpx: h10 = 210*mpx: x10 = 5: ' dimensions en pixels, paysage
END_IF

yd = 210*mpx+130
TOP 10, y10: LEFT 10, x10: WIDTH 10, w10: HEIGHT 10, h10
2D_TARGET_IS 10: 2D_FILL_COLOR 255,255,230:2D_RECTANGLE 0,0,w10-1,h10-1
2D_PEN_COLOR 255,0,0: 2D_LINE 1,3*mpx,w10-2,3*mpx: 2D_LINE 1,h10-4*mpx,w10-2,h10-4*mpx-1
2D_LINE 3*mpx,1,3*mpx,h10-2: 2D_LINE w10-4*mpx-1,1,w10-4*mpx-1,h10-2
SPIN 12: TOP 12, yd: LEFT 12, 55: WIDTH 12, 50
ALPHA 13: TOP 13, yd+2: LEFT 13, 10: CAPTION 13, "Page 1:"
SPIN 14: TOP 14, yd: LEFT 14, 155: WIDTH 14, 50
ALPHA 15: TOP 15, yd+2: LEFT 15, 110: CAPTION 15, "Page 2:"
SPIN 16: TOP 16, yd+25: LEFT 16, 55: WIDTH 16, 50
ALPHA 17: TOP 17, yd+27: LEFT 17, 10: CAPTION 17, "Page 3:"
SPIN 18: TOP 18, yd+25: LEFT 18, 155: WIDTH 18, 50
ALPHA 19: TOP 19, yd+27: LEFT 19, 110: CAPTION 19, "Page 4:"
SPIN 20: TOP 20, yd+50: LEFT 20, 55: WIDTH 20, 50
ALPHA 21: TOP 21, yd+52: LEFT 21, 10: CAPTION 21, "Page 5:"
SPIN 22: TOP 22, yd+50: LEFT 22, 155: WIDTH 22, 50
ALPHA 23: TOP 23, yd+52: LEFT 23, 110: CAPTION 23, "Page 6:"
SPIN 24: TOP 24, yd+75: LEFT 24, 55: WIDTH 24, 50
ALPHA 25: TOP 25, yd+77: LEFT 25, 10: CAPTION 25, "Page 7:"
SPIN 26: TOP 26, yd+75: LEFT 26, 155: WIDTH 26, 50
ALPHA 27: TOP 27, yd+77: LEFT 27, 110: CAPTION 27, "Page 8:"
SPIN 28: TOP 28, yd+75: LEFT 28, 255: WIDTH 28, 50
ALPHA 29: TOP 29, yd+77: LEFT 29, 210: CAPTION 29, "Page 9:"
FOR i% = 20 TO 29: HIDE i%: NEXT i%

omg% = 30: omh% = omg% + 2: omd% = omh% + 2: omb% = omd% + 2
oev% = omb% + 2: oeh% = oev% + 2
SPIN omg%: TOP omg%, yd+105: LEFT omg%, 55: WIDTH omg%, 50
ALPHA omg%+1: TOP omg%+1, yd+107: LEFT omg%+1, 5: CAPTION omg%+1, "Marge G"
SPIN omh%: TOP omh%, yd+105: LEFT omh%, 155: WIDTH omh%, 50
ALPHA omh%+1: TOP omh%+1, yd+107: LEFT omh%+1, 105: CAPTION omh%+1, "Marge H"
SPIN omd%: TOP omd%, yd+130: LEFT omd%, 55: WIDTH omd%, 50
ALPHA omd%+1: TOP omd%+1, yd+132: LEFT omd%+1, 5: CAPTION omd%+1, "Marge D"
SPIN omb%: TOP omb%, yd+130: LEFT omb%, 155: WIDTH omb%, 50
ALPHA omb%+1: TOP omb%+1, yd+132: LEFT omb%+1, 105: CAPTION omb%+1, "Marge B"

SPIN oev%: TOP oev%, yd+105: LEFT oev%, 255: WIDTH oev%, 50
ALPHA oev%+1: TOP oev%+1, yd+107: LEFT oev%+1, 210: CAPTION oev%+1, "Ecart V"
SPIN oeh%: TOP oeh%, yd+130: LEFT oeh%, 255: WIDTH oeh%, 50
ALPHA oeh%+1: TOP oeh%+1, yd+132: LEFT oeh%+1, 210: CAPTION oeh%+1, "Ecart H"


POSITION 12, 1: POSITION 14, 2: POSITION 16, 3: POSITION 18, 4: POSITION 20, 5
POSITION 22, 6: POSITION 24, 7: POSITION 26, 8: POSITION 28, 9
POSITION omg%, 3: POSITION omh%, 3: POSITION omd%, 4: POSITION omb%, 4
POSITION oev%, 3: POSITION oeh%, 3
ppa% = 1

bt% = 50
BUTTON bt%: TOP bt%, yd-80: LEFT bt%, 15: WIDTH bt%, 300: CAPTION bt%, "Fichier PDF (clic pour choisir)"
ON_CLICK bt%, Chf
' affichage des pages pdf
FOR i% = 1 TO 9: PICTURE i%: HIDE i%: pp(i%) = 0: NEXT i%

dp% = 68
LIST dp%: TOP dp%, yd-50: LEFT dp%, 180: HEIGHT dp%, 20
dq% = dp%+1
ALPHA dq%: TOP dq%, yd-49: LEFT dq%, 25: CAPTION dq%, "Dimensions page d'origine:"

BUTTON 60: TOP 60, yd-30: LEFT 60, 10: WIDTH 60, 150: CAPTION 60, "Lire le PDF (Acrobat)"
ON_CLICK 60, Acrobat
BUTTON 61: TOP 61, yd+155: LEFT 61, 10: HEIGHT 61, 20: WIDTH 61, 150: CAPTION 61, "Appliquer les paramètres"
ON_CLICK 61, Majm
BUTTON 62: TOP 62, yd+178: LEFT 62, 10: HEIGHT 62, 20: WIDTH 62, 150: CAPTION 62, "Aperçu avant impression"
ON_CLICK 62, Trait
BUTTON 63: TOP 63, yd+201: LEFT 63, 10: HEIGHT 63, 20: WIDTH 63, 150: CAPTION 63, "Imprimer"
ON_CLICK 63, Imprime
CONTAINER_OPTION 44: TOP 44, yd-25: LEFT 44, 220: WIDTH 44, 85: HEIGHT 44, 90
CAPTION 44,"Pages/A4"
OPTION 45: PARENT 45, 44: TOP 45, 16: LEFT 45, 30: WIDTH 45, 30: CAPTION 45, "2"
OPTION 46: PARENT 46, 44: TOP 46, 34: LEFT 46, 30: WIDTH 46, 30: CAPTION 46, "4"
OPTION 47: PARENT 47, 44: TOP 47, 52: LEFT 47, 30: WIDTH 47, 30: CAPTION 47, "6"
OPTION 48: PARENT 48, 44: TOP 48, 70: LEFT 48, 30: WIDTH 48, 30: CAPTION 48, "9"
MARK_ON 46: npg% = 4

2D_TARGET_IS 0: 2D_PEN_COLOR 255,0,0: 2D_PEN_WIDTH 2: 2D_RECTANGLE 5, 210*mpx+20, 325, 210*mpx+45
ALPHA 70: TOP 70, yd-105: LEFT 70, 60
CAPTION 70, "IMPRESSION PDF (4 Pages/A4)"

CONTAINER_OPTION 72: TOP 72, yd+160: LEFT 72, 200: WIDTH 72, 100: HEIGHT 72, 60
CAPTION 72, "Orientation"
OPTION 73: PARENT 73, 72: TOP 73, 18: LEFT 73, 10: WIDTH 73, 80: CAPTION 73, "Portrait"
OPTION 74: PARENT 74, 72: TOP 74, 36: LEFT 74, 10: WIDTH 74, 80: CAPTION 74, "Paysage"
MARK_ON 73: Orient = 0

TIMER 80: TIMER_INTERVAL 80, 1000: ON_TIMER 80, Majp
END

Acrobat:
IF f$ = "" THEN RETURN: ' pas de fichier choisi
EXECUTE_WAIT AcroRd$ + f$
RETURN

Chf:
' choix du fichier
OPEN_DIALOG 90: FILTER 90, "Fichiers PDF|*.pdf"
f$ = FILE_NAME$(90): DELETE 90
IF f$ = "" OR f$ = "_" THEN RETURN
CAPTION bt%, f$
a$ = "--dest="+rtmp$+" --format=0 --pages=1 --src=" + f$: ' conversion en bmp
EXECUTE_WAIT pdf2img$ + a$
fi$ = rtmp$+"\page0001.bmp": GOSUB DimImg: FILE_DELETE fi$
wm% = INT(w%/5.9): hm% = INT(h%/5.9): ' dimensions page d'origine en millimètres
r = w%/h%: ' rapport largeur/hauteur
CLEAR dp%: ITEM_ADD dp%, " "+STR$(wm%)+" x "+STR$(hm%)+" mm"
GOSUB Majm
RETURN

Majm:
IF CHECKED(45) = 1
    npg% = 2: FOR i% = 16 TO 29: HIDE i%: NEXT i%
ELSE
    IF CHECKED(46) = 1
        npg% = 4: FOR i% = 16 TO 19: SHOW i%: NEXT i%
        FOR i% = 20 TO 29: HIDE i%: NEXT i%
    ELSE
        IF CHECKED(47) = 1
            npg% = 6: FOR i% = 16 TO 23: SHOW i%: NEXT i%
            FOR i% = 24 TO 29: HIDE i%: NEXT i%
        ELSE
            npg% = 9: FOR i% = 16 TO 29: SHOW i%: NEXT i%
        END_IF
    END_IF
END_IF
IF f$ = "" THEN RETURN: ' pas de fichier choisi
IF w% > h%
    orient = 1: IF npg% = 2 THEN orient = 0
END_IF
IF w% < h%
    orient = 0: IF npg% = 2 THEN orient = 1
END_IF
IF CHECKED(74) = 1 THEN orient = 1
IF orient = 0
    w10 = 210*mpx: h10 = 297*mpx: x10 = 330: ' portrait
ELSE
    w10 = 297*mpx: h10 = 210*mpx: x10 = 5: ' paysage
END_IF
' test checked
TOP 10, y10: LEFT 10, x10: WIDTH 10, w10: HEIGHT 10, h10
2D_TARGET_IS 10: 2D_PEN_COLOR 0,0,0: 2D_RECTANGLE 0,0,w10-1,h10-1
2D_PEN_COLOR 255,0,0: 2D_LINE 1,3*mpx,w10-2,3*mpx: 2D_LINE 1,h10-4*mpx,w10-2,h10-4*mpx-1
2D_LINE 3*mpx,1,3*mpx,h10-2: 2D_LINE w10-4*mpx-1,1,w10-4*mpx-1,h10-2
mg% = POSITION(omg%): mh% = POSITION(omh%)
md% = POSITION(omd%): mb% = POSITION(omb%)
ev% = POSITION(oev%): eh% = POSITION(oeh%)
' marges minimum, non imprimables:
iF mg%<3 THEN mg% = 3: POSITION omg%, 3
IF mh%<3 THEN mh% = 3: POSITION omh%, 3
IF md%<4 THEN md% = 4: POSITION omd%, 4
IF mb%<4 THEN mb% = 4: POSITION omb%, 4
x(1) = mg%: y(1) = mh%
IF orient = 1: ' Paysage
    IF npg% = 2
        hmax = 210-mh%-mb%
        l = 297-ev%-mg%-md%
    ELSE
        IF npg% = 4
            hmax = (210-mh%-mb%-eh%)/2
            l = (297-ev%-mg%-md%)/2
        ELSE
            IF npg% = 6
                hmax = (210-mh%-mb%-eh%)/2
                l = (297-2*ev%-mg%-md%)/3
            ELSE
                hmax = (210-2*eh%-mh%-mb%)/3
                l = (297-2*ev%-mg%-md%)/3
            END_IF
        END_IF
    END_IF
rr:
    h = INT(l/r): IF h > hmax THEN l = l - 1: GOTO rr
ELSE: ' Portrait
    IF npg% = 2
        lmax = 210-mg%-md%
        h = (297-eh%-mh%)/2
    ELSE
        IF npg% = 4
            lmax = (210-mg%-md%-ev%)/2
            h = (297-ev%-mh%-mb%)/2
        ELSE
            IF npg% = 6
                lmax = 210-mg%-md%
                h = (297-2*ev%-mh%-mb%)/3
            ELSE
                lmax = (210-2*eh%-mg%-md%)/3
                h = (297-2*ev%-mh%-mb%)/3
            END_IF
        END_IF
    END_IF
rs:
    l = INT(h*r): IF l > lmax THEN h = h - 1: GOTO rs
END_IF
IF npg% = 2
    IF orient = 0
        x(2) = x(1): y(2) = y(1) + h + eh%
    ELSE
        x(2) = x(1) + l + ev%: y(2) = y(1)
    END_IF
ELSE
    IF npg% = 4
        x(2) = x(1) + l + ev%: y(2) = y(1): x(3) = x(1): y(3) = y(1) + h + eh%
        x(4) = x(2): y(4) = y(3)
    ELSE
        IF npg% = 6
            x(2) = x(1) + l + ev%: y(2) = y(1)
            IF orient = 0
                x(3) = x(1): y(3) = y(1) + h + eh%: x(4) = x(1) + l + ev%: y(4) = y(3)
                x(5) = x(1): y(5) = y(3) + h + eh%: x(6) = x(2): y(6) = y(5)
            ELSE
                x(3) = x(2) + l + ev%: y(3) = y(1): x(4) = x(1): y(4) = y(1) + h + eh%
                x(5) = x(2): y(5) = y(4): x(6) = x(3): y(6) = y(4)
            END_IF
        ELSE
            x(2) = x(1) + l + ev%: y(2) = y(1): x(3) = x(2) + l + ev%: y(3) = y(1)
            x(4) = x(1): y(4) = y(1) + h + eh%: x(5) = x(2): y(5) = y(4)
            x(6) = x(3): y(6) = y(4): x(7) = x(1): y(7) = y(4) + h + eh%
            x(8) = x(2): y(8) = y(7): x(9) = x(3): y(9) = y(7)
        END_IF
    END_IF
END_IF
FOR i% = 1 TO 9: HIDE i%: NEXT i%
FOR i% = 1 TO npg%
    TOP i%, y10+mpx*y(i%): LEFT i%, x10+mpx*x(i%): WIDTH i%, mpx*l: HEIGHT i%, mpx*h
    2D_TARGET_IS i%: 2D_FILL_COLOR 240,240,240: 2D_RECTANGLE 0,0,l*mpx-1,h*mpx-1
    PRINT_TARGET_IS i%: FONT_SIZE i%, 20: PRINT_LOCATE 15, 10
    PRINT "Page "+STR$(i%)+" (="+STR$(POSITION(10+2*i%))+" pdf)"
    SHOW i%
NEXT i%
RETURN

Trait:
IF f$ = "" THEN RETURN: ' pas de fichier choisi
FOR i% = 1 TO 9
    pge(i%) = POSITION(10+2*i%)
    IF pge(i%) = 0 THEN pge(i%) = 1: POSITION 10+2*i%, 1
NEXT i%
a$ = STR$(pge(1))+","+STR$(pge(2))
IF npg% > 2 THEN a$ = a$ +","+STR$(pge(3))+","+STR$(pge(4))
IF npg% > 4
    a$ = a$ + ","+STR$(pge(5)) + "," + STR$(pge(6)) + "," + STR$(pge(7))
    a$ = a$ + ","+STR$(pge(8)) + "," + STR$(pge(9))
END_IF
a$ = "--dest="+rtmp$+" --format=1 --pages=" + a$ + " --src=" + f$
EXECUTE_WAIT pdf2img$ + a$: ' conversion des pages en images (format jpg)
FOR i% = 1 TO 9
    fimg$(i%) = rtmp$+"\page"+STRING$(4-LEN(STR$(pge(i%))),"0")+STR$(pge(i%))+".jpg"
NEXT i%
' Affichage des pages du PDF sur A4
GOSUB Majm
FOR i% = 1 TO npg%
    FILE_LOAD i%, fimg$(i%): STRETCH_ON i%
NEXT i%
RETURN

DimImg:
FILE_OPEN_READ 1, fi$: FILE_READBUF 1, a$, 26: FILE_CLOSE 1
w% = ASC(MID$(a$,19,1))+256*ASC(MID$(a$,20,1)): ' largeur du bmp, en pixels
h% = ASC(MID$(a$,23,1))+256*ASC(MID$(a$,24,1)): ' hauteur du bmp, en pixels
RETURN

Imprime:
' Fichier d'impression pour WinTextPrint, et impression
IF f$ = "" OR pge(1) < 1 THEN RETURN
i% = MESSAGE_CONFIRMATION_YES_NO("Prêt pour impression")
IF i% = 2 THEN RETURN
FILE_OPEN_WRITE 1, fpr$
IF orient = 1
    a$ = "<#orientation=Paysage#>"
ELSE
    a$ = "<#orientation=Portrait#>"
END_IF
FILE_WRITELN 1, a$
FOR i% = 1 TO npg%
    a$ = "<#image="+fimg$(i%)+","+str$(x(i%))+","+str$(y(i%))+","+str$(l)+","+str$(h)+"#>"
    FILE_WRITELN 1, a$
NEXT i%
FILE_CLOSE 1
EXECUTE_WAIT wtp$ + " /file=" + fpr$ + " /noshow"
RETURN

Majp:
IF POSITION(12) <> ppa%
    ppa% = POSITION(12)
    FOR i% = 2 TO 9
        POSITION 10+i%*2, ppa%+i%-1
    NEXT i%
END_IF
RETURN
ça suppose la possession des ressources externes suivantes:
- WinTextPrint de Klaus, disponible sur son site (je crois que le zip contient également ConvertPDF.exe, pour convertir les pages pdf en images)
- Acrobat Reader, mais tout le monde pratiquement doit l'avoir
Il faut préciser:
- les chemins d'accès aux modules ci-dessus: WinTextPrint, ConvertPDF et Acrobat Reader
- un répertoire de travail où seront stockées les images produites: variable rtmp$

Peut-être faudra-t-il ajuster les dimensions du form 0, en effet j'ai la chance d'avoir un écran de 24" Very Happy ce qui me permet d'afficher une feuille A4
en grandeur nature, pratique pour la prévisualisation.


PS édité pour rectifier l'adresse du site de déprotection: bien freemypdf.com (et non fremypdf)


Dernière édition par JL35 le Mar 14 Déc 2010 - 23:08, édité 2 fois
Revenir en haut Aller en bas
Klaus

Klaus


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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyJeu 18 Nov 2010 - 22:25

Merci, JL35, pour cette belle application de mes outils. C'est réellement utile, et je le prends en prévision !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
JL35




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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyJeu 18 Nov 2010 - 22:37

Enfin un connaisseur ! merci Klaus (congratulons-nous Very Happy )
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyVen 19 Nov 2010 - 8:09

Citation :
- les chemins d'accès aux modules ci-dessus: WinTextPrint, ConvertPDF et Acrobat Reader

Je ne peut rien charger sur le site de Klaus (et j'ai toujours pas compris pourquoi), alors si tu pouvais très cher JL35, me mettre à disposition WinTextPrint et ConvertPDF, pour que je puisse à mon tour te féliciter.


@Klaus, c'est tout de même curieux que je puisse télécharger, n'importe quoi, n'importe ou et que sur ton site çà marche pas. il serait intéressant de savoir si je suis le seul.

A+
Revenir en haut Aller en bas
Klaus

Klaus


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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyVen 19 Nov 2010 - 10:40

Je l'ai placé sur Megaupload, voici le lien:
http://www.megaupload.com/?d=GNXNRXP3

Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jean Claude

Jean Claude


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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyVen 19 Nov 2010 - 12:52

.
Merci Klaus, cette fois-ci c'est OK,

Je me demande pourquoi je ne peut pas télécharger à partir de ton site ?

Appel aux forumeurs: Avez-vous le même probléme que moi, c'est à dire ne pas pouvoir télécharger les zip sur le site de Klaus, alors que l'on peut les télecharger ailleurs. Cela me rendra service et aussi (surtout) à Klaus.

@JL35, je ne te promet pas de regarder ton prog rapidement, j'ai un Week-end chargé à venir.

A+
Revenir en haut Aller en bas
JL35




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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyVen 19 Nov 2010 - 13:28

Aucune importance Jean Claude, c'est déjà sympa de t'y intéresser.
Et je te confirme que pour moi je n'ai aucun problème pour télécharger chez Klaus, j'ai encore réessayé tout à l'heure.
Revenir en haut Aller en bas
dragonno




Nombre de messages : 341
Localisation : Près de Toulouse
Date d'inscription : 22/01/2009

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptySam 20 Nov 2010 - 5:45

Jean Claude, regarde si ton antivirus ou ton parefeu ne bloque pas le site de Maître Klaus.
Des fois que tu ai cliqué sur un truc par mégarde Wink

Revenir en haut Aller en bas
JL35




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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyMar 14 Déc 2010 - 23:14

J'ai édité le programme d'impression PDF ci-dessus:
- ajout de l'option 6 pages par feuille (donc 2, 4, 6 ou 9), j'ai eu un cas où c'était le mieux, encore bien lisible.
- ajout du choix de forcer l'orientation de la page (portrait ou paysage).
- ajout du remplissage automatique des numéros de pages suivantes quand on modifie le numéro de la 1ère page à imprimer, mais on peut modifier quand même les pages suivantes (on ne souhaite pas forcément les pages qui se suivent).
On peut régler la marge haut et la marge gauche, ainsi que les espacements horizontaux et verticaux entre pages, avec prévisualisation. Le programme ajuste la dimension des pages en conséquence.

Exemple de 6 pages par feuille, en format paysage:
Impression de fichiers PDF Image
Revenir en haut Aller en bas
dragonno




Nombre de messages : 341
Localisation : Près de Toulouse
Date d'inscription : 22/01/2009

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyJeu 16 Déc 2010 - 23:51

JL, ton programme est vraiment utile, merci Wink

Revenir en haut Aller en bas
JL35




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

Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF EmptyVen 17 Déc 2010 - 0:15

merci à toi de t'y intéresser !
Revenir en haut Aller en bas
Contenu sponsorisé





Impression de fichiers PDF Empty
MessageSujet: Re: Impression de fichiers PDF   Impression de fichiers PDF Empty

Revenir en haut Aller en bas
 
Impression de fichiers PDF
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Impression de fichiers
» Impression
» impression
» Impression papier
» probleme d'impression.

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos projets-
Sauter vers: