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
» I Love You
par JL35 Hier à 16:25

» MARK_ON déclenche un événement ON_CLICK à la place de ...
par Jean Claude Mer 18 Oct 2017 - 18:08

» mise a jour calculatrice
par joeeee2017 Mer 18 Oct 2017 - 15:57

» [solved] 3D_LINE How to ?
par Jicehel Mer 18 Oct 2017 - 11:01

» Convertisseur de base 10 de 2 à 36
par gigi75 Mar 17 Oct 2017 - 18:49

» calculatrice avec touches movibles
par joeeee2017 Dim 15 Oct 2017 - 1:11

» CORTANA
par gigi75 Sam 14 Oct 2017 - 16:32

» Calculatrice
par Jean Claude Sam 14 Oct 2017 - 12:30

» Compilateur FBPano
par jean_debord Jeu 12 Oct 2017 - 9:53

» KGF_dll - nouvelles versions
par Klaus Mar 10 Oct 2017 - 18:49

» à propos de Panoramic_Editor [Résolu]
par Klaus Mar 10 Oct 2017 - 3:19

» Un petit "coucou" à tous les Panoramiciens !
par Jack Ven 6 Oct 2017 - 10:24

» Pourquoi le compilateur stagne
par mindstorm Mer 4 Oct 2017 - 20:38

» Panoramic ?
par Marc37 Mer 4 Oct 2017 - 0:39

» Premiers pas avec Arduino
par Marc37 Mer 4 Oct 2017 - 0:29

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Octobre 2017
LunMarMerJeuVenSamDim
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
CalendrierCalendrier

Partagez | 
 

 Formatage (page A4)

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



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

MessageSujet: Formatage (page A4)   Mer 20 Fév 2013 - 19:28

Une petite sub extraite d'un programme que j'ai écrit.
Elle permet de positionner sur une feuille (sous forme de picture) des éléments de texte ou d'image.
Les paramètres d'appel de la sub sont:
- le numéro de l'objet 'cible' (picture)
- les coordonnées et dimensions du placement (x, y, largeur, hauteur)
- la nature de l'objet à placer: texte ou image, et son emplacement (où aller le chercher)
- dans le cas des textes, la fonte, la taille, la couleur et les enrichissements éventuels (gras, italique, souligné, centré).
La couleur de texte est exprimée sous forme d'un entier de la forme:
R*65536 + G*256 + B
Contraintes: pour les images il faut disposer de IrfanView (son path est défini dans la sub), en effet les images données sont redimensionnées pour tenir dans les dimensions prescrites dans l'appel.

