Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Openpdf-html: Improve HTML5 and modern CSS support

Aperta
#1,365 1 commento 4 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
20/100
Tipo di issue
Funzionalità
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
css, html, java
Ambito
backend, web-dev

Direzione di ricerca

Start in the openpdf-html module linked in the issue and read its existing HTML and CSS support. Choose one of the listed improvements, then trace the relevant parser and rendering entry points; the issue does not identify specific files or tests. Done means implementing a selected improvement and verifying its PDF output, but the issue does not define acceptance criteria.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

https://github.com/LibrePDF/OpenPDF/tree/master/openpdf-html

💡 Ideas to Improve openpdf-html

  • Improve HTML5 and CSS support!

  • Consider using Jsoup for HTML parsing. https://jsoup.org/

  1. Improve @media query handling

    • ✅ Partial support exists — expand support for more media types (e.g., screen, all, min-width, max-width)
    • 📈 Benefit: Enables more responsive PDF rendering based on CSS print rules.
  2. Add support for display: flex (basic Flexbox)

    • ⛔ Currently unsupported
    • 📈 Benefit: Allows rendering of modern layouts commonly used in HTML/CSS today.
  3. Enhance <table> rendering

    • 🛠 Improve support for thead, tfoot, colspan, rowspan, and automatic header repetition across pages.
    • 📈 Benefit: Enables more professional and structured reports.
  4. Implement position: fixed for headers/footers

    • ⛔ Not currently rendered as fixed
    • 📈 Benefit: Allows sticky headers or footers for printed documents, great for page numbers and branding.
  5. Improve font fallback and international character support

    • 🛠 Improve behavior when specified fonts are missing; better default to system or bundled fonts.
    • 📈 Benefit: Better support for multilingual PDFs and consistent rendering.
  6. Add support for <svg> elements

    • ⛔ Not supported
    • 📈 Benefit: Enables vector graphics, icons, and charts to be rendered natively.
  7. Improve image rendering (e.g. <picture>, srcset)

    • 🛠 Support HTML <picture> tag and srcset attributes to choose optimal image resolution.
    • 📈 Benefit: Better image quality and optimization in PDF output.
  8. Support @font-face for embedded custom fonts

    • ⛔ Not yet supported
    • 📈 Benefit: Allows authors to use brand fonts directly from CSS in the final PDF.
  9. Render CSS box-shadow and text-shadow

    • ⛔ Shadows are currently ignored
    • 📈 Benefit: Improves fidelity of modern UI and design-heavy HTML.
  10. Expose a debug/render tree output for PDF generation

    • 🧪 Provide a debug mode that outputs the parsed render tree or layout model.
    • 📈 Benefit: Makes debugging layout issues much easier for developers.

See: https://github.com/flyingsaucerproject/flyingsaucer/issues

Lingua principale
Java
Stelle
4.4k
Fork
714
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di LibrePDF/OpenPDF

Tutte le issue di LibrePDF/OpenPDF

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.