assetElementoDesde: 0.15.0Requiere la característica bundle
Agrega un archivo personalizado a un bundle.
Esta función crea un único archivo en un bundle, a partir de datos de bytes sin procesar. A diferencia de los documentos, los recursos (assets) se emitirán tal cual, sin pasar por compilación.
La función asset se puede combinar con read para copiar un archivo del proyecto al bundle de salida. El primer argumento de asset define la ruta de salida del recurso en el bundle, mientras que la ruta que se le pasa a read define desde dónde del proyecto se leen los datos.
// Copy the file `styles.css` into the bundle.
#asset("styles.css", read("styles.css"))Dicho esto, asset no está atado a read. También podés generar bytes directamente o usar una función como json.encode para emitir datos serializados.
// Emits a JSON file with the number
// of headings in the document.
#context {
let headings = query(heading)
let meta = (
count: headings.len(),
)
asset("meta.json", json.encode(meta))
}
#document("doc.pdf")[
= Introduction
= Conclusion
]Esto emitiría un archivo meta.json con el siguiente contenido en el bundle resultante:
{
"count": 2
}Esta función está definida en el elemento format.bundle, pero también está disponible directamente en el ámbito global. Solo se puede usar en el destino bundle.
Parámetros
path
La ruta en el bundle en la que se ubicará el recurso.
Puede contener barras interiores, en cuyo caso los directorios intermedios se crearán automáticamente.
data
Los datos sin procesar que se escribirán en el archivo de la ruta especificada.
Si se da una cadena de texto, se codificará en UTF-8.