Prawn
Ātra PDF ģenerēšana, izmantojot atvērtā pirmkoda Rubīna bibliotēku
Bezmaksas Ruby PDF API, kas ļauj programmētājiem izveidot un modificēt PDF failus; ievietot, rediģēt grafiku un zīmēt tekstu PDF lapā Ruby Apps.
Portatīvā dokumenta formāts (PDF) ir ļoti populārs uzticams un drošs failu formāts failu prezentēšanai, kopīgošanai un drukāšanai visā pasaulē. Atvērtā koda Ruby bibliotēka Prawn ir nodrošinājusi pilnīgu funkcionalitāti darbam ar PDF dokumentiem, izmantojot Ruby bibliotēku. Bibliotēka ir ļoti viegli lietojama un labi dokumentēta, kas atvieglo izstrādātāja darbu. Tas palīdz izstrādātājiem viegli izveidot ļoti elastīgu PDF dokumentu ģenerēšanas sistēmu.
Prawn bibliotēkā ir iekļautas vairākas svarīgas funkcijas, kas ļauj programmatūras izstrādātājiem viegli apstrādāt savus PDF dokumentus, piemēram, PDF izveide no jauna, PNG un JPG attēlu iegulšana, vektoru zīmējumu pievienošana PDF failam, izmantojot iebūvētos fontus un TrueType fontus, šifrēšanas atbalsts. , drošs PDF dokuments, izmantojot paroli, teksta renderēšanas atbalsts, UTF-8 fontu atbalsts, teksta renderēšana no labās puses uz kreiso, kontūru atbalsts un daudz kas cits.
Darba sākšana ar Prawn
Lai instalētu Prawn savā sistēmā, lūdzu, palaidiet šo komandu,
Instalējiet Prawn, izmantojot RubyGems
gem install prawn
Izveidojiet PDF failus, izmantojot Ruby Library
Atvērtā pirmkoda Ruby bibliotēka Prawn ļauj programmatūras izstrādātājiem programmatiski izveidot PDF dokumentus, izmantojot pāris Ruby koda rindiņas. Bibliotēka ir nodrošinājusi 3 dažādus PDF dokumentu izveides veidus ar noklusējuma iestatījumiem un fontiem. Tie ir, izmantojot piešķiršanu, netiešu bloku vai tiešu bloku. Kad tas ir izveidots, varat viegli piekļūt katrai PDF dokumenta daļai un to modificēt. Varat viegli pievienot jaunu lapu, iestatīt lapas izmēru un piemales, mainīt fontu stilus, lietot formatējumu un daudz ko citu.
Izveidojiet un renderējiet PDF failu, izmantojot Ruby
# Using explicit block form and rendering to a file
content = "Hello World"
Prawn::Document.generate "example.pdf" do |pdf|
# self here is left alone
pdf.font "Times-Roman"
pdf.draw_text content, :at => [200,720], :size => 32
end
Grafikas ievietošana un rediģēšana PDF failos
Prawn bibliotēka sniedz programmatūras izstrādātājiem iespēju pievienot vektoru zīmējumus saviem PDF dokumentiem, izmantojot Ruby kodu. Izstrādātāji var viegli uzzīmēt līnijas, daudzstūrus, līknes, apļus utt. uz jebkuru vietu pēc savas izvēles PDF lapā. Bibliotēkā ir iekļautas vairākas svarīgas funkcijas darbam ar grafiku, piemēram, aizpildījuma krāsas, domuzīmju stilu un raksta pielietošana, līnijas biezuma iestatīšana un krāsu pielietošana, jauktā režīma izmantošana, transformācijas, kā arī caurspīdīguma lietošana utt.
Attēlu izmantošana PDF dokumentos
Atvērtā pirmkoda Ruby bibliotēka Prawn ir nodrošinājusi atbalstu attēlu ievietošanai PDF failos, izmantojot Ruby komandas. Pašlaik bibliotēkā ir iekļauts atbalsts JPEG un PNG attēliem. Ir pieejamas vairākas svarīgas funkcijas, lai pārvaldītu attēlus PDF failā, piemēram, pozīcijas pielāgošana, attēla mērogošanas atbalsts, attēla platuma un augstuma iestatīšana atsevišķi, attēla proporcionāla pielāgošana utt.
Ģenerējiet attēlu un mērogu, lai tas ietilptu PDF formātā, izmantojot Ruby
Prawn::Document.generate("image2.pdf", :page_layout => :landscape) do
pigs = "#{Prawn::DATADIR}/images/pigs.jpg"
image pigs, :at => [50,450], :width => 450
dice = "#{Prawn::DATADIR}/images/dice.png"
image dice, :at => [50, 450], :scale => 0.75
end
Teksta zīmēšana PDF lapā
Prawn bibliotēka ļauj programmatūras profesionāļiem viegli zīmēt tekstu PDF lapā savā Ruby lietojumprogrammā. Varat viegli sākt zīmēt tekstu noteiktā PDF lapas pozīcijā. Varat viegli pielāgot teksta pozīciju, pagriezt tekstu atbilstoši savām vajadzībām, lietot fonta lielumu, vienas rindiņas un vairāku rindiņu atbalstu un daudz ko citu.
Zīmējiet tekstu PDF lapā, izmantojot Ruby Library
def draw_text!(text, options)
unless font.unicode? || font.class.hide_m17n_warning || text.ascii_only?
warn "PDF's built-in fonts have very limited support for " \
"internationalized text.\nIf you need full UTF-8 support, " \
"consider using an external font instead.\n\nTo disable this " \
"warning, add the following line to your code:\n" \
"Prawn::Fonts::AFM.hide_m17n_warning = true\n"
font.class.hide_m17n_warning = true
end
x, y = map_to_absolute(options[:at])
add_text_content(text, x, y, options)
end