class Aspose::Cloud::Pdf::TextEditor
Public Class Methods
new(filename)
click to toggle source
# File lib/Pdf/text_editor.rb, line 5 def initialize(filename) @filename = filename raise 'filename not specified.' if filename.empty? @base_uri = Aspose::Cloud::Common::Product.product_uri + '/pdf/' + @filename end
Public Instance Methods
get_fragment_count(page_number, folder_name = '', storage_type = 'Aspose', storage_name = '')
click to toggle source
Gets count of the fragments from a particular page @param number page_number
end ¶ ↑
# File lib/Pdf/text_editor.rb, line 42 def get_fragment_count(page_number, folder_name = '', storage_type = 'Aspose', storage_name = '') raise 'page_number not specified.' if page_number.nil? str_uri = "#{@base_uri}/pages/#{page_number}/fragments" str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type) signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri) JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['TextItems']['List'].length end
get_segment_count(page_number, fragment_number, folder_name = '', storage_type = 'Aspose', storage_name = '')
click to toggle source
Gets count of the segments in a fragment @param number pageNumber @param number fragmentNumber
# File lib/Pdf/text_editor.rb, line 123 def get_segment_count(page_number, fragment_number, folder_name = '', storage_type = 'Aspose', storage_name = '') raise 'page_number not specified.' if page_number.nil? raise 'fragment_number not specified.' if fragment_number.nil? str_uri = "#{@base_uri}/pages/#{page_number}/fragments/#{fragment_number}" str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type) signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri) JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['TextItems']['List'].length end
get_segment_text_format(page_number, fragment_number, segment_number, folder_name = '', storage_type = 'Aspose', storage_name = '')
click to toggle source
Get Text Format of a Particular Segment @param number page_number @param number fragment_number @param number segment_number
# File lib/Pdf/text_editor.rb, line 71 def get_segment_text_format(page_number, fragment_number, segment_number, folder_name = '', storage_type = 'Aspose', storage_name = '') raise 'page_number not specified.' if page_number.nil? raise 'fragment_number not specified.' if fragment_number.nil? raise 'segment_number not specified.' if segment_number.nil? str_uri = "#{@base_uri}/pages/#{page_number}/fragments/#{fragment_number}/segments/#{segment_number}/textformat" str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type) signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri) JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['TextFormat'] end
get_text(page_number = 0, folder_name='', storage_type = 'Aspose', storage_name = '')
click to toggle source
Gets raw text from the whole PDF file or a specific page @param number page_number [optinal]
end ¶ ↑
# File lib/Pdf/text_editor.rb, line 15 def get_text(page_number = 0, folder_name='', storage_type = 'Aspose', storage_name = '') str_uri = "#{@base_uri}/#{ page_number > 0 ? 'pages/' + page_number.to_s + '/' : '' }textitems" str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type) signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri) response = JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'})) output_text = '' response['TextItems']['List'].each { |item| output_text.concat(item['Text']) } output_text end
get_text_format(page_number, fragment_number, folder_name = '', storage_type = 'Aspose', storage_name = '')
click to toggle source
Gets TextFormat of a particular Fragment @param number page_number @param number fragment_number
# File lib/Pdf/text_editor.rb, line 56 def get_text_format(page_number, fragment_number, folder_name = '', storage_type = 'Aspose', storage_name = '') raise 'page_number not specified.' if page_number.nil? raise 'fragment_number not specified.' if fragment_number.nil? str_uri = "#{@base_uri}/pages/#{page_number}/fragments/#{fragment_number}/textformat" str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type) signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri) JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['TextFormat'] end
get_text_items(page_number, fragment_number, folder_name = '', storage_type = 'Aspose', storage_name = '')
click to toggle source
Gets text items from the whole PDF file or a specific page @param number page_number
end ¶ ↑
# File lib/Pdf/text_editor.rb, line 29 def get_text_items(page_number, fragment_number, folder_name = '', storage_type = 'Aspose', storage_name = '') raise 'page_number not specified.' if page_number.nil? raise 'fragment_number not specified.' if fragment_number.nil? str_uri = "#{@base_uri}/pages/#{page_number}/fragments/#{fragment_number}" str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type) signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri) JSON.parse(RestClient.get(signed_str_uri, {:accept=>'application/json'}))['TextItems']['List'] end
replace_multiple_text(str_xml, page_number = 0, folder_name = '', storage_type = 'Aspose', storage_name = '')
click to toggle source
Replaces multiple instances of old text with new text in a PDF file or a particular page @param string str_xml Data in XML format. @param number page_number Number of the page.
end ¶ ↑
# File lib/Pdf/text_editor.rb, line 106 def replace_multiple_text(str_xml, page_number = 0, folder_name = '', storage_type = 'Aspose', storage_name = '') raise 'str_xml not specified.' if str_xml.empty? str_uri = page_number > 0 ? "#{@base_uri}/pages/#{page_number}/replaceTextList" : "#{@base_uri}/replaceTextList" str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type) signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri) response = Aspose::Cloud::Common::Utils.process_command(signed_str_uri,'POST','XML',str_xml) json = JSON.parse(response) json['Status'] == 'OK' ? true : false end
replace_text(old_text, new_text, is_regular_expression = false, page_number = 0, folder_name = '', storage_type = 'Aspose', storage_name = '')
click to toggle source
Replaces all instances of old text with new text in a PDF file or a particular page @param string old_text @param string new_text
end ¶ ↑
# File lib/Pdf/text_editor.rb, line 87 def replace_text(old_text, new_text, is_regular_expression = false, page_number = 0, folder_name = '', storage_type = 'Aspose', storage_name = '') raise 'old_text not specified.' if old_text.empty? raise 'new_text not specified.' if new_text.empty? json_data = { 'OldValue' => old_text, 'NewValue'=> new_text, 'Regex'=> is_regular_expression }.to_json str_uri = page_number > 0 ? "#{@base_uri}/pages/#{page_number}/replaceText" : "#{@base_uri}/replaceText" str_uri = Aspose::Cloud::Common::Utils.append_storage(str_uri,folder_name,storage_name,storage_type) signed_str_uri = Aspose::Cloud::Common::Utils.sign(str_uri) response_stream = RestClient.post(signed_str_uri,json_data,{ :content_type => 'application/json', :accept => 'application/json' }) valid_output = Aspose::Cloud::Common::Utils.validate_output(response_stream) valid_output.empty? ? true : valid_output end