2012-04-30 21 views
6

c'è qualche libreria C# o uno strumento gratuito che può convertire un file html con molte risorse di riferimento in un unico file html "tutto in uno"?Come includere tutte le risorse in un unico file html?

Il compito principale è quello di avere un solo file, vuol dire che ho bisogno di includere

  1. file JavaScript esterno - questo probabilmente significherà sostituire tutte 'script' tag con attributo 'src' da 'script' tag con contenuto letto dal file di riferimento.
  2. Immagini - Sostituire src = "picture.png" con l'URI di dati - qualcosa come src = "Dati: image/png; base64, encodedContent ..."
  3. file CSS
  4. può essere ho dimenticato qualcosa :)

Questo file HTML deve essere leggibile in tutti i browser, è per questo che non posso utilizzare il formato di file MHT (illeggibile su Safari, iPad ...)

+0

E perché non utilizzare l'azione di costruzione "Contenuto" per copiare i file in fase di pubblicazione? Qual è il punto di renderli come risorse? – Candide

+0

@Ingenu Non riesco a vedere che si stia riferendo a un contesto di costruzione. Vuole semplicemente ottenere un documento HTML da un URL arbitrario e renderlo un documento autonomo. –

+0

Esattamente. Non sono l'autore dell'HTML originale. – cartas

risposta

2

È possibile utilizzare HTML Agility Pack andare leggere/scrivere il documento HTML . HTML Agility supporta XPath in modo da poter ottenere un elenco di nodi che si desidera modificare.

Utilizzando questo, la modifica del valore dell'attributo dei tag immagine dovrebbe essere semplice. È inoltre possibile ottenere un elenco di riferimenti js esterni, leggerli e quindi aggiornare di conseguenza il tag dello script.

+0

Conosco "HTML Agility Pack" e probabilmente sarà il modo in cui userò se non troverò altre soluzioni. Il problema sarà non dimenticare di includere qualcosa e dovrò scrivere tutto da zero. Ecco perché sto cercando una "soluzione" completa. – cartas

Problemi correlati