explain ptosis in opthalmology mbbs
clinical diagram types causes of ptosis eyelid ophthalmology levator palsy
ptosis AND management
ptosis ophthalmology evaluation causes management clinical guideline
https://www.aao.org/eyenet/article/acquired-ptosis-evaluatio…
| Type | Mechanism | Examples / clues |
|---|---|---|
| Aponeurotic (involutional) | Levator aponeurosis stretches, dehisces, or disinserts | Most common acquired cause. Elderly patient, high lid crease, good levator function |
| Neurogenic | Nerve supply defect | CN III palsy, Horner syndrome |
| Myogenic | Levator muscle disease | Myotonic dystrophy, chronic progressive external ophthalmoplegia |
| Neuromuscular junction | Impaired transmission | Myasthenia gravis, botulism |
| Mechanical | Lid is weighed down or scarred | Lid tumor, edema, chalazion, dermatochalasis, cicatricial disease |
| Traumatic / iatrogenic | Damage from trauma or surgery | Following eyelid surgery, cataract surgery, contact lens use |
Ptosis is drooping of the upper eyelid due to congenital or acquired dysfunction of the levator muscle, its aponeurosis, its nerve supply, sympathetic supply to Müller muscle, or mechanical factors.
Examine lid height, levator function, lid crease, pupils, ocular movements, Bell phenomenon, and visual function.
Always exclude third-nerve palsy, Horner syndrome, and myasthenia gravis in acquired ptosis.
Treatment is cause-specific, with levator surgery for good function and frontalis sling for poor levator function.
Create a one-page ptosis revision PDF
~/
ptosis AND management
ptosis ophthalmology evaluation management American Academy Ophthalmology
mkdir -p "/tmp/workspace/ptosis-revision-pdf/src" "/tmp/workspace/ptosis-revision-pdf/output" && python - <<'PY' from reportlab.lib.pagesizes import A4 from reportlab.pdfgen import canvas from reportlab.lib import colors from reportlab.lib.units import mm from reportlab.pdfbase.pdfmetrics import stringWidth from reportlab.pdfbase.ttfonts import TTFont from reportlab.pdfbase import pdfmetrics from reportlab.pdfbase.pdfmetrics import registerFontFamily from reportlab.pdfbase.ttfonts import TTFont import os out='/tmp/workspace/ptosis-revision-pdf/output/Ptosis_MBBS_One_Page_Revision.pdf' # Use built in Helvetica for compatibility W,H=A4 c=canvas.Canvas(out,pagesize=A4) c.setTitle('Ptosis - MBBS One-Page Revision') # palette navy=colors.HexColor('#11324D'); blue=colors.HexColor('#1676A8'); pale=colors.HexColor('#EAF4F9'); red=colors.HexColor('#A52A2A'); amber=colors.HexColor('#FFF4D6'); green=colors.HexColor('#EDF7F0'); dark=colors.HexColor('#17222B'); grey=colors.HexColor('#52616B') margin=12*mm; gap=5*mm; colw=(W-2*margin-gap)/2; left=margin; right=margin+colw+gap def rect(x,y,w,h,fill,stroke=None, radius=0): c.setFillColor(fill); c.setStrokeColor(stroke or fill) if radius: c.roundRect(x,y,w,h,radius,stroke=0,fill=1) else: c.rect(x,y,w,h,stroke=0,fill=1) def txt(x,y,s,size=8,font='Helvetica',color=dark): c.setFont(font,size); c.setFillColor(color); c.drawString(x,y,s) def wrapped(x,y,text,width,size=7.5,leading=9,font='Helvetica',color=dark, bullet=False): words=text.split(); line=''; yy=y for word in words: cand=(line+' '+word).strip() if stringWidth(cand,font,size)<=width: line=cand else: txt(x,yy,line,size,font,color); yy-=leading; line=word if line: txt(x,yy,line,size,font,color); yy-=leading return yy def section(x,y,w,title,body,fill=pale, titlecol=navy, size=7.35, leading=8.7): # calculate height temporary based on text wrapping words=body.split(); lines=[]; line='' for word in words: cand=(line+' '+word).strip() if stringWidth(cand,'Helvetica',size)<=w-10: line=cand else: lines.append(line); line=word if line: lines.append(line) h=14+len(lines)*leading+5 rect(x,y-h,w,h,fill,radius=3) txt(x+5,y-10,title,8.3,'Helvetica-Bold',titlecol) yy=y-21 for line in lines: txt(x+5,yy,line,size,'Helvetica',dark); yy-=leading return y-h-4 # Header rect(0,H-30*mm,W,30*mm,navy) txt(margin,H-13*mm,'PTOSIS',22,'Helvetica-Bold',colors.white) txt(margin,H-20*mm,'MBBS Ophthalmology - One-Page Revision',9.5,'Helvetica',colors.white) txt(W-margin-65*mm,H-13*mm,'UPPER-LID DROOP',8.5,'Helvetica-Bold',colors.HexColor('#B9E4F5')) txt(W-margin-65*mm,H-20*mm,'Classify • Examine • Do not miss red flags',7.5,'Helvetica',colors.white) y=H-35*mm # top definition strip rect(margin,y-15*mm,W-2*margin,15*mm,colors.HexColor('#DDF1FA'),radius=4) txt(margin+5,y-7*mm,'Definition:',8.5,'Helvetica-Bold',navy) txt(margin+28*mm,y-7*mm,'abnormally low upper eyelid in primary gaze.',8.5,'Helvetica',dark) txt(margin+5,y-12*mm,'Normal upper lid covers approximately 2 mm of superior cornea.',7.5,'Helvetica',grey) y-=20*mm # columns ly=y; ry=y ly=section(left,ly,colw,'1. ANATOMY', 'Levator palpebrae superioris is the main elevator and is supplied by CN III. Muller muscle adds 1-2 mm of elevation and is sympathetically supplied.', green) ly=section(left,ly,colw,'2. CLASSIFICATION', 'Congenital: levator dysgenesis, poor lid crease and poor levator action. Acquired: aponeurotic, neurogenic, myogenic/neuromuscular, mechanical, traumatic or iatrogenic.') # causes table mini rect(left,ly-54*mm,colw,54*mm,colors.HexColor('#F7F9FA'),radius=3) txt(left+5,ly-9,'HIGH-YIELD CAUSES',8.3,'Helvetica-Bold',navy) rows=[('Aponeurotic','Elderly; high crease; good levator function'),('CN III palsy','Severe ptosis + ophthalmoplegia +/- dilated pupil'),('Horner syndrome','Mild ptosis + miosis + reverse lower-lid ptosis'),('Myasthenia','Variable, fatigable ptosis; pupils normal'),('Mechanical','Mass, edema, scarring, dermatochalasis')] yy=ly-18 for a,b in rows: txt(left+5,yy,a,6.8,'Helvetica-Bold',blue); txt(left+34*mm,yy,b,6.5,'Helvetica',dark); yy-=7 ly=ly-58*mm ly=section(left,ly,colw,'3. PSEUDOPTOSIS', 'Apparent, not true, ptosis: enophthalmos or small globe, contralateral lid retraction, ipsilateral hypotropia, brow ptosis, or excess upper-lid skin.', colors.HexColor('#F4F0FA')) # right ry=section(right,ry,colw,'4. HISTORY', 'Onset and duration, old photographs, unilateral/bilateral, variability or fatigue, diplopia, pain/headache, trauma/surgery/contact lens use, and systemic weakness.', colors.HexColor('#EAF4F9')) # examination box rect(right,ry-69*mm,colw,69*mm,colors.HexColor('#F7F9FA'),radius=3) txt(right+5,ry-10,'5. EXAMINATION - WRITE THESE IN VIVA',8.3,'Helvetica-Bold',navy) exam=['Visual acuity and refraction: assess amblyopia in children.','MRD1: corneal light reflex to upper-lid margin.','Ptosis severity: mild 1-2 mm; moderate 3-4 mm; severe >4 mm.','Levator function: lid excursion in down to upgaze with brow fixed.','Lid crease: high in aponeurotic; poor/absent in congenital.','Pupils, ocular movements, cover test and diplopia.','Fatigability test, Bell phenomenon, lagophthalmos and corneal exposure.'] yy=ry-19 for item in exam: yy=wrapped(right+7,yy,u'• '+item,colw-13,6.9,8.0) ry=ry-73*mm # red flags rect(right,ry-34*mm,colw,34*mm,amber,radius=3) txt(right+5,ry-10,'RED FLAGS - URGENT ASSESSMENT',8.2,'Helvetica-Bold',red) redtext='Acute ptosis with severe headache, pain, diplopia, ophthalmoplegia, or anisocoria/dilated pupil: suspect compressive CN III palsy. New Horner syndrome also needs cause-directed evaluation.' wrapped(right+5,ry-20,redtext,colw-10,7.0,8.3,'Helvetica',dark) ry-=38*mm ry=section(right,ry,colw,'6. MANAGEMENT', 'Treat the cause first. Observe mild congenital ptosis if no visual-axis block, amblyopia or chin-up posture. Surgery: levator resection/advancement for fair-good function; frontalis sling for poor levator function. Check corneal protection before surgery.', green) # Bottom key lines bot=28*mm rect(margin,bot,W-2*margin,18*mm,navy,radius=3) txt(margin+5,bot+11,'EXAM PEARL:',8.4,'Helvetica-Bold',colors.white) txt(margin+31*mm,bot+11,'Acquired ptosis = examine pupils + ocular movements + fatigability before calling it involutional.',7.7,'Helvetica',colors.white) txt(margin+5,bot+5,'Memory aid:',7.7,'Helvetica-Bold',colors.HexColor('#B9E4F5')) txt(margin+27*mm,bot+5,'A N M M = Aponeurotic, Neurogenic, Myogenic, Mechanical.',7.7,'Helvetica',colors.white) # footer txt(margin,14*mm,'Based on Kanski’s Clinical Ophthalmology, 10th ed., p. 75, and Wills Eye Manual.',6.2,'Helvetica',grey) txt(W-margin-28*mm,14*mm,'For revision use',6.2,'Helvetica',grey) c.showPage(); c.save() print(out) PY python - <<'PY' from pypdf import PdfReader p='/tmp/workspace/ptosis-revision-pdf/output/Ptosis_MBBS_One_Page_Revision.pdf' r=PdfReader(p) print('pages=',len(r.pages)) print('chars=',len(r.pages[0].extract_text() or '')) print((r.pages[0].extract_text() or '')[:400]) PY
Ptosis MBBS One Page Revision
PDF Document · PDF
CVS clinical history taking
cardiovascular history taking AND systematic review
cardiovascular clinical history taking chest pain dyspnea palpitations syncope NICE assessment
https://cks.nice.org.uk/topics/breathlessness/diagnosis/asse…
“What brought you to hospital today?”
“Can you tell me more about this problem?”
“Mr X is a 62-year-old man with hypertension, diabetes, smoking history, and dyslipidaemia, presenting with 2 hours of central constricting chest pain radiating to the left arm. The pain began at rest and is associated with sweating, nausea, and shortness of breath. He has a background history of previous MI and is taking aspirin, atorvastatin, metoprolol, and ramipril. The history is concerning for acute coronary syndrome.”