When developers modify a PDF document with this Ruby library, what is actually being edited is the Document Object Model (DOM). Thus, almost any changes can be made to the PDF document represented as DOM. With the provided Ruby SDK, developers can easily edit a document: modify text, update tables, add images and so on. Just load a PDF, make the necessary changes programmatically and export the result to the same or any supported save format.
Our Ruby library gives developers the ability to modify a PDF document directly by editing its Document Object Model (DOM), which means no additional software needs to be installed.
The most popular case to edit a PDF file is text editing. With the given software solution, you can add, modify or delete text using Ruby within the document.
Another popular PDF editing option is table editing. Our Ruby SDK allows you to work with tables and text in table cells.
Ruby developers can add or remove table and table cells, as well as add, edit and remove text within them.
Besides editing text and tables in PDF, there is another common option: adding images to a document in Ruby. Ruby developers can also add an image into a PDF file using DOM.
Try this powerful Ruby SDK and evaluate some options in PDF document editing. Using the following example, load your PDF document and make some changes: add text, add a table and a table cell with text or insert an image into the PDF document:
require 'aspose_words_cloud'
AsposeWordsCloud.configure do |config|
config.client_data['ClientId'] = '####-####-####-####-####'
config.client_data['ClientSecret'] = '##################'
end
@words_api = WordsAPI.new
request_document = File.open('Input.pdf')
request_paragraph = ParagraphInsert.new({:Text => 'Morbi enim nunc faucibus a.'})
insert_paragraph_request = InsertParagraphOnlineRequest.new(document: request_document,
paragraph: request_paragraph)
insert_paragraph = @words_api.insert_paragraph_online(insert_paragraph_request)
convert_request = ConvertDocumentRequest.new(
document: insert_paragraph.document.values[0], format: 'pdf')
convert = @words_api.convert_document(convert_request)
require 'aspose_words_cloud'
AsposeWordsCloud.configure do |config|
config.client_data['ClientId'] = '####-####-####-####-####'
config.client_data['ClientSecret'] = '##################'
end
@words_api = WordsAPI.new
request_document = File.open('Input.pdf')
request_table = TableInsert.new({:ColumnsCount => 1, :RowsCount => 2})
insert_table_request = InsertTableOnlineRequest.new(document: request_document,
table: request_table, node_path: '')
insert_table = @words_api.insert_table_online(insert_table_request)
convert_request = ConvertDocumentRequest.new(
document: insert_table.document.values[0], format: 'pdf')
convert = @words_api.convert_document(convert_request)
require 'aspose_words_cloud'
AsposeWordsCloud.configure do |config|
config.client_data['ClientId'] = '####-####-####-####-####'
config.client_data['ClientSecret'] = '##################'
end
@words_api = WordsAPI.new
request_document = File.open('Input1.pdf')
request_drawing_object = DrawingObjectInsert.new({:Height => 0, :Left => 0, :Top => 0,
:Width => 0, :RelativeHorizontalPosition => 'Margin',
:RelativeVerticalPosition => 'Margin', :WrapType => 'Inline'})
request_image_file = File.open('Input2.pdf')
insert_drawing_object_request = InsertDrawingObjectOnlineRequest.new(
document: request_document, drawing_object: request_drawing_object,
image_file: request_image_file, node_path: 'sections/0')
insert_drawing_object = @words_api.insert_drawing_object_online(insert_drawing_object_request)
convert_request = ConvertDocumentRequest.new(
document: insert_drawing_object.document.values[0], format: 'pdf')
convert = @words_api.convert_document(convert_request)
Install Aspose.Words Cloud SDK for Ruby using RubyGems hosting service. Run gem install aspose_words_cloud to install the package. As an alternative, you can manually clone Aspose.Words Cloud SDK for Ruby source code from GitHub and use it in your project. Please follow these Instructions to quickly get the necessary security credentials and access our REST API.