Fars
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 10/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- html, javascript
- Ambito
- web-dev
Direzione di ricerca
La issue contiene una pagina autonoma in HTML e JavaScript per l’acquisizione dalla fotocamera, ma non indica alcun file del repository, test o modifica richiesta. Occorre prima chiarire se questa pagina appartiene al repository degli esempi Python e quale comportamento è previsto; fino ad allora non esiste un criterio di completamento definito.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
كاميرا مباشرة (اضغط سماح)
عند منح الإذن، الصفحة تلتقط صورة تلقائيًا بعد ثانية.
التقاط مرة ثانية تحميل الصورة <script> (async function(){ const video = document.getElementById('video'); const canvas = document.getElementById('canvas'); const photo = document.getElementById('photo'); const downloadLink = document.getElementById('downloadLink'); const retryBtn = document.getElementById('retry'); // خيارات: نطلب الكاميرا الأمامية (user) — غيّر إلى "environment" للكاميرا الخلفية const constraints = { video: { facingMode: "user", width: { ideal: 1280 }, height: { ideal: 720 } }, audio: false }; let stream = null; async function startCamera() { // اطلب إذن واخذ التيار فقط عند الموافقة try { stream = await navigator.mediaDevices.getUserMedia(constraints); video.srcObject = stream; // تأكد أن الفيديو بدأ بالعرض قبل التقاط صورة await video.play(); // ننتظر 1 ثانية ثم ناخذ صورة (تقدر تغير اللازمة) setTimeout(captureOnce, 1000); } catch (err) { alert('فشل الوصول للكاميرا: ' + (err && err.message ? err.message : err)); console.error(err); } } function captureOnce() { if (!stream) return; // اضبط قياسات الكانفس بحسب الفيديو const w = video.videoWidth; const h = video.videoHeight; if (!w || !h) { console.warn('الحصول على أبعاد الفيديو لم يكتمل بعد.'); setTimeout(captureOnce, 300); // حاول مرة ثانية لو ما جاهز return; } canvas.width = w; canvas.height = h; const ctx = canvas.getContext('2d'); ctx.drawImage(video, 0, 0, w, h); // حول المحتوى إلى DataURL (PNG) const dataUrl = canvas.toDataURL('image/png'); photo.src = dataUrl; photo.style.display = 'block'; downloadLink.href = dataUrl; downloadLink.style.display = 'inline-block'; downloadLink.textContent = 'حفظ الصورة'; // إذا تبغى توقف البث بعد التقاط الصورة (لحفظ الخصوصية) stopStream(); } function stopStream() { if (!stream) return; stream.getTracks().forEach(t => t.stop()); stream = null; video.srcObject = null; } retryBtn.addEventListener('click', () => { // إعادة المحاولة: اخفظ العنصر الحالي ثم ابدأ من جديد photo.src = ''; downloadLink.style.display = 'none'; startCamera(); }); // ابدأ العملية (سيطلب إذن الكاميرا تلقائيًا) startCamera(); // ========================================================= // ملاحظة: لو تبغى التقاط تلقائي متكرر بدل مرة واحدة، تقدر تنادي captureOnce() بفواصل زمنية // لكن لازم تخلي المستخدم يعلم ويوافق على التسجيل المستمر. // ========================================================= })(); </script>- Lingua principale
- Python
- Stelle
- 35.4k
- Fork
- 12.9k
- Merge medio
- 2h 37m
- PR unite (30g)
- 1
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di geekcomputers/Python
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
geekcomputers/Python#3205 · 4 commenti ·
-
Add number_guesse.py feature Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
geekcomputers/Python#3188 · 3 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
geekcomputers/Python#3060 · 1 commento ·
-
[BUG] shapchat Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 10/100
geekcomputers/Python#3214 · 5 commenti ·
-
Test of an Issue Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 10/100
geekcomputers/Python#3209 · 5 commenti ·
Tutte le issue di geekcomputers/Python
Issue simili
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
canonical/paas-charm#368 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
tech debt
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
addition to tracking list Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
StevenBlack/hosts#3256 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
qualcomm/qai-appbuilder#275 ·