Conversor gratuito de Markdown a PDF
Convierte Markdown en PDF con vista previa en directo. Personaliza el tamaño de la página y los márgenes. Funciona íntegramente en tu navegador.
Acerca de Markdown
Markdown es un lenguaje de marcado ligero que convierte texto plano en HTML formateado. Se usa ampliamente para documentación, blogs y escritura técnica porque es fácil de leer y escribir.
Sintaxis Markdown
- #, ##, ### · títulos (h1, h2, h3)
- **texto** · texto en negrita
- *texto* · texto en cursiva
- [enlace](url) · hipervínculos
- - elemento · listas no ordenadas
- 1. elemento · listas ordenadas
Preguntas frecuentes
¿Puedo usar HTML en Markdown?
Sí. Markdown admite HTML en línea, así que puedes incorporar directamente etiquetas HTML en tu Markdown.
¿Qué tamaños de página se admiten?
A4, Letter, A3 y A5 se admiten. Los márgenes se ajustan entre 0 y 50 milímetros.
¿La generación de PDF es del lado del cliente?
Sí. Toda la conversión se hace en tu navegador. Tu Markdown nunca se envía a nuestros servidores.
Cómo funciona este convertidor
Una herramienta de Markdown a PDF basada en el navegador ejecuta una canalización de dos etapas. Primero, el código fuente Markdown se analiza y se convierte en HTML mediante un analizador de Markdown en JavaScript (esta página usa marked.js, un analizador pequeño, rápido y con licencia MIT mantenido por la organización MarkedJS). El resultado es el HTML que ves en la vista previa en directo. Segundo, ese HTML se convierte en un PDF; esta página usa html2pdf.js, que a su vez envuelve dos bibliotecas: html2canvas repinta el DOM renderizado en un lienzo fuera de pantalla leyendo los estilos calculados, y jsPDF escribe esa imagen del lienzo en un objeto de página PDF y guarda el archivo.
Las bibliotecas en sí se cargan desde una CDN pública, pero tu Markdown se analiza y el PDF se genera íntegramente en tu dispositivo. El navegador es el renderizador; nada sale de la página.
Una breve historia del PDF
El PDF empezó como una propuesta interna del cofundador de Adobe John Warnock en 1991. Quería una forma de compartir documentos que se vieran igual en todas las pantallas, todas las impresoras y todos los sistemas operativos. El breve artículo que lo inició se titulaba «The Camelot Project», y Adobe publicó la primera especificación de PDF el 15 de junio de 1993 junto con Adobe Acrobat 1.0. Adobe administró el formato durante quince años antes de publicar PDF 1.7 ante ISO. ISO 32000-1:2008 convirtió el PDF en un estándar abierto de uso libre sin licencia, la fecha más importante para entender por qué todas las herramientas, navegadores y sistemas operativos modernos pueden escribir PDF hoy. ISO 32000-2:2017 (PDF 2.0) añadió firmas digitales mejoradas, un mejor manejo de Unicode y ganchos formales de accesibilidad. La edición corregida de 2020 la puso para descarga gratuita la PDF Association en abril de 2023, eliminando la última barrera de coste.
Un PDF es esencialmente un contenedor estructurado de objetos dispuestos para el acceso aleatorio: gráficos vectoriales (líneas y curvas de Bézier), imágenes rasterizadas (normalmente JPEG o comprimidas con zlib), fuentes incrustadas (Type 1, TrueType, OpenType) y una tabla de referencias cruzadas que permite a los lectores saltar a cualquier parte sin analizar todo el archivo. Hay varios estándares de subconjunto de PDF que conviene conocer: PDF/A (de archivo, ISO 19005, 2005, prohíbe cualquier cosa que pudiera romper la legibilidad a largo plazo), PDF/X (producción de impresión con una gestión del color bloqueada) y PDF/UA (accesibilidad universal, ISO 14289-1, 2012, requiere PDF totalmente etiquetados con orden de lectura, texto alternativo, fuentes incrustadas asignadas a Unicode y el idioma del documento declarado).
Tamaños de página
La serie A proviene de la ISO 216 (formalizada en 1975, rastreable hasta la DIN 476 de Alemania de 1922). Cada tamaño A tiene la misma relación de aspecto √2 (≈ 1,414), lo que significa que dividir por la mitad el borde largo de un A3 produce dos A4 sin desperdicio, y dividir por la mitad un A4 produce dos A5. Un A0 mide exactamente 1 m². Los tamaños norteamericanos (Letter, Legal, Tabloid) ignoran √2 y se remontan a las convenciones coloniales de fabricación de papel:
- A4: 210 × 297 mm (8,3 × 11,7 in). El valor por defecto global fuera de Norteamérica.
- A3: 297 × 420 mm (11,7 × 16,5 in). Pósteres, dobles páginas.
- A5: 148 × 210 mm (5,8 × 8,3 in). Folletos, fanzines.
- Letter: 8,5 × 11 in (215,9 × 279,4 mm). El valor por defecto en EE. UU., Canadá y Filipinas.
El margen por defecto de 10 mm es más ajustado que el valor por defecto de 1 pulgada (25,4 mm) de Microsoft Word, pero funciona bien para los documentos con mucho código o muchas tablas en los que quieres que quepa cada columna.
La advertencia honesta: el texto no es seleccionable
Como el convertidor renderiza el HTML en un lienzo e incrusta el lienzo como una imagen dentro del PDF, el texto resultante no es seleccionable, no es buscable y no es accesible para los lectores de pantalla. Es una imagen fiel de lo que el navegador dibujaría, pero es una imagen. Esto está bien para artefactos visuales como las fichas de recetas, los paneles de inspiración o los folletos impresos; encaja mal para los documentos legales, los currículums que un reclutador quiere escanear por palabras clave o cualquier cosa que deba pasar una auditoría de accesibilidad (WCAG / Section 508 / EN 301 549).
Si necesitas texto seleccionable o un PDF etiquetado, las herramientas adecuadas son Pandoc (combinado con LaTeX o wkhtmltopdf o weasyprint) o Adobe Acrobat Pro con sus herramientas de etiquetado. Pandoc es el estándar de referencia para la producción seria de documentos, instalable mediante Homebrew o Chocolatey, se ejecuta desde la línea de comandos y da un control tipográfico de nivel LaTeX con notas al pie, bibliografías, citas, comillas tipográficas y ligaduras correctas.
Forzar saltos de página
html2pdf.js respeta las propiedades de fragmentación de impresión de CSS. Como Markdown te permite incrustar HTML en línea, puedes forzar un salto de página pegando:
<div style="break-before: page;"></div>
El alias heredado page-break-before: always también funciona. Otras propiedades útiles: break-inside: avoid en una tabla o un bloque de código impide que se divida entre páginas; orphans y widows controlan cuántas líneas deben permanecer juntas en la parte inferior o superior de una página.
Consejos para una salida limpia
- Evita las imágenes rasterizadas enormes. Una sola foto a página completa puede añadir cientos de kilobytes. Redimensiona las imágenes antes de incrustarlas, o usa
max-widthen estilos en línea para limitar cuánto se renderizan. - Tablas que no se dividan entre páginas: envuélvelas con
<div style="break-inside: avoid">. - Los bloques de código necesitan monoespaciado. El navegador usa la fuente monoespaciada de tu sistema operativo cuando no se establece nada más específico: Consolas en Windows, Menlo en macOS, DejaVu Mono en Linux. La salida se verá ligeramente diferente en cada uno.
- Prueba con una longitud de contenido realista. Un documento de prueba corto está bien, pero el diseño a veces se ve diferente con más de 10 páginas.
- Letter frente a A4. Si vas a compartir con destinatarios de EE. UU., elige Letter; el resto del mundo espera A4. Los tamaños no coincidentes no rompen nada, pero causan pequeñas rarezas de márgenes / escalado en la impresora.
Markdown común para este tipo de salida
La sintaxis admitida es el subconjunto al estilo de GitHub: encabezados, negrita y cursiva, listas, tablas, bloques de código con un resaltado de sintaxis simple, citas, enlaces e imágenes. Este build no admite las notas al pie ni los diagramas de Mermaid. Un recordatorio rápido de lo básico:
- Encabezados: de
# H1a###### H6. - Negrita y cursiva:
**bold**,*italic*,***both***. - Listas:
- itempara las no ordenadas,1. itempara las ordenadas. - Enlaces e imágenes:
[text](url)y. Incluye siempre texto alternativo. - Tablas: filas delimitadas por barras verticales con una fila separadora de guiones.
- Bloques de código delimitados: tres comillas invertidas más una etiqueta de idioma opcional.
- Citas:
> text.
Un recordatorio del linaje de Markdown: John Gruber y Aaron Swartz lo diseñaron en 2004 como «un formato de texto plano fácil de leer y fácil de escribir». El esfuerzo de estandarización de CommonMark empezó en 2014, liderado por John MacFarlane (Pandoc), Jeff Atwood (Stack Overflow / Discourse) e ingenieros de GitHub, Reddit y Meteor. GitHub Flavored Markdown es un superconjunto de CommonMark que añade tablas, tachado, listas de tareas y enlaces automáticos.
Más preguntas
¿Por qué el texto de mi PDF está borroso?
Porque el convertidor rasteriza la página a la densidad de pantalla del navegador. En un monitor que no sea Retina, la imagen resultante puede verse suave al ampliar, ya que el lienzo captura a aproximadamente 96 DPI en lugar de los 300 DPI típicos de la impresión. La solución es renderizar a mayor densidad; html2canvas acepta una opción scale (normalmente 2× para una salida de calidad Retina), a costa de tamaños de archivo más grandes.
¿Por qué mi bloque de código no se resalta con colores?
marked.js no incluye el resaltado de sintaxis por defecto, solo envuelve los bloques delimitados en etiquetas <pre><code class="language-…">. El resaltado real necesita una biblioteca aparte como Prism.js o highlight.js, que este build no incluye. El PDF mostrará tu código en monoespaciado, pero sin el tema de colores verde y rojo que podrías esperar de GitHub.
¿Puedo incluir notas al pie o una tabla de contenidos?
Las notas al pie ([^1] para las referencias y [^1]: definitions para las definiciones) son una característica de renderizado de GitHub fuera de la especificación estándar de GFM y este build no las analiza. Una tabla de contenidos requiere o bien una extensión de Markdown (como el plugin TOC de markdown-it) o escribir a mano la lista de enlaces. Para ambas, Pandoc con su opción --toc es la herramienta adecuada.
¿El PDF estará etiquetado para la accesibilidad?
No. La salida es un PDF de imágenes de páginas sin etiquetas semánticas, texto alternativo ni pistas de orden de lectura; no pasaría una comprobación de conformidad PDF/UA. Para el trabajo que requiere accesibilidad (formularios gubernamentales, documentos del sector público, cualquier cosa sujeta a WCAG / EN 301 549 / Section 508), usa Pandoc + LaTeX con un filtro de accesibilidad, las herramientas de etiquetado de Adobe Acrobat Pro o una canalización WeasyPrint del lado del servidor.
¿Se envía algo a un servidor?
No. El texto nunca sale de tu navegador. marked.js analiza el Markdown localmente, html2canvas pinta en un lienzo fuera de pantalla, jsPDF construye el objeto PDF y el navegador lo guarda. Las bibliotecas en sí se cargan desde una CDN pública con comprobaciones de integridad de subrecursos; se obtienen una vez y luego se almacenan en caché. Una vez cargada la página, funciona sin conexión.