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 d'image sans ressource externe Emptypar Pedro Aujourd'hui à 8:08

» Un autre pense-bête...
Impression d'image sans ressource externe Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Impression d'image sans ressource externe Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Impression d'image sans ressource externe Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Impression d'image sans ressource externe Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Impression d'image sans ressource externe Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Impression d'image sans ressource externe Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Impression d'image sans ressource externe Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Impression d'image sans ressource externe Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Impression d'image sans ressource externe Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Impression d'image sans ressource externe Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Impression d'image sans ressource externe Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Impression d'image sans ressource externe Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Impression d'image sans ressource externe Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Impression d'image sans ressource externe 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 à ne pas rater :
Smartphone Xiaomi 14 – 512 Go- 6,36″ 5G Double SIM à 599€
599 €
Voir le deal

 

 Impression d'image sans ressource externe

Aller en bas 
2 participants
AuteurMessage
JL35




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

Impression d'image sans ressource externe Empty
MessageSujet: Impression d'image sans ressource externe   Impression d'image sans ressource externe EmptyJeu 14 Nov 2019 - 14:59

En fait je l'utilise pour imprimer des maquettes de pages A4, créées à l'écran en Panoramic.
Le Picture source fait 778x1100 qui me donne une image grandeur nature aux proportions voulues (mon écran fait 1920x1200...), mais ça peut être n'importe quoi.
L'intérêt c'est l'utilisation de fonctions incluses dans Windows, donc accessibles directement depuis Panoramic.

L'orientation d'impression (portrait/paysage) est automatique en fonction des proportions de l'image.

La SUB est PrintA4(), vec un petit exemple, pour voir:
Code:
DIM fr$,w%,h%,mg1,mg2,mg3

fr$ = "C:\TEMP\Test.bmp"
WIDTH 0,820: HEIGHT 0,1150: COLOR 0,0,255,255: BORDER_SMALL 0
w% = 778: h% = 1100
PICTURE 1: WIDTH 1,w%: HEIGHT 1,h%
2D_TARGET_IS 1
mg1 = 20: mg2 = 40: mg3 = 60
2D_PEN_COLOR 0,0,255: 2D_RECTANGLE mg1,mg1,w%-mg1,h%-mg1
2D_PEN_COLOR 255,0,0: 2D_RECTANGLE mg2,mg2,w%-mg2,h%-mg2
2D_PEN_COLOR 0,255,0: 2D_RECTANGLE mg3,mg3,w%-mg3,h%-mg3
FILE_SAVE 1,fr$
PrintA4(fr$)
FILE_DELETE fr$
END

SUB PrintA4(f$)
  '   Impression d'une page A4 (image, dimensions quelconques mais proportions A4)
  ' sur l'imprimante  par défaut en ligne de commande
  '   Marges non imprimables périphériques: ~ 3 mm G/D, 3,5 mm H/B sur A4
  '   ATTENTION: l'image est redimensionnée (compactée) pour tenir dans la zone
  ' imprimable, cad -3 mm droite et gauche, -3,5mm haut et bas.
  ' -> surface imprimée = 204x290 mm, centrée
  '   Orientation Portrait/Paysage automatique en fonction des proportions
  ' de l'image à imprimer  
  DIM_LOCAL q$,scr$,pt$,a$,k%,ptr$
  q$ = CHR$(34)
  scr$ = "Cscript %WINDIR%\System32\Printing_Admin_Scripts\fr-FR\Prnmngr.vbs -g"
  EXECUTE_WAIT "cmd.exe|/c "+scr$+" |clip": a$ = CLIPBOARD_STRING_PASTE$
  k% = INSTR(a$,"est "): ptr$ = TRIM$(RIGHT_POS$(a$,k%+4)): ' -> nom imprimante
  pt$ = "rundll32 shimgvw.dll ImageView_PrintTo /pt"  
  EXECUTE_WAIT "cmd.exe|/c "+pt$+" "+f$+" "+q$+ptr$+q$
END_SUB

La sub commence par récupérer le nom de l'imprimante par défaut, qui est nécessaire pour la fonction d'impression, ce qui allonge la durée d'exécution (quelques secondes)..

PS, précisions: l'image (le fichier image) donnée à imprimer est de dimensions quelconques, mais impérativement aux proportions d'une page A4 (210 x 297), sinon elle sera tronquée à l'impression.
Donc en fait c'est plutôt réservé à l'impression d'une page complète.

PS2: je remarque que l'image est redimensionnée (tassée...) à l'impression pour tenir dans la zone imprimable. Ainsi mon picture/image 778x1100 sera imprimé sur 204x290 mm au milieu de la feuille (marges latérales = 3 mm, haut/bas = 3,5 mm, chez moi, c'est peut-être variable selon l'imprimante...).
Ça peut être un inconvénient et il faut en tenir compte.
Revenir en haut Aller en bas
jjn4

jjn4


Nombre de messages : 2747
Date d'inscription : 13/09/2009

Impression d'image sans ressource externe Empty
MessageSujet: +++   Impression d'image sans ressource externe EmptyVen 15 Nov 2019 - 15:35

Ouaouh !
Ca, c'est du pointu !
scratch
Revenir en haut Aller en bas
http://jjn4.e-monsite.com
JL35




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

Impression d'image sans ressource externe Empty
MessageSujet: Re: Impression d'image sans ressource externe   Impression d'image sans ressource externe EmptyVen 15 Nov 2019 - 17:42

Salut jj,

Pointu, pas tant que ça, mais c'est fou toutes ces ressources internes qu'on ignore...
J'ai modifié la sub pour tenir compte automatiquement des marges non imprimables, comme ça on dessine sur un picture aux proportions A4, ce qui sera imprimé en sera l'image exacte
(sauf que bien sûr les fameuses marges non imprimables resteront blanches !):
Code:
SUB PrintA4(f$)
  ' - Impression de l'image d'une page A4 (dimensions quelconques mais
  ' proportions A4) sur l'imprimante  par défaut en ligne de commande.
  ' - L'impression tient compte des marges non imprimables périphériques:
  ' = 3 mm G/D, 3,5 mm H/B sur A4 -> surface imprimée = 204x290 mm, centrée
  ' - Orientation Portrait/Paysage automatique en fonction des proportions
  ' de l'image à imprimer.  
  DIM_LOCAL p%,n2%,q$,fm$,wi%,hi%,ppm,x%,y%,scr$,pt$,a$,k%,ptr$
  p% = 950: q$ = CHR$(34)
  fm$ = "C:\TEMP\imgpr.bmp"
  n2% = NUMBER_2D_TARGET
  PICTURE p%: FILE_LOAD p%,f$: FILE_SAVE p%,fm$: 2D_TARGET_IS p%
  IMAGE p%+1
  FILEBIN_OPEN_READ 1,fm$: ' dimensions de l'image de la page A4
      FILEBIN_POSITION 1,18: wi% = FILEBIN_READ(1)+256*FILEBIN_READ(1)
      FILEBIN_POSITION 1,22: hi% = FILEBIN_READ(1)+256*FILEBIN_READ(1)
  FILEBIN_CLOSE 1  
  ppm = hi%/297: ' pixels par mm
  ' agrandissement pour compenser les marges non imprimables:
  x% = 3*ppm: y% = 3.5*ppm: ' marges non imprimables
  2D_IMAGE_COPY p%+1,x%,y%,wi%-x%,hi%-y%: ' sans les marges
  FILE_SAVE p%+1,fm$
  scr$ = "Cscript %WINDIR%\System32\Printing_Admin_Scripts\fr-FR\Prnmngr.vbs -g"
  EXECUTE_WAIT "cmd.exe|/c "+scr$+" |clip": a$ = CLIPBOARD_STRING_PASTE$
  k% = INSTR(a$,"est "): ptr$ = TRIM$(RIGHT_POS$(a$,k%+4)): ' -> nom imprimante
  pt$ = "rundll32 shimgvw.dll ImageView_PrintTo /pt"  
  EXECUTE_WAIT "cmd.exe|/c "+pt$+" "+fm$+" "+q$+ptr$+q$
  FILE_DELETE fm$
  2D_TARGET_IS n2%: DELETE p%: DELETE p%+1
END_SUB
Le seul truc dont je ne suis pas sûr, c'est les dimensions de ces marges, chez moi c'est 3 mm de chaque côté et 3,5 mm en haut et en bas, ça dépend peut-être de l'imprimante, auquel cas ce serait à ajuster.

Je me sers aussi pas mal de WinTextPrint.exe de l'ami Klaus, très pratique, mais là je voulais faire un truc indépendant.
Revenir en haut Aller en bas
JL35




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

Impression d'image sans ressource externe Empty
MessageSujet: Re: Impression d'image sans ressource externe   Impression d'image sans ressource externe EmptyVen 15 Nov 2019 - 21:18

MARGES NON IMPRIMABLES

Une astuce pour connaître les dimensions des marges non imprimables de son imprimante:
- Lancer Word, ou Word Starter
- Menu 'Mise en page', 'Marges', 'Marges personnalisées'
- Mettre les 4 marges Haut, Bas, Gauche, Droite à 0, puis 'OK'
- -> affichage d'une fenêtre d'alerte, cliquer 'Corriger'
- -> affichage des marges minimales.

Chez moi par exemple ça donne haut 0,32 bas 0,34 gauche 0,32 droite 0,31 mm.
C'est la théorie.
Au final, j'obtiens toujours une image de 204x290 mm centrée sur une feuille A4 (210x297)
Revenir en haut Aller en bas
Contenu sponsorisé





Impression d'image sans ressource externe Empty
MessageSujet: Re: Impression d'image sans ressource externe   Impression d'image sans ressource externe Empty

Revenir en haut Aller en bas
 
Impression d'image sans ressource externe
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Ressource Hacker et les caractères accentuès [RESOLU]
» Erreur externe
» Fermer un programme externe à PANORAMIC
» Click sur un objet externe a Panoramic
» Click sur un objet externe a Panoramic

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: