Problème d'impression et de pivotement ?

Le
LE TROLL
Bonjour,

C'est pour les mots-croisés, l'impression sur une feuille, la solution,
je voudrais l'imprimer à l'envers, qu'on ne puisse la lire sans faire
pivoter la feuille, vous connaissez tous le principe je suppose

Bon, j'ai bien une solution mais ce n'est pas la plus simple, ce serait
de faire une photo (Picture) de chaque lette accentuée ou pas, une
quarantaine environ, puis de les enregistrer à l'envers, tête en bas, ainsi
quand dans ma solution j'identifie une lettre, je n'aurais plus qu'à y
mettre la photo correspondante retournée, toutefois, il y a peut être moins
laborieux

Alors, pour ceci j'ai deux objets dans mon programme, mais il y en a
peut être d'autres, c'est soit écrire à l'envers (je ne sais pas comment),
soit écrire dans un objet textBox et le mettre à l'envers (je ne sais pas
davantage comment), enfin bref, vous voyez mon problème, quelle serait votre
solution je vous prie ?

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
at
Le #21407791
LE TROLL avait énoncé :
Bonjour,

C'est pour les mots-croisés, l'impression sur une feuille, la solution,
je voudrais l'imprimer à l'envers, qu'on ne puisse la lire sans faire pivoter
la feuille, vous connaissez tous le principe je suppose...

Bon, j'ai bien une solution mais ce n'est pas la plus simple, ce serait
de faire une photo (Picture) de chaque lette accentuée ou pas, une
quarantaine environ, puis de les enregistrer à l'envers, tête en bas, ainsi
quand dans ma solution j'identifie une lettre, je n'aurais plus qu'à y mettre
la photo correspondante retournée, toutefois, il y a peut être moins
laborieux...

Alors, pour ceci j'ai deux objets dans mon programme, mais il y en a peut
être d'autres, c'est soit écrire à l'envers (je ne sais pas comment), soit
écrire dans un objet textBox et le mettre à l'envers (je ne sais pas
davantage comment), enfin bref, vous voyez mon problème, quelle serait votre
solution je vous prie ?

Cordialement ;o)



Tu as un exemple ici

http://www.a1vbcode.com/snippet-3401.asp

Private Declare Function CreateFontIndirect Lib "gdi32" Alias
"CreateFontIndirectA" (lpLogFont As LOGFONT) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long,
ByVal hObject As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As
Long) As Long

Private Type LOGFONT
lfHeight As Long
lfWidth As Long
lfEscapement As Long
lfOrientation As Long
lfWeight As Long
lfItalic As String * 1
lfUnderline As String * 1
lfStrikeOut As String * 1
lfCharSet As String * 1
lfOutPrecision As String * 1
lfClipPrecision As String * 1
lfQuality As String * 1
lfPitchAndFamily As String * 1
lfFaceName As String * 32
End Type




'Create a procedure named RotateText and pass the following parameters
as arguments
' Picturebox, Text to be displayed, current X and Current Y as
parameters

'Call the procedure from the click event of the command button

Private Sub RotateText(PBCtrl As PictureBox, disptxt As String, CX, CY)
Dim Font As LOGFONT
Dim hFont As Long, ret As Long
Const FONTSIZE = 8 ' Desired point size of font

Font.lfEscapement = 900 ' 180-degree rotation
Font.lfFaceName = "Arial" + Chr$(0)
Font.lfWeight = 50

' Windows expects the font size to be in pixels and to be negative if
you are specifying the character height you want.

Font.lfHeight = (FONTSIZE * -20) / Screen.TwipsPerPixelY
hFont = CreateFontIndirect(Font)
SelectObject PBCtrl.hdc, hFont

PBCtrl.CurrentX = CX
PBCtrl.CurrentY = CY
PBCtrl.Print disptxt

' Clean up by restoring original font.
ret = DeleteObject(hFont)
End Sub

Private Sub Command1_Click()
RotateText Picture1, "Heat Details", Picture1.Width 5,
Picture1.Height - 200
End Sub
Modeste
Le #21408361
Bonsour® Attila
pourquoi ne pas retenir la solution de la picture inversée
en utilisant une capture photo de la grille solution complète ???
;o)))
"LE TROLL" discussion :
Bonjour,

C'est pour les mots-croisés, l'impression sur une feuille, la solution,
je voudrais l'imprimer à l'envers, qu'on ne puisse la lire sans faire
pivoter la feuille, vous connaissez tous le principe je suppose...

Bon, j'ai bien une solution mais ce n'est pas la plus simple, ce serait
de faire une photo (Picture) de chaque lette accentuée ou pas, une
quarantaine environ, puis de les enregistrer à l'envers, tête en bas,
ainsi quand dans ma solution j'identifie une lettre, je n'aurais plus qu'à
y mettre la photo correspondante retournée, toutefois, il y a peut être
moins laborieux...

