Plantilla Para Rifa 100 Numeros Pdf !!link!! May 2026

/* Información adicional y datos de la rifa */ .info-footer display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 30px; padding-top: 20px; border-top: 2px solid #f1f5f9; font-size: 0.85rem; color: #1e293b; gap: 20px; .seller-box, .notes-box background: #fefce8; padding: 12px 20px; border-radius: 28px; flex: 1; min-width: 180px; .seller-box strong, .notes-box strong display: block; font-size: 0.75rem; text-transform: uppercase; color: #ca8a04; letter-spacing: 1px; .sign-line border-bottom: 1.5px solid #334155; margin-top: 8px; width: 80%; min-height: 24px;

<!-- Pie con datos de la organización / vendedor --> <div class="info-footer"> <div class="seller-box"> <strong>📌 VENDEDOR / ORGANIZADOR</strong> <div style="margin-top: 8px;">Nombre: _________________________</div> <div style="margin-top: 6px;">Teléfono / Contacto: _______________</div> <div style="margin-top: 12px;"><strong>Fecha del sorteo:</strong> ____/____/______</div> </div> <div class="notes-box"> <strong>📝 NOTAS / PREMIO</strong> <div>Premio: __________________________________</div> <div>Valor del número: $ ___________</div> <div>Total recaudado: ___________</div> <div class="sign-line"></div> <div style="margin-top: 6px;">Firma responsable: _________________</div> </div> </div> <div class="footer-note"> * Cada número tiene espacio para escribir el nombre del comprador. Imprima esta plantilla y utilícela para controlar su rifa de 100 números. </div> </div> plantilla para rifa 100 numeros pdf

<script> // Generar dinámicamente los 100 números con diseño para nombre function generateGrid() const gridContainer = document.getElementById('numbersGrid'); if (!gridContainer) return; gridContainer.innerHTML = ''; // Creamos 100 números del 1 al 100 for (let i = 1; i <= 100; i++) const cell = document.createElement('div'); cell.className = 'ticket-cell'; // Número destacado const numberSpan = document.createElement('div'); numberSpan.className = 'numero'; numberSpan.textContent = i; // Sección para nombre del comprador / vendido a: const nameDiv = document.createElement('div'); nameDiv.className = 'nombre-line'; nameDiv.innerHTML = `<span>✍️ Comprador</span><div class="line-placeholder"></div>`; cell.appendChild(numberSpan); cell.appendChild(nameDiv); gridContainer.appendChild(cell); // Función para imprimir directamente (abre diálogo de impresión nativo -> opción "Guardar como PDF") function printTemplate() window.print(); // Función para generar PDF utilizando la ventana de impresión con estilo optimizado // También permite forzar un mejor escalado. Dado que el navegador permite "guardar como PDF" // simplemente llamamos a imprimir pero añadimos un pequeño mensaje para que el usuario sepa que puede guardarlo. function generatePDF() // Sugerencia al usuario: usamos el mismo método de impresión pero con un pequeño toast visual // Esto asegura que el navegador muestre la vista previa de impresión y desde allí se pueda guardar como PDF. // Como no estamos usando librerías externas, es la forma más robusta y multiplataforma. const originalTitle = document.title; document.title = "Plantilla_Rifa_100_Numeros"; // Pequeño mensaje emergente sutil (opcional) const msgDiv = document.createElement('div'); msgDiv.textContent = "📄 Preparando PDF... En la ventana de impresión, elige 'Guardar como PDF'."; msgDiv.style.position = 'fixed'; msgDiv.style.bottom = '20px'; msgDiv.style.left = '20px'; msgDiv.style.backgroundColor = '#1e293b'; msgDiv.style.color = 'white'; msgDiv.style.padding = '8px 18px'; msgDiv.style.borderRadius = '40px'; msgDiv.style.fontSize = '0.8rem'; msgDiv.style.zIndex = '9999'; msgDiv.style.fontWeight = '500'; msgDiv.style.boxShadow = '0 4px 10px rgba(0,0,0,0.2)'; document.body.appendChild(msgDiv); setTimeout(() => window.print(); setTimeout(() => if (msgDiv && msgDiv.remove) msgDiv.remove(); , 800); , 150); setTimeout(() => document.title = originalTitle; , 500); // Inicializar la cuadrícula generateGrid(); // Botones const printButton = document.getElementById('printBtn'); const pdfButton = document.getElementById('pdfBtn'); if (printButton) printButton.addEventListener('click', printTemplate); if (pdfButton) pdfButton.addEventListener('click', generatePDF); // Opcional: para que al hacer clic en "Generar PDF" se pueda personalizar aún más, // pero el método window.print() es el estándar para obtener PDF fiel a lo visto. // Además, para mejorar la experiencia en móviles y desktop, se incluyen estilos responsivos. // Podemos añadir instrucción en consola amigable console.log('✅ Plantilla para rifa de 100 números lista. Usa los botones para imprimir o generar PDF.'); // Pequeña mejora: Si se detecta que el usuario hace click en el área del número para simular llenado, // pero no es necesario, solo es una plantilla estática editable a mano después de imprimir. // También proporcionamos un campo adicional para rellenar con nombre si se usa digitalmente (opcional) // pero como es plantilla impresa, mantenemos lineas punteadas listas para escribir a mano. </script> /* Información adicional y datos de la rifa */

.nombre-line border-top: 1px dashed #cbd5e1; padding-top: 8px; margin-top: 4px; font-size: 0.7rem; font-weight: 500; color: #475569; text-transform: uppercase; letter-spacing: 0.3px; .nombre-line span display: block; font-size: 0.65rem; color: #94a3b8; .line-placeholder display: inline-block; width: 100%; border-bottom: 1.2px dotted #cbd5e1; margin-top: 6px; min-height: 18px; Dado que el navegador permite "guardar como PDF"

/* Botones para imprimir / generar PDF */ .action-buttons display: flex; gap: 18px; justify-content: center; flex-wrap: wrap; .btn border: none; background: #1e293b; color: white; font-weight: 600; padding: 12px 32px; border-radius: 60px; font-size: 1rem; cursor: pointer; transition: 0.2s; font-family: inherit; box-shadow: 0 2px 5px rgba(0,0,0,0.1); .btn-pdf background: #b91c1c; .btn-pdf:hover background: #991b1b; transform: scale(0.97); .btn-print background: #2c3e66; .btn-print:hover background: #1e2b48; .btn:hover opacity: 0.9; transform: translateY(-2px);