Crear un documento HTML con una API .NET

Aspose.HTML for .NET crea un nuevo HTMLDocument con un árbol de documento HTML que la aplicación puede completar mediante la API DOM. Cree elementos, defina su texto y atributos, incorpórelos al documento y llame a Save() para escribir el archivo HTML terminado.


Crear y guardar un archivo HTML en C#

El siguiente ejemplo crea un documento, establece su título, añade un encabezado, un párrafo y un enlace al elemento <body>, y guarda el resultado como created.html.

Código C# para crear un documento HTML

using Aspose.Html;

using HTMLDocument document = new HTMLDocument();

document.Title = "Product overview";

// Create the visible page elements
HTMLHeadingElement heading =
    (HTMLHeadingElement)document.CreateElement("h1");
heading.TextContent = "Product overview";

HTMLParagraphElement paragraph =
    (HTMLParagraphElement)document.CreateElement("p");
paragraph.TextContent = "Explore the product documentation and examples.";

HTMLAnchorElement link =
    (HTMLAnchorElement)document.CreateElement("a");
link.Href = "https://docs.aspose.com/html/net/";
link.TextContent = "Read the documentation";

// Add the elements in document order
document.Body.AppendChild(heading);
document.Body.AppendChild(paragraph);
document.Body.AppendChild(link);

// Save the completed HTML document
document.Save("created.html");

Pasos para crear un archivo HTML en C#

  1. Cree una instancia de HTMLDocument sin un origen para generar un documento nuevo.
  2. Defina datos del documento, como el título de la página mediante Title.
  3. Cree los nodos necesarios con CreateElement() y establezca su texto, propiedades y atributos.
  4. Añada los elementos a Body o a otro nodo padre con AppendChild() .
  5. Escriba el documento terminado con Save() .

Funciones para crear documentos HTML

  • Comenzar con un árbol de documento. Un nuevo HTMLDocument proporciona la estructura, incluidos Head y Body, para que el código añada contenido en el lugar correcto.
  • Crear elementos HTML tipados. CreateElement() genera nodos DOM que pueden convertirse en clases como HTMLHeadingElement, HTMLParagraphElement y HTMLAnchorElement cuando se necesitan propiedades específicas.
  • Añadir texto o marcado de forma controlada. Use TextContent para texto sin formato. Emplee métodos DOM o InnerHTML solo cuando la aplicación proporcione marcado deliberadamente, y valide el marcado de fuentes no confiables.
  • Definir atributos y relaciones. Configure enlaces, clases, identificadores, direcciones de recursos, metadatos y otros datos antes de incorporar cada nodo al árbol.
  • Guardar o continuar el procesamiento. Guarde el documento como HTML, modifíquelo mediante consultas DOM o páselo a un flujo de conversión si necesita PDF, DOCX, XPS o una imagen.

Documentación y referencia de la API para crear HTML

Consulte Crear o cargar documentos HTML para ver ejemplos de documentos vacíos, creación desde marcado y selección de una URL base. La guía Editar un documento HTML explica cómo crear, insertar, reemplazar y eliminar nodos DOM. Si la aplicación ya dispone de un archivo, URL, cadena o flujo como origen, use el procedimiento Cargar HTML en C# .


Instalar Aspose.HTML for .NET

Instale Aspose.HTML for .NET desde NuGet con la CLI de .NET:

dotnet add package Aspose.HTML

También puede usar la interfaz del Administrador de paquetes NuGet o ejecutar Install-Package Aspose.HTML en la consola del Administrador de paquetes. Consulte la guía de instalación para configurar la biblioteca o solicite una licencia temporal para evaluar la API sin limitaciones.


Preguntas frecuentes sobre la creación de documentos HTML

1. ¿Puedo convertir un HTMLDocument recién creado sin guardarlo antes?

Sí. Pase el documento en memoria a la sobrecarga adecuada de Converter.ConvertHTML() junto con las opciones de guardado necesarias y una ruta o flujo de salida. No es necesario guardar un archivo HTML intermedio.

2. ¿Un nuevo HTMLDocument incluye los elementos <html>, <head> y <body>?

Sí. El constructor sin parámetros crea la estructura HTML básica. Añada metadatos y recursos del documento a Head, y el contenido visible de la página a Body.

3. ¿CreateElement() añade automáticamente el nuevo elemento al documento?

No. CreateElement() crea un nodo independiente. Llame a AppendChild(), InsertBefore() u otro método de inserción DOM para colocarlo dentro de Head, Body o un elemento existente.

4. ¿Debo crear un documento nuevo si el marcado HTML completo ya está en una cadena?

Use un constructor de HTMLDocument que acepte el marcado y una URL base. La URL base resuelve enlaces y recursos relativos, mientras que el constructor analiza el marcado proporcionado para crear el DOM.

5. ¿El HTML generado puede hacer referencia a CSS, imágenes, scripts y fuentes?

Sí. Cree los elementos HTML correspondientes y establezca las URL o los atributos de los recursos. Asegúrese de que las referencias relativas sean válidas en la ubicación donde se publicarán el archivo HTML y sus recursos.

Flujos de trabajo relacionados con documentos HTML

Continúe con la carga, edición, selección o conversión de contenido HTML.