Come convertire HTML a PDF in ASP.NET

September 23

Come convertire HTML a PDF in ASP.NET


ASP.NET ha migliaia di classi native che svolgono una varietà di funzioni (CE, vedi riferimento 2). conversione PDF non è una di quelle funzioni. Fortunatamente, gli sviluppatori di software di terze parti hanno creato librerie di classi che è possibile utilizzare per eseguire queste conversioni. Basta aggiungere una di queste librerie al progetto e fare riferimento a esso. Il modulo web ASP.NET sarà quindi in grado di generare documenti PDF utilizzando qualsiasi file HTML come sorgente.

istruzione

1 Scaricare un "HTML a PDF \" \ libreria di classi .NET. La sezione Risorse contiene collegamenti a diverse marche popolari.

2 Creare un nuovo progetto di sito web ASP.NET e denominarlo \ "MyProject \". La pagina \ "Default.aspx \" apparirà nella soluzione Explorer sul lato destro dello schermo.

3 Passare alla modalità di progettazione e trascinare un controllo Button ASP.NET nella pagina.

4 Fare doppio clic sul pulsante. Questo aggiungerà un metodo di gestore di eventi denominato \ "Button1_Click \" al \ "Default.aspx.cs \" pagina di codice sottostante.

5 Fare clic destro \ "MyProject \" nella soluzione Explorer e selezionare \ "Aggiungi riferimento \". Si aprirà la finestra di \ "Add Reference \".

6 Individuare il percorso della libreria che si è scaricato e selezionare il file DLL si trova in quella cartella. Tutte le classi della libreria sarà quindi accessibile dal progetto ASP.NET.

7 Aggiungere un riferimento alla libreria nella \ "con \" del \ file di codice "Default.aspx.cs \".

8 Aggiungere \ codice di conversione "HTML a PDF \" al \ "Button1_Click \" gestore di eventi. Diversi fornitori dovranno diversi modi per impostare le proprietà ei metodi di accesso nelle loro singole biblioteche. Di solito il blocco di codice sarà simile a questa:

/

Creare una nuova istanza della classe convertitore /
Convertitore = new Converter ()
ANDARE

/ Impostare le proprietà per il PDF /
converter.pageSIze = 500
ANDARE
converter.pagrOrientation = \ "Ritratto \"
ANDARE
eccetera
ANDARE

/ Ottenere i dati binari dal l'URL di destinazione e conservare in array di byte /

URL = \ "http: //www.someWebSite.com \ & quot;
ANDARE
byte [] bytes = converter.getDataFrom (URL_to_convert);

/ Buffer di risposta Setup /
HttpResponse risposta = HttpContext.Current.Response
ANDARE
Response.Clear ()
ANDARE
Response.AddHeader ( "Content-Type \" \, \ "binary / octet-stream \")
ANDARE
Response.Flush (); Response.BinaryWrite (downloadBytes); Response.Flush ()
ANDARE
Response.End ()
ANDARE

I commenti sono auto-esplicativo. Sarete in grado di impostare proprietà aggiuntive per controllare l'aspetto finale del PDF. Tutte le classi convertitore vi richiederanno di impostare l'oggetto Response HTTP come mostrato. Vedere la documentazione fornita con il download per i dettagli su come impostare la chiamata al convertitore.

9 Compilare ed eseguire il progetto. Il tuo browser visualizzerà la pagina contenente il button.Click il pulsante per eseguire il codice del gestore eventi. Sarà recuperare i dati binari dall'URL specificato e convertire il codice HTML in un documento PDF.

Consigli e avvertenze

  • Normalmente si metterà il codice di conversione sopra indicato una classe separata. È quindi possibile lasciare che ogni pagina creare un'istanza di quella classe. Ciò permetterà di migliorare la scalabilità del tuo sito web ASP.NET.