HexaPDF
Open Source Ruby Library pro zpracování PDF
Vytvářejte a upravujte dokumenty PDF, slučujte soubory PDF, zmenšujte velikost souborů PDF, přidávejte anotace, extrahujte obrázky a text prostřednictvím bezplatné knihovny Ruby s otevřeným zdrojovým kódem.
Portable Document Format (PDF) je multiplatformní formát souborů, který lze použít ke sdílení a zobrazování dokumentů v elektronické podobě nezávisle na softwaru, hardwaru nebo operačním systému. HexaPDF je open source knihovna PDF, která umožňuje vývojářům softwaru vytvářet výkonné aplikace pro práci s dokumenty PDF pomocí kódu Ruby. Umožňuje vývojářům vytvářet soubory PDF od začátku s minimálním úsilím.
HexaPDF je čistá knihovna Ruby, která byla navržena tak, aby poskytovala snadné použití a lepší výkon. Knihovna obsahuje několik důležitých funkcí souvisejících s generováním dokumentů PDF a také s manipulací, jako je otevírání a čtení existujících PDF, úprava existujících souborů PDF, extrakce metainformací a textu, extrahování obrázků a souborů z PDF, slučování souborů PDF, šifrování nebo dešifrování PDF. souborů, optimalizace souborů PDF pro menší velikost souboru a mnoho dalších.
Knihovna plně podporuje vrstvu na vysoké úrovni pro skládání dokumentu z jednotlivých prvků, jako jsou záhlaví, odstavce, odkazy, zdůrazněný text a další. Tyto prvky se automaticky upravují, přizpůsobují a lze je upravit podle vašich potřeb. Snadno můžete přidat další typy prvků.
Začínáme s HexaPDF
Pro bezproblémové používání knihovny HexaPDF je prvním důležitým krokem její instalace. Doporučený způsob instalace je pomocí Rubygem. Použijte prosím následující příkaz.
Nainstalujte HexaPDF pomocí Rubygem
$ gem install hexapdf
Vytvářejte nové soubory PDF pomocí knihovny Ruby
Open source PDF knihovna HexaPDF poskytuje kompletní funkcionalitu pro vytváření nových PDF dokumentů od nuly pomocí pouhých několika Ruby příkazů. Pro vytvoření PDF potřebujete prázdnou instanci dokumentu. Jakmile je prázdný soubor PDF vytvořen, je nyní možné do něj přidávat nové stránky, kreslit čáry, křivky, obdélníky, vkládat text a aplikovat na něj barvy. Můžete také upravit velikost čáry a aplikovat na ni různé barvy a efekty.
Vytváření souborů PDF pomocí knihovny Ruby
require 'hexapdf'
doc = HexaPDF::Document.new
canvas = doc.pages.add.canvas
canvas.font('Helvetica', size: 100)
canvas.text("Hello World!", at: [20, 400])
doc.write("hello_world.pdf", optimize: true)
Slučování souborů PDF přes Ruby
Bezplatná knihovna PDF HexaPDF umožňuje softwarovým programátorům snadno kombinovat své dokumenty PDF pomocí kódu Ruby. Sloučení souborů PDF lze provést různými způsoby. Jedním jednoduchým způsobem je importovat stránky ze zdrojových souborů do cílových souborů. Což zachová obsah stránky a poté lze použít příkaz sloučení pro sloučení souborů. Pro složitější sloučení použijte binární příkaz HexaPDF.
Sloučení souborů PDF pomocí HexaPDF
# imports pages of the source files into the target file. Preserves the page contents themselves.
require 'hexapdf'
target = HexaPDF::Document.new
ARGV.each do |file|
pdf = HexaPDF::Document.open(file)
pdf.pages.each {|page| target.pages << target.import(page)}
end
target.write("2.merging.pdf", optimize: true)
Optimalizujte velikost PDF pomocí knihovny Ruby
Open source PDF knihovna HexaPDF pomáhá softwarovým profesionálům zmenšit velikost PDF dokumentů v Ruby aplikacích. Existují různé druhy technik, které lze použít k optimalizaci velikosti PDF, jako je odstranění nepoužívaných a odstraněných objektů, použití proudů objektů a křížových odkazů a rekomprese proudů obsahu stránky, dílčí nastavení písem, sloučení nebo objekt atd.
Číst a optimalizovat soubory PDF přes Ruby
// Optimize PDF Size
require 'hexapdf'
HexaPDF::Document.open(ARGV.shift) do |doc|
doc.task(:optimize, compact: true, object_streams: :generate,
compress_pages: false)
doc.write('optimizing.pdf')
end
Podpora šifrování a dešifrování PDF
Knihovna HexaPDF umožňuje vývojářům zabezpečit své dokumenty PDF použitím šifrování pomocí kódu Ruby. PDF má vestavěnou podporu pro jejich zabezpečení šifrováním obsahu a přiřazením práv k použití. Během šifrování PDF jsou zašifrovány všechny řetězce a toky bajtů a tok metadat je vyjmut, aby mohl být extrahován během analýzy souboru PDF. Takže každý, kdo má zájem o prohlížení PDF dokumentů, musí poskytnout heslo.
Použijte digitální podpis na PDF přes Ruby
// Add Digital signatures to PDF
require 'hexapdf'
require HexaPDF.data_dir + '/cert/demo_cert.rb'
doc = HexaPDF::Document.open(ARGV[0])
doc.sign("signed.pdf", reason: 'Some reason',
certificate: HexaPDF.demo_cert.cert,
key: HexaPDF.demo_cert.key,
certificate_chain: [HexaPDF.demo_cert.sub_ca,
HexaPDF.demo_cert.root_ca])
end