Poppler

維基百科,自由的百科全書
跳至導覽 跳至搜尋
Poppler
File:Poppler logotype.svg
開發者freedesktop.org
首次發布2005年3月4日,​21年前​(2005-03-04
當前版本
    Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
    源代碼庫
    • {{URL|example.com|可选的显示文本}}
    Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
    編程語言C++
    引擎
      Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
      操作系統Linux, Unix, BSD, Windows
      類型函式庫
      許可協議GPLv2GPLv3
      網站poppler.freedesktop.org

      Poppler(或稱為 libpoppler)是一個用來渲染 PDF 文檔的自由程序庫,其開發受 freedesktop.org 支持。它是 GNU/Linux 系統上同類程序庫中最為常用的[1],並被開源桌面環境 GNOMEKDE 上的 PDF 閱讀器所使用。

      項目發起者 Kristian Høgsberg 有兩個目標:[2]

      1. 以一個程序庫的方式提供PDF渲染功能,集中維護力量。
      2. 超過Xpdf的目標,並與現代操作系統所提供的功能結合。

      到了2011年0.18版釋出,Poppler庫完整實現了PDF標準 ISO 32000-1英語ISO 32000-1,還是第一個支持表單和注釋的主流的自由 PDF 程序庫。[1]

      Poppler本身是Xpdf-3.0,一個由來自Glyph and Cog, LLC 的 Derek Noonburg 開發的 PDF 閱讀器的分支。[2][3]

      項目名稱「Poppler」來自動畫《Futurama》「The Problem with Popplers」一集。[3]

      應用[編輯]

      許多知名的自由軟件使用 Poppler 渲染 PDF 文檔。[4]

      應用程序 圖形庫
      Evince GTK+
      GIMP GTK+
      Inkscape GTK+
      KPDF Qt
      LibreOffice 4.2 GTK+
      Okular Qt
      pdftotext英語pdftotext、pdftohtml 等
      TeXworks英語TeXworks Qt
      TeXstudio GTK+
      VPDF GTK+
      Xournal GTK+
      Zathura英語Zathura (document viewer) GTK+

      特性[編輯]

      Poppler可以使用Cairo和Splash兩個後端繪製PDF文檔,而它的特性又取決於所使用的後端。一個基於Qt4繪製框架的第三方後端「Arthur」也是可用的,但是並不完整,而且已不再是活躍開發狀態了。[5] Glib,Qt3和Qt4的綁定提供了對Poppler後端的交互界面。儘管Qt3和Qt4綁定僅僅支持Splash後端,有一組可用的補丁支持使用Cairo後端的Qt4綁定。[6]然而,Poppler 項目現在依然不希望將這個特性添加到 Poppler 庫中。[7]

      後端的一些特點包括:

      • Cairo:矢量圖形反鋸齒,以及透明物件渲染。[4]
        • Cairo並不對諸如掃描文檔的位圖進行平滑處理。
        • Cairo並不依賴於X Window環境,因此Poppler得以像Wayland一樣在不同平台如WindowsMac OS上運行。
      • Splash:支持位圖的微小濾波 。[4]

      Poppler還有一個文字渲染後端,可以從命令行實用程序 pdftotext 調用。它可以用來在命令行下從 PDF 文件中搜索字符串(比如說同 grep連用)。[8]

      具體的方法示例:

      pdftotext file.pdf - | grep string
      

      Poppler支持使用JavaScript,注釋和表單的可交互式文檔,[9] 但還不支持呈現完整的XFA表單。[10]

      參考文獻[編輯]

      1. ^ 1.0 1.1 GNU PDF project leaves FSF High Priority Projects list; mission complete!. October 6, 2011 [2011-10-11]. (原始內容存檔於2014-12-28). 
      2. ^ 2.0 2.1 Poppler README file. [2010-01-21]. (原始內容存檔於2012-07-08). 
      3. ^ 3.0 3.1 Poppler Homepage. [2015-01-03]. (原始內容存檔於2015-01-08). 
      4. ^ 4.0 4.1 4.2 Poppler Wiki. Information about Poppler. [2010-01-21]. (原始內容存檔於2018-06-23). 
      5. ^ Albert Astals Cid. Re: [poppler] Qt4 Arthur. mail-archive.com. 15 May 2009 [2018-06-22]. (原始內容存檔於2018-06-23). 
      6. ^ giddie/poppler-qt4-cairo-backend. GitHub. [2018-06-22]. (原始內容存檔於2017-08-09). 
      7. ^ Bug 25240 – Cairo backend for Qt4 wrapper. freedesktop.org. [2018-06-22]. (原始內容存檔於2018-06-22). 
      8. ^ Searching PDF Files With grep. [2010-01-21]. (原始內容存檔於2010-02-12). 
      9. ^ Poppler PDF library learns Javascript. September 12, 2008 [2010-01-21]. (原始內容存檔於2018-06-22). 
      10. ^ Bug 18935 - Form data is not saved for PDF files using XFA forms, will show old values when opened in acroread / Adobe Reader, 2008-12-07 [2018-06-22], (原始內容存檔於2018-06-22)