Gambas-it

Gambas3 => Programmazione => Topic aperto da: vuott - 10 Gennaio 2012, 00:35:10

Titolo: Rotazione speculare di un carattere (senza uso di DrawingArea)
Inserito da: vuott - 10 Gennaio 2012, 00:35:10
Quanto mi piacerebbe con una rotazione speculare poter passare da d  a  b (senza usare una DrawingArea) !  :-[

...suggerimenti ?
Titolo: Re: Rotazione speculare di un carattere
Inserito da: vuott - 10 Gennaio 2012, 05:39:25
Dopo varie prove sono riuscito ad ottenere una cosa più o meno coerente con il mio obiettivo mediante la scrittura e rotazione del carattere all'interno di una immagine (senza uso di una DrawingArea):

Codice: gambas [Seleziona]

PUBLIC SUB Button1_Click()
  
 Dim a As New Image
 Dim b As Picture

 a = a.Load("/percorso/del/file/immagine")   ' viene caricata un'immagine nella variabile " a "

 Paint.Begin(a)
 Paint.Font.Size = 20
 Paint.DrawText("d", 50, 50, 20, 20)   ' immette il carattere "d" nell'immagine caricata...

' procede alla rotazione speculare orizzontale dell'immagine intorno all'asse verticale...
' e quindi contemporaneamente anche la lettera "d" viene ruotata,
' assumendo così l'aspetto di una "b":
      a.Mirror(True, False)

 b = a.Picture    ' trasforma l'immagine in una Picture...

PictureBox1.Picture = b   ' ...e la mostra in una PictureBox posta sul Form

END


Comunque, in fondo ho l'impressione che l'immagine si sia comportata come una sorta di DrawingArea.....  :-\

...altre soluzioni più spartane ?
Titolo: Re: Rotazione speculare di un carattere
Inserito da: fsurfing - 10 Gennaio 2012, 11:30:06
non volevi usare una drawingarea , ma il tuo metodo non è molto differente :)
così a naso direi che non ci sono altre soluzioni, a meno di crearti dei font personalizzati
Titolo: Re: Rotazione speculare di un carattere
Inserito da: vuott - 10 Gennaio 2012, 15:55:30
così a naso direi che non ci sono altre soluzioni, a meno di crearti dei font personalizzati
Comunque il mio esempio dimostra che a volte si può fare a meno di caricare font personalizzati.