Generated by GPT-5-mini| Evince | |
|---|---|
![]() | |
| Name | Evince |
| Screenshot | Evince screenshot |
| Caption | Document viewer |
| Developer | GNOME Project |
| Released | 2006 |
| Programming language | C, Python |
| Operating system | Linux, BSD, Windows (historically) |
| License | GNU Lesser General Public License |
Evince is a document viewer originally developed for the GNOME desktop environment to provide a simple, unified interface for reading multiple document types. It was created to replace several disparate viewers and to integrate with projects such as GNOME and distributions like Ubuntu, Debian, and Fedora. The project has been associated with contributors from organizations including Red Hat, Canonical (company), and independent developers active in the Free Software Foundation ecosystem.
Evince began as a response to fragmentation among document viewers on the GNOME desktop, where applications such as xpdf, GNOME Document Viewer, and specialized viewers for PostScript and DjVu coexisted. Initial development took place in the mid-2000s with aims influenced by design principles promoted at GUADEC and engineering discussions in the GNOME Developer Center. Early maintainers included contributors who had previously worked on xpdf, Poppler (software), and components used by X.Org Server and GTK+. Evince's integration into major distributions occurred alongside shifts in packaging policies at Debian and Ubuntu, and it was included in release milestones that paralleled desktop transitions such as the move from GNOME 2 to GNOME 3. Over time, contributions came from engineers employed by Red Hat, staff at Canonical (company), and volunteers active on platforms like GitLab and the GNOME GitLab instance. The project has taken cues from archival and accessibility efforts seen in institutions like the Internet Archive and standards bodies such as the World Wide Web Consortium.
Evince emphasizes fast rendering, low memory usage, and a minimal interface while supporting advanced functionality desired by users of LibreOffice, Mozilla Firefox, and other desktop applications. It provides searching, page thumbnails, continuous and single-page modes, text selection, printing support via CUPS, and integration with accessibility frameworks exemplified by Assistive Technology Service Provider Interface (AT-SPI). It leverages libraries such as Poppler (software), libsecret, and GLib to implement features like metadata display and annotation storage, and interacts with desktop services including D-Bus and GVfs for file handling. Evince has implemented fullscreen presentation, dual-page viewing, automatic document rotation, and support for document indexing used by projects like Tracker (search tool) and Baloo (file indexing).
Evince uses a combination of internal parsers and external libraries to handle a broad set of document formats. Native support and backend libraries include: Portable Document Format via Poppler (software), PostScript through Ghostscript, DjVu with DjVuLibre, Microsoft XPS via libgxps, TIFF handled by libtiff, DVI support leveraging libxdvi components, and comic book archives (CBZ/CBR) based on compression libraries used in 7-Zip and libarchive. Integration with image codecs provided by GdkPixbuf and ImageMagick increases format coverage. Evince's format handling parallels capabilities found in viewers such as Okular, Adobe Acrobat Reader, and MuPDF (software).
Evince is implemented primarily in the C (programming language) using the GTK (toolkit) stack, with auxiliary scripts in Python (programming language) for tooling and testing. Core rendering responsibilities are delegated to backends like Poppler (software), while application-level concerns are managed via GLib main loops and components from GObject for object-oriented patterns. Build and packaging use systems and standards familiar to the Free Software Foundation ecosystem, including GNU Autotools historically and newer integrations with GObject Introspection for language bindings. Evince communicates with desktop services via D-Bus and storage through GVfs, and employs the GNU Lesser General Public License to remain usable by both GNOME and third-party software. Performance optimizations were informed by profiling with tools such as Valgrind and GDB, and cross-platform efforts referenced portability practices used by CMake-based projects.
Evince adopts GNOME human interface guidelines established by projects like GNOME and design conversations at events such as GUADEC. The UI is built on GTK (toolkit), employing header bars, side panes for thumbnails and annotations, and a toolbar with navigation elements similar to those in Firefox and Evince alternatives. Accessibility integration uses AT-SPI and platform-specific assistive frameworks employed by Orca (screen reader). File dialogs and integration adhere to specifications such as freedesktop.org standards and interact with services like GVfs and Flatpak sandboxing for modern distribution packaging. Keyboard shortcuts and menu structures mirror conventions established by GNOME and popular applications such as LibreOffice to reduce friction for users migrating between environments.
Evince has been adopted as the default document viewer in numerous Linux distributions including Ubuntu, Fedora, and Debian, often replacing legacy viewers to streamline the desktop experience alongside projects like GNOME Shell and systemd-era distributions. Reviews in community outlets and comparisons with applications such as Okular, Adobe Acrobat Reader, and MuPDF (software) highlighted its simplicity, integration with GNOME, and reliance on widely used libraries like Poppler (software) and Ghostscript. Contributions from corporations like Red Hat and community organizations such as GNOME Foundation have sustained maintenance, while packaging initiatives including Flatpak and Snap (package manager) have influenced distribution and sandboxing approaches. Academic and archival institutions referencing viewers in workflows—examples include Internet Archive ingest practices and digital preservation projects—have noted Evince as part of the ecosystem of open-source document tools.
Category:GNOME applications