Voici:
Code:
==============================================================================
SUB Des_Elem(obj%,xe%,ye%,we%,he%,typ$,fn$,sz%,co%,en%)
' dessin sur le picture cible obj% de l'élément typ$ en xe%,ye% dimensions we%,he%
' Image:
'    typ$ = "if"+path fichier image(ex. "ifC:\Img\Monimage.jpg")
'    typ$ = "ic" image du clipboard,
'    typ$ = "io"+x image de l'objet x (ex. "io12" image du Picture 12)
' Texte:
'    typ$ = "tf"+path fichier texte,
'    typ$ = "tx"+texte texte lui-même (ex. "txAu clair de la lune")
'    texte éventuellement tronqué à droite pour tenir dans les limites indiquées.
'    fn$= Fonte, sz%= Taille, co%= Couleur, en%= Enrichissements (=1 gras,
'    =2 italique, =4 souligné, =8 centré, combinables (ex. 9 gras+centré).
DIM_LOCAL p_iv$, p_aa$, p_ii%, p_jj%, p_kk%, p_ce%, p_cx%, p_ob%
IF we%<=0 OR he%<=0 OR typ$="" THEN EXIT_SUB: ' erreur
p_iv$ = "C:\Progra~2\Irfanv~1\i_view32.exe ": ' IrfanView
IF LEFT$(typ$, 1) = "t"
    ' ************************ TEXTE *******************************************
    IF fn$ = "" OR sz% = 0 THEN EXIT_SUB: ' erreur
    PRINT_TARGET_IS obj%: FONT_NAME obj%,fn$: FONT_SIZE obj%,sz%
    FONT_COLOR obj%,BIN_AND(co%,16711680)/65536,BIN_AND(co%,65280)/256,BIN_AND(co%,255)
    FONT_BOLD_OFF obj%: FONT_ITALIC_OFF obj%: FONT_UNDERLINE_OFF obj%
    IF BIN_AND(en%,1) = 1 THEN FONT_BOLD obj%: ' gras
    IF BIN_AND(en%,2) = 2 THEN FONT_ITALIC obj%: ' italique
    IF BIN_AND(en%,4) = 4 THEN FONT_UNDERLINE obj%: ' souligné
    p_ce% = 0: IF BIN_AND(en%,8) = 8 THEN p_ce% = 1: ' centré
    p_aa$ = MID$(typ$, 3, LEN(typ$)-2): ' texte, ou nom du fichier texte
    p_ob% = 1000: WHILE OBJECT_EXISTS(p_ob%) = 1: p_ob%=p_ob%+1: END_WHILE
    DLIST p_ob%
    IF LEFT$(typ$, 2) = "tx"
        ' texte dans le paramètre
        p_kk% = INSTR(p_aa$, CHR$(13)+CHR$(10))
        WHILE p_kk% > 0
            ITEM_ADD p_ob%, LEFT$(p_aa$, p_kk%-1): p_aa$ = MID$(p_aa$, p_kk%+2, 500)
            p_kk% = INSTR(p_aa$, CHR$(13)+CHR$(10))
        END_WHILE
        ITEM_ADD p_ob%, p_aa$
    ELSE
        ' texte dans le fichier donné
        IF FILE_EXISTS(p_aa$) = 0
            p_ii%=MESSAGE_ERROR_OK("Fichier texte: "+p_aa$+CHR$(10)+"non trouvé !")
            EXIT_SUB
        END_IF
        FILE_LOAD p_ob%, p_aa$
    END_IF
    p_jj% = ye%: p_cx% = 0
    FOR p_ii% = 1 TO COUNT(p_ob%)
        p_aa$ = ITEM_READ$(p_ob%, p_ii%)
        WHILE TEXT_WIDTH(p_aa$,obj%) > we%
            p_aa$ = LEFT$(p_aa$, LEN(p_aa$)-1): ' troncature en largeur
        END_WHILE
        p_kk% = TEXT_HEIGHT(p_aa$,obj%)
        IF p_ce% > 0 THEN p_cx% = (we%-TEXT_WIDTH(p_aa$, obj%))/2: ' centrage
        PRINT_LOCATE xe%+p_cx%, p_jj%: PRINT p_aa$
        p_jj% = p_jj%+p_kk%
        IF p_jj% > (ye%+he%-p_kk%) THEN EXIT_FOR
    NEXT p_ii%
    DELETE p_ob%
    FONT_BOLD_OFF obj%: FONT_ITALIC_OFF obj%: FONT_UNDERLINE_OFF obj%
    FONT_COLOR obj%,0,0,0
ELSE
    ' ***************************** IMAGE **************************************
    p_aa$ = LEFT$(typ$, 2)
    IF p_aa$ = "io" OR p_aa$ = "ic"
        IF p_aa$ = "io": ' image dans un objet, copie de l'objet dans le clipboard
            CLIPBOARD_COPY VAL(MID$(typ$, 3, LEN(typ$)-2))
        END_IF
        p_aa$ = " /clippaste"
    ELSE
        ' "ifxxx", image dans un fichier xxx
        p_aa$ = MID$(typ$,3,LEN(typ$)-2): ' chemin du fichier image
        IF FILE_EXISTS(p_aa$) = 0
            p_ii%=MESSAGE_ERROR_OK("Fichier image: "+p_aa$+CHR$(10)+"non trouvé !")
            EXIT_SUB
        END_IF
    END_IF
    2D_TARGET_IS obj%
    p_aa$ = p_aa$ + " /resize=("+STR$(we%)+",0) /aspectratio /clipcopy /killmesoftly"
    EXECUTE_WAIT p_iv$ + p_aa$
    p_ii% = 500: WHILE OBJECT_EXISTS(p_ii%) = 1: p_ii% = p_ii%+1: END_WHILE
    IMAGE p_ii%: CLIPBOARD_PASTE p_ii%: 2D_IMAGE_PASTE p_ii%, xe%, ye%
    DELETE p_ii%
END_IF
END_SUB
' ------------------------------------------------------------------------------
Un petit exemple d'appel (l'image est quelconque, à adapter):
Code:
DIM t$, rc$
WIDTH 0,660: HEIGHT 0,800: COLOR 0,124,255,255
PICTURE 1: TOP 1,20: LEFT 1,20: WIDTH 1,600: HEIGHT 1,720
' Titre: police Script, taille 48, bleu, bold
Des_Elem(1,150,20,320,20,"txMon image:","Script",48,255,1)
' Image (dimensions d'origine 640x480, réduite en 320x240)
t$ = "ifC:\Graph\Jpg\Goldgate.jpg"
Des_Elem(1,150,100,320,240,t$,"",0,0,0)
' Légende de l'image: police Consolas, taille 12, rouge, italique, centré
Des_Elem(1,150,340,320,20,"txGoldgate.jpg","Consolas",12,16711680,10)
rc$ = CHR$(13)+CHR$(10)
t$ = "txTexte"+rc$+"à droite"+rc$+"de l'image"
Des_Elem(1,480,200,100,50,t$,"Arial",10,0,0)
END
qui donne ceci:

