ما هو لوريم إيبسوم؟

ما هو لوريم إيبسوم؟

شكلي (أي شكلي) في صناعة الطباعة والتنضيد. ظل لوريم إيبسوم النص الشكلي القياسي في هذه الصناعة منذ القرن السادس عشر، عندما قام طابع مجهول بنسخ نسخة طبق الأصل من الحروف وخلطها لإنتاج كتاب نماذج الحروف. وقد صمد هذا النص ليس فقط لخمسة قرون، بل أيضًا بعد قفزة التنضيد الإلكتروني، وظل على حاله دون تغيير يُذكر. انتشر في ستينيات القرن الماضي مع إصدار أوراق Letraset التي تحتوي على مقاطع من لوريم إيبسوم، ومؤخرًا مع برامج النشر المكتبي مثل Aldus PageMaker التي تتضمن إصدارات من لوريم إيبسوم.
    document.addEventListener("DOMContentLoaded", function () { /* -------- Date Helpers -------- */ function addDays(date, days) { const d = new Date(date); d.setDate(d.getDate() + days); return d; } function isWorkingDay(date) { const day = date.getDay(); // 0=Sun, 6=Sat return day !== 0 && day !== 6; // Mon-Fri only } function addWorkingDays(startDate, days) { let current = new Date(startDate); let remaining = days; while (remaining > 0) { current = addDays(current, 1); if (isWorkingDay(current)) { remaining--; } } return current; } function formatDate(date) { return date.toISOString().split('T')[0]; // YYYY-MM-DD } /* -------- DOM Wiring -------- */ const calcButton = document.getElementById("calcBtn"); const daysInput = document.getElementById("daysInput"); const typeContainer = document.getElementById("typeContainer"); const dayTypeSelect = document.getElementById("dayType"); const resultDiv = document.getElementById("result"); if (!calcButton || !daysInput || !typeContainer || !dayTypeSelect || !resultDiv) { console.error("Required DOM elements missing"); return; } let enteredDays = 0; calcButton.addEventListener("click", function () { enteredDays = parseInt(daysInput.value, 10); if (!Number.isInteger(enteredDays) || enteredDays < 0) { resultDiv.textContent = "Please enter a valid non-negative integer."; resultDiv.style.color = "red"; return; } typeContainer.style.display = "block"; dayTypeSelect.value = ""; resultDiv.textContent = ""; }); dayTypeSelect.addEventListener("change", function () { if (enteredDays === 0) return; const today = new Date(); let resultDate; if (dayTypeSelect.value === "working") { resultDate = addWorkingDays(today, enteredDays); } else { resultDate = addDays(today, enteredDays); } const formatted = formatDate(resultDate); resultDiv.textContent = `Result date: ${formatted}`; resultDiv.style.color = "green"; // Reset enteredDays = 0; typeContainer.style.display = "none"; dayTypeSelect.value = ""; daysInput.value = ""; }); });