Alors, pour ceci j'ai deux objets dans mon programme, mais il y en a
peut être d'autres, c'est soit écrire à l'envers (je ne sais pas comment),
soit écrire dans un objet textBox et le mettre à l'envers (je ne sais pas
davantage comment), enfin bref, vous voyez mon problème, quelle serait
votre solution je vous prie ?

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


LE TROLL
Le #21408661
Bonjour,

Merci cher ami, je vais étudier, dommage que ce ne soit pas le texte que
l'on puisse faire tourner :o)

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"at" news:4ba4a660$0$15822$
LE TROLL avait énoncé :
Bonjour,

C'est pour les mots-croisés, l'impression sur une feuille, la
solution, je voudrais l'imprimer à l'envers, qu'on ne puisse la lire sans
faire pivoter la feuille, vous connaissez tous le principe je suppose...

Bon, j'ai bien une solution mais ce n'est pas la plus simple, ce
serait de faire une photo (Picture) de chaque lette accentuée ou pas, une
quarantaine environ, puis de les enregistrer à l'envers, tête en bas,
ainsi quand dans ma solution j'identifie une lettre, je n'aurais plus
qu'à y mettre la photo correspondante retournée, toutefois, il y a peut
être moins laborieux...

Alors, pour ceci j'ai deux objets dans mon programme, mais il y en a
peut être d'autres, c'est soit écrire à l'envers (je ne sais pas
comment), soit écrire dans un objet textBox et le mettre à l'envers (je
ne sais pas davantage comment), enfin bref, vous voyez mon problème,
quelle serait votre solution je vous prie ?

Cordialement ;o)



Tu as un exemple ici

http://www.a1vbcode.com/snippet-3401.asp

Private Declare Function CreateFontIndirect Lib "gdi32" Alias
"CreateFontIndirectA" (lpLogFont As LOGFONT) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long,
ByVal hObject As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long)
As Long

Private Type LOGFONT
lfHeight As Long
lfWidth As Long
lfEscapement As Long
lfOrientation As Long
lfWeight As Long
lfItalic As String * 1
lfUnderline As String * 1
lfStrikeOut As String * 1
lfCharSet As String * 1
lfOutPrecision As String * 1
lfClipPrecision As String * 1
lfQuality As String * 1
lfPitchAndFamily As String * 1
lfFaceName As String * 32
End Type




'Create a procedure named RotateText and pass the following parameters as
arguments
' Picturebox, Text to be displayed, current X and Current Y as parameters

'Call the procedure from the click event of the command button

Private Sub RotateText(PBCtrl As PictureBox, disptxt As String, CX, CY)
Dim Font As LOGFONT
Dim hFont As Long, ret As Long
Const FONTSIZE = 8 ' Desired point size of font

Font.lfEscapement = 900 ' 180-degree rotation
Font.lfFaceName = "Arial" + Chr$(0)
Font.lfWeight = 50

' Windows expects the font size to be in pixels and to be negative if you
are specifying the character height you want.

Font.lfHeight = (FONTSIZE * -20) / Screen.TwipsPerPixelY
hFont = CreateFontIndirect(Font)
SelectObject PBCtrl.hdc, hFont

PBCtrl.CurrentX = CX
PBCtrl.CurrentY = CY
PBCtrl.Print disptxt

' Clean up by restoring original font.
ret = DeleteObject(hFont)
End Sub

Private Sub Command1_Click()
RotateText Picture1, "Heat Details", Picture1.Width 5, Picture1.Height -
200
End Sub


Jean-marc
Le #21411391
LE TROLL wrote:
Bonjour,

C'est pour les mots-croisés, l'impression sur une feuille, la
solution, je voudrais l'imprimer à l'envers, qu'on ne puisse la lire
sans faire pivoter la feuille, vous connaissez tous le principe je
suppose...



Hello,

voir par exemple ici :

http://vb.developpez.com/faq/?page=Graphisme#texte_inc

et la:

http://www.vbfrance.com/r/code.aspx?r=texte+incline

Tu peux aussi regarder dans les archives du groupe, j'avais écrit
un long message avec des exemples de code.

A+

--
Jean-marc Noury (jean_marc_n2)
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
at
Le #21411641
Jean-marc a émis l'idée suivante :

Hello,

voir par exemple ici :

http://vb.developpez.com/faq/?page=Graphisme#texte_inc

et la:

http://www.vbfrance.com/r/code.aspx?r=texte+incline

Tu peux aussi regarder dans les archives du groupe, j'avais écrit
un long message avec des exemples de code.

A+



Ca tourne toujours avec GDI32.
Publicité
Poster une réponse
Anonyme