Le programme complet est le formatage d'une page A4 complète (genre affichette) avec du texte et des images mélangés.
L'impression du résultat se fait par l'intermédiaire d'IrfanView.
Mon écran (24", 1920x1200) me permet de présenter la page grandeur nature, je n'ai pas eu le courage de l'adapter pour ici... Mad )

Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 7994
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: RE   Mer 20 Fév 2013 - 20:52

Bravo !

Je pense qu'une fois l'image créée, il doit être possible de combiner
avec la dll de klaus pour l' impression. Non ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



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

MessageSujet: Re: Formatage (page A4)   Mer 20 Fév 2013 - 22:36

C'est fort probable, mais comme de toute façon il faut faire appel à IrfanView, j'ai trouvé plus simple (dans mon programme) de lui faire sous-traiter l'impression plutôt que de faire appel à une dll externe:
Je copie le picture dans le clipboard (Clipboard_Copy), et je lance l'Execute_Wait Irfanview avec l'option /clippaste, comme ça on a directement l'image à l'écran, prête à être imprimée, sans passer par un fichier intermédiaire.
Code:
CLIPBOARD_COPY 1: ' Picture 1 -> presse-papier
EXECUTE_WAIT "C:\Progra~2\Irfanv~1\i_view32.exe /clippaste"
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Formatage (page A4)   Mer 20 Fév 2013 - 22:55

Euh... Les fonctions d'impression de ma DLL ayant trait à la gestion des images, font le redimensionnement de façon interne, tout comme WTP.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
JL35



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

MessageSujet: Re: Formatage (page A4)   Mer 20 Fév 2013 - 23:02

Je ne prétends pas le contraire, bien entendu, mais je ne vois pas le rapport, j'évite simplement de faire appel à une dll externe quand c'est possible (c'est le cas ici).
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Formatage (page A4)   Mer 20 Fév 2013 - 23:43

Certes. Dll ou outil tiers - où est la différence ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
JL35



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

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 0:13

C'est un choix personnel, l'"outil tiers" (IrfanView) est installé chez moi depuis toujours, alors je l'utilise pour ses nombreuses possibilités.
Mais évidemment, chacun fait à son idée, et c'est bien comme ça.

De toute façon, je ne vois toujours pas le rapport de la dll d'impression avec la sub ci-dessus, ce n'est pas du tout du redimensionnement d'image à l'impression, mais de la mise en page avec un mélange de textes et d'images ... ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 0:42

Je sais bien. C'est justement pour ça: tu peux précisément placer le texte et/ou les images où tu veux, en choisissant chaque fois les attributs, etc. Ces routines sont faites pour qu'on puisse réaliser un "composeur" de pages.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Yannick

avatar

Nombre de messages : 7994
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Jeu 21 Fév 2013 - 0:43

ygeronimi a encore gaffé... Laughing

...et voilà que ça se dispute Embarassed

Je n'ai pas eu le temps d'approfondir sur ton code JL35 mais promis,
je le fais dès que j'arrive au bout de mon jeu... Wink

( bon, il va me falloir charger IrfanView mais ça c'est un détail Laughing )
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5858
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 0:44

Ben ils ne se disputent pas. Ils échangent sur des points de vus différents, enfin plutôt sur 2 méthodes différentes.
Echanger entre 2 points de vue différents ne signifie pas forcément se disputer Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 0:45

Attention ! Je ne veux surtout froisser personne, et comme le dit si bien JL35, chacun est libre de choisir l'outil qu'il préfère. Je voulais juste apporter une petite information sur les capacités de mes routines, c'est tout.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Yannick

avatar

Nombre de messages : 7994
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Jeu 21 Fév 2013 - 0:53

Perso , j'ai beau y mettre toute la bonne volonté du monde...
...je pige toujours rien à l'impression. Embarassed

Je crois qu'il va me falloir un "pas à pas" pour "super nul"... Laughing
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



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

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 0:58

ca va sans dire, mais ça va encore mieux en le disant, bien entendu je suis d'accord avec Jicehel et avec Klaus, c'est un échange de points de vue et rien d'autre ! quand même, on est entre gens civilisés !

Et pour ygeronimi (et Klaus aussi), c'est vrai que le paramétrage de la dll d'impression n'est pas hyper simple ! dommage qu'il n'y ait pas des fonctions d'impression incluses dans Panoramic.


Dernière édition par JL35 le Jeu 21 Fév 2013 - 1:01, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5546
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 1:01

Un super nul qui fait des jeux n’est pas aussi super (super nul s’entend !) que ça !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
JL35



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

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 1:04

Et pour ygeronimi un petit tutoriel vite fait:

1) mettre une feuille A4 dans l'imprimante
2) cliquer sur 'Imprimer'

et voila !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 1:07

Je vais voir ce que je peux faire pour concocter un tuto sur l'impression avec KGF.dll...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
JL35



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

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 1:12

En effet, ça serait pas mal du tout, parce que c'est quand même assez complexe à utiliser.
Ou alors il faudrait une espèce d'interface en panoramic, mais c'est pas sûr que ce soit plus simple.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5858
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 2:24

JL35, je vais t'engager pour faire mes proc. Tu as l'art d'être concis dans tes procédures Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



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

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 15:17

Euh, très flatté Jicehel, mais je ne suis pas très disponible en ce moment Very Happy ça dépend combien tu payes ?

La concision c'est une vieille habitude des anciennes machines où la mémoire vive était vraiment riquiqui: mon premier pc sérieux (ça ne s'appelait pas encore pc d'ailleurs) n'en avait que 4k ! ... que j'ai dès que j'ai pu étendu à 64k à coups de fer à souder, c'était le bon vieux temps !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Invité
Invité



MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 16:49

Citation :
j'ai dès que j'ai pu étendu à 64k à coups de fer à souder, c'était le bon vieux temps !
Sur le mien j'en avait 12k à l'époque. Malheureusement le fer à soudé qu'on m'a prêté, à cramé pendant une soudure. Résultat, je me suis retrouvé dans le noir, et mes TTL, j'en ai bien remplacé une vingtaine, sinon plus, jusqu'à ce qu'on me redemande l'oscillo. qu'un autre m'avait prété. Là c'était la mort de mon ordi.
Tiens je vais faire une prière pour celui-ci.
Pater Nosters.(raccourci) fin! (je site Ygenorimi: j'ai la mémoire qui flanche...)
Revenir en haut Aller en bas
Jicehel

avatar

Nombre de messages : 5858
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 16:49

A priori, tu as connu comme moi le temps du 8080... Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



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

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 17:33

Je rectifie quand même, je n'étais pas passé à 64k mais à 16k (sur un TRS-80, superbe machine... pour l'époque !), ce qui était déjà un bond fantastique.
(J'ai confondu avec le boulot où on était passés à 64k (mots de 4 octets cette fois-ci).
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5546
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 20:15

Moi, j’ai connu le Z80, ancêtre du 8080 qui était considéré à l’époque comme un SUPER Z80.
Mon ordi de l’époque disposait de 1 Ko (le fameux zx81).
Je l’ai dopé par une extension de 16 Ko (qui était plus lourde que le zx81 lui-même).
Je la mettais sur un livre pour qu’elle ne contre balance pas l’ordi !

En branchant l’extension de 16 Ko, le 1 Ko d’origine se trouvait hors usage.
Un magazine de l’époque indiquait comment faire pour récupérer ce précieux 1 Ko.
Alors fer à souder et tout le bazar….
Ah la belle époque !




Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
JL35



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

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 20:16

J'ai eu aussi... mais sans extension, veinard !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
bignono

avatar

Nombre de messages : 1086
Age : 60
Localisation : Val de Marne
Date d'inscription : 13/11/2011

MessageSujet: Re: Formatage (page A4)   Jeu 21 Fév 2013 - 20:23

Ça c'était ma bête, et de fabrication Française! Cocorico! Very Happy
[img][/img]
16k, et après j'ai acheté une cartouche que l'on enfonçait sur le coté gauche prise rs232 et on avait accès à un basic 3x de 32ko si mes souvenirs sont exacts!
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Formatage (page A4)   

Revenir en haut Aller en bas
 
Formatage (page A4)
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 3Aller à la page : 1, 2, 3  Suivant
 Sujets similaires
-
» [Résolu] Formatage sous W7
» [Annulée] Demande de page d'aceuil
» [Annulée] Demande une page HTML
» [résolu] Lien dans image survolée vers page html
» lien vers page php

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: