Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [vb.net] Panel, convertire in pdf

    Ciao a tutti, scusate se Posto nel caso in cui sia già presente la mia domanda nel Forum ma nn ho trovato nulla.

    Ho ideato una classe che genera un calendario. Eredita il Panel.

    Vorrei, poter esportare il contenuto in un file PDF...cosa mi suggerite???
    Non so dove sbattere la testa. Sto cercando in giro ma nn ho trovato nulla di interessante...al omento.

  2. #2
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    se il tuo panel si chiama panel1,
    allora per prima cosa generiamo un bitmap(o jpg):

    Bitmap bi = new Bitmap(panel1.Width, panel1.Height);
    panel1.DrawToBitmap(bi, new Rectangle(0, 0, panel1.Width, panel1.Height));
    bi.Save(@"panel1.bmp", ImageFormat.Bmp);//volendo lo salvi come un file

    poi utilizzi per es itextsharp per generare un pdf e dentro li metti il bmp che hai
    generato prima...

    I got the remedy

  3. #3
    Diciamo che con qualche piccolo sforzo per adattarla all'esigenza del caso la soluzione è super. L'unica cosa è che nn riesco a decidere da quale punto del mio panel posso "catturare l'immagine"!
    avrei bisogno di rendere flessibile il punto da cui iniziare a copiare il contenuto del Panel!

    Grazie

  4. #4
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    Originariamente inviato da lelo
    Diciamo che con qualche piccolo sforzo per adattarla all'esigenza del caso la soluzione è super. L'unica cosa è che nn riesco a decidere da quale punto del mio panel posso "catturare l'immagine"!
    avrei bisogno di rendere flessibile il punto da cui iniziare a copiare il contenuto del Panel!

    Grazie
    nell'esempio che ho fatto è 0,0
    I got the remedy

  5. #5
    modificanfo 0, 0 indica il punto in cui inizia a disegnare sulla nuova immagine, mantre a me serve decidere da quale punto iniziare a a catturare l'immagine dal Panel originale!
    spero di essermi spiagato!

  6. #6
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    beh l'esempio che ho fatto io ti stampa il panel, che mi sembra era quello che volevi.
    Invece quello che vuoi adesso non riesco a capirlo...
    intendi tipo quello che fà camtasia studio quando selezioni lo schermo?
    I got the remedy

  7. #7
    Semplicemente il tuo esempio è molto chiaro, ma copia (trasforma in immaagine) dalla Coordianta zero, zero del Panel, invece vorrei che esportasse da un certo punto per una certa dimensione...tutto predetrminato...non attraverso evento mouse!

  8. #8
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    beh se non vuoi prendere la coordinata dal evento del mouse, semplicemente decidi tu i parmetri.
    panel1.DrawToBitmap(bi, new Rectangle(X, Y, larghezza, altezza));
    I got the remedy

  9. #9
    ho già provato ma nn viene!
    il risultato è che c'è una parte nera, delle dimensioni indicate con point, nel file immagine creato!

  10. #10
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    ho capito il problema:
    prova cosi':

    Bitmap bitmapPanel = new Bitmap(panel1.Width, panel1.Height);
    panel1.DrawToBitmap(bitmapPanel, new Rectangle(0, 0, panel1.Width, panel1.Height));


    Bitmap bitmapToSave = bitmapPanel.Clone(new Rectangle(0, 0, 150, 150), PixelFormat.Undefined);
    bitmapToSave.Save(@"Test.bmp", ImageFormat.Bmp);

    al posto di (0, 0, 150, 150) metti la parte che ti serve dentro al panello.
    L'ho provato e funziona

    I got the remedy

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.