asposewordsjavaforruby 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +7 -0
  2. data/Gempackage +2 -2
  3. data/LICENSE +20 -20
  4. data/README.md +28 -2
  5. data/Rakefile +2 -2
  6. data/asposewordsjavaforruby.gemspec +27 -27
  7. data/config/aspose.yml +5 -5
  8. data/data/LoadTxt.txt +14 -14
  9. data/lib/asposewordsjavaforruby.rb +71 -71
  10. data/lib/asposewordsjavaforruby/addwatermark.rb +84 -84
  11. data/lib/asposewordsjavaforruby/appenddoc.rb +24 -24
  12. data/lib/asposewordsjavaforruby/appenddocument.rb +229 -229
  13. data/lib/asposewordsjavaforruby/applylicense.rb +16 -16
  14. data/lib/asposewordsjavaforruby/asposewordsjava.rb +23 -23
  15. data/lib/asposewordsjavaforruby/autofittables.rb +123 -123
  16. data/lib/asposewordsjavaforruby/bookmarks.rb +132 -132
  17. data/lib/asposewordsjavaforruby/checkformat.rb +70 -70
  18. data/lib/asposewordsjavaforruby/compressimages.rb +53 -53
  19. data/lib/asposewordsjavaforruby/doc2pdf.rb +15 -15
  20. data/lib/asposewordsjavaforruby/doctohtml.rb +26 -26
  21. data/lib/asposewordsjavaforruby/extractcontent.rb +395 -395
  22. data/lib/asposewordsjavaforruby/findandreplace.rb +29 -29
  23. data/lib/asposewordsjavaforruby/helloworld.rb +26 -26
  24. data/lib/asposewordsjavaforruby/imagetopdf.rb +71 -71
  25. data/lib/asposewordsjavaforruby/insertnestedfields.rb +39 -39
  26. data/lib/asposewordsjavaforruby/loadandsavetodisk.rb +20 -20
  27. data/lib/asposewordsjavaforruby/loadandsavetostream.rb +32 -32
  28. data/lib/asposewordsjavaforruby/loadtxt.rb +14 -14
  29. data/lib/asposewordsjavaforruby/mergefield.rb +45 -45
  30. data/lib/asposewordsjavaforruby/nodes.rb +29 -29
  31. data/lib/asposewordsjavaforruby/processcomments.rb +72 -72
  32. data/lib/asposewordsjavaforruby/removebreaks.rb +65 -65
  33. data/lib/asposewordsjavaforruby/removefield.rb +23 -23
  34. data/lib/asposewordsjavaforruby/saveasmultipagetiff.rb +26 -26
  35. data/lib/asposewordsjavaforruby/simplemailmerge.rb +23 -23
  36. data/lib/asposewordsjavaforruby/styles.rb +77 -77
  37. data/lib/asposewordsjavaforruby/updatefields.rb +62 -62
  38. data/lib/asposewordsjavaforruby/version.rb +3 -3
  39. metadata +18 -28
@@ -1,29 +1,29 @@
1
- module Asposewordsjavaforruby
2
- module FindAndReplace
3
- def initialize()
4
- # Find and replace text in document.
5
- replace_text()
6
- end
7
-
8
- def replace_text()
9
- # The path to the documents directory.
10
- data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/quickstart/'
11
-
12
- # Open the document.
13
- doc = Rjb::import('com.aspose.words.Document').new(data_dir + "ReplaceSimple.doc")
14
-
15
- # Check the text of the document.
16
- puts "Original document text: " + doc.getRange().getText()
17
-
18
- # Replace the text in the document.
19
- doc.getRange().replace("_CustomerName_", "James Bond", false, false)
20
-
21
- # Check the replacement was made.
22
- puts "Document text after replace: " + doc.getRange().getText()
23
-
24
- # Save the modified document.
25
- doc.save(data_dir + "ReplaceSimple Out.doc")
26
- end
27
-
28
- end
29
- end
1
+ module Asposewordsjavaforruby
2
+ module FindAndReplace
3
+ def initialize()
4
+ # Find and replace text in document.
5
+ replace_text()
6
+ end
7
+
8
+ def replace_text()
9
+ # The path to the documents directory.
10
+ data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/quickstart/'
11
+
12
+ # Open the document.
13
+ doc = Rjb::import('com.aspose.words.Document').new(data_dir + "ReplaceSimple.doc")
14
+
15
+ # Check the text of the document.
16
+ puts "Original document text: " + doc.getRange().getText()
17
+
18
+ # Replace the text in the document.
19
+ doc.getRange().replace("_CustomerName_", "James Bond", false, false)
20
+
21
+ # Check the replacement was made.
22
+ puts "Document text after replace: " + doc.getRange().getText()
23
+
24
+ # Save the modified document.
25
+ doc.save(data_dir + "ReplaceSimple Out.doc")
26
+ end
27
+
28
+ end
29
+ end
@@ -1,26 +1,26 @@
1
- module Asposewordsjavaforruby
2
- module HelloWorld
3
- def initialize()
4
- # Create document.
5
- print_hello_world()
6
- end
7
-
8
- def print_hello_world()
9
- data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/quickstart/'
10
-
11
- #Create a blank document.
12
- document = Rjb::import('com.aspose.words.Document').new()
13
-
14
- #DocumentBuilder provides members to easily add content to a document.
15
- builder = Rjb::import('com.aspose.words.DocumentBuilder').new(document)
16
-
17
- #Write a new paragraph in the document with the text "Hello World!"
18
- builder.writeln("Hello World!")
19
-
20
- # Save the document in DOCX format. The format to save as is inferred from the extension of the file name.
21
- # Aspose.Words supports saving any document in many more formats.
22
- document.save(data_dir + "HelloWorld.docx")
23
- end
24
-
25
- end
26
- end
1
+ module Asposewordsjavaforruby
2
+ module HelloWorld
3
+ def initialize()
4
+ # Create document.
5
+ print_hello_world()
6
+ end
7
+
8
+ def print_hello_world()
9
+ data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/quickstart/'
10
+
11
+ #Create a blank document.
12
+ document = Rjb::import('com.aspose.words.Document').new()
13
+
14
+ #DocumentBuilder provides members to easily add content to a document.
15
+ builder = Rjb::import('com.aspose.words.DocumentBuilder').new(document)
16
+
17
+ #Write a new paragraph in the document with the text "Hello World!"
18
+ builder.writeln("Hello World!")
19
+
20
+ # Save the document in DOCX format. The format to save as is inferred from the extension of the file name.
21
+ # Aspose.Words supports saving any document in many more formats.
22
+ document.save(data_dir + "HelloWorld.docx")
23
+ end
24
+
25
+ end
26
+ end
@@ -1,71 +1,71 @@
1
- module Asposewordsjavaforruby
2
- module ImageToPdf
3
- def initialize()
4
- # The path to the documents directory.
5
- data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/imagetopdf/'
6
-
7
- convert_image_to_pdf(data_dir + "Test.jpg", data_dir + "TestJpg Out.pdf")
8
- convert_image_to_pdf(data_dir + "Test.png", data_dir + "TestPng Out.pdf")
9
- convert_image_to_pdf(data_dir + "Test.bmp", data_dir + "TestBmp Out.pdf")
10
- convert_image_to_pdf(data_dir + "Test.gif", data_dir + "TestGif Out.pdf")
11
- end
12
-
13
- def convert_image_to_pdf(input_filename, output_filename)
14
- # Create Aspose.Words.Document and DocumentBuilder.
15
- # The builder makes it simple to add content to the document.
16
- doc = Rjb::import('com.aspose.words.Document').new
17
- builder = Rjb::import('com.aspose.words.DocumentBuilder').new(doc)
18
-
19
- # Load images from the disk using the approriate reader.
20
- # The file formats that can be loaded depends on the image readers available on the machine.
21
- imageio = Rjb::import('javax.imageio.ImageIO')
22
- ImageInputStream = Rjb::import('javax.imageio.stream.ImageInputStream')
23
- reader = Rjb::import('javax.imageio.ImageReader')
24
-
25
- iis = imageio.createImageInputStream(Rjb::import('java.io.File').new(input_filename))
26
- reader = imageio.getImageReaders(iis).next()
27
- reader.setInput(iis, false)
28
-
29
- # Get the number of frames in the image.
30
- framesCount = reader.getNumImages(true)
31
-
32
- # Loop through all frames.
33
- for (int frameIdx = 0; frameIdx < framesCount; frameIdx++)
34
- {
35
- # Insert a section break before each new page, in case of a multi-frame image.
36
- if (frameIdx != 0) then
37
- break_type = Rjb::import('com.aspose.words.BreakType')
38
- builder.insertBreak(break_type.SECTION_BREAK_NEW_PAGE)
39
- end
40
-
41
- # Select active frame.
42
- image = Rjb::import('java.awt.image.BufferedImage')
43
- image = reader.read(frameIdx)
44
-
45
- # We want the size of the page to be the same as the size of the image.
46
- # Convert pixels to points to size the page to the actual image size.
47
- ps = Rjb::import('com.aspose.words.PageSetup')
48
- ps = builder.getPageSetup()
49
-
50
- convert_util = Rjb::import('com.aspose.words.ConvertUtil')
51
- ps.setPageWidth(convert_util.pixelToPoint(image.getWidth()))
52
- ps.setPageHeight(convert_util.pixelToPoint(image.getHeight()))
53
-
54
- # Insert the image into the document and position it at the top left corner of the page.
55
- builder.insertImage(
56
- image,
57
- RelativeHorizontalPosition.PAGE,
58
- 0,
59
- RelativeVerticalPosition.PAGE,
60
- 0,
61
- ps.getPageWidth(),
62
- ps.getPageHeight(),
63
- WrapType.NONE)
64
-
65
- # Save the document.
66
- doc.save(output_filename)
67
- end
68
- end
69
-
70
- end
71
- end
1
+ module Asposewordsjavaforruby
2
+ module ImageToPdf
3
+ def initialize()
4
+ # The path to the documents directory.
5
+ data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/imagetopdf/'
6
+
7
+ convert_image_to_pdf(data_dir + "Test.jpg", data_dir + "TestJpg Out.pdf")
8
+ convert_image_to_pdf(data_dir + "Test.png", data_dir + "TestPng Out.pdf")
9
+ convert_image_to_pdf(data_dir + "Test.bmp", data_dir + "TestBmp Out.pdf")
10
+ convert_image_to_pdf(data_dir + "Test.gif", data_dir + "TestGif Out.pdf")
11
+ end
12
+
13
+ def convert_image_to_pdf(input_filename, output_filename)
14
+ # Create Aspose.Words.Document and DocumentBuilder.
15
+ # The builder makes it simple to add content to the document.
16
+ doc = Rjb::import('com.aspose.words.Document').new
17
+ builder = Rjb::import('com.aspose.words.DocumentBuilder').new(doc)
18
+
19
+ # Load images from the disk using the approriate reader.
20
+ # The file formats that can be loaded depends on the image readers available on the machine.
21
+ imageio = Rjb::import('javax.imageio.ImageIO')
22
+ ImageInputStream = Rjb::import('javax.imageio.stream.ImageInputStream')
23
+ reader = Rjb::import('javax.imageio.ImageReader')
24
+
25
+ iis = imageio.createImageInputStream(Rjb::import('java.io.File').new(input_filename))
26
+ reader = imageio.getImageReaders(iis).next()
27
+ reader.setInput(iis, false)
28
+
29
+ # Get the number of frames in the image.
30
+ framesCount = reader.getNumImages(true)
31
+
32
+ # Loop through all frames.
33
+ for (int frameIdx = 0; frameIdx < framesCount; frameIdx++)
34
+ {
35
+ # Insert a section break before each new page, in case of a multi-frame image.
36
+ if (frameIdx != 0) then
37
+ break_type = Rjb::import('com.aspose.words.BreakType')
38
+ builder.insertBreak(break_type.SECTION_BREAK_NEW_PAGE)
39
+ end
40
+
41
+ # Select active frame.
42
+ image = Rjb::import('java.awt.image.BufferedImage')
43
+ image = reader.read(frameIdx)
44
+
45
+ # We want the size of the page to be the same as the size of the image.
46
+ # Convert pixels to points to size the page to the actual image size.
47
+ ps = Rjb::import('com.aspose.words.PageSetup')
48
+ ps = builder.getPageSetup()
49
+
50
+ convert_util = Rjb::import('com.aspose.words.ConvertUtil')
51
+ ps.setPageWidth(convert_util.pixelToPoint(image.getWidth()))
52
+ ps.setPageHeight(convert_util.pixelToPoint(image.getHeight()))
53
+
54
+ # Insert the image into the document and position it at the top left corner of the page.
55
+ builder.insertImage(
56
+ image,
57
+ RelativeHorizontalPosition.PAGE,
58
+ 0,
59
+ RelativeVerticalPosition.PAGE,
60
+ 0,
61
+ ps.getPageWidth(),
62
+ ps.getPageHeight(),
63
+ WrapType.NONE)
64
+
65
+ # Save the document.
66
+ doc.save(output_filename)
67
+ end
68
+ end
69
+
70
+ end
71
+ end
@@ -1,39 +1,39 @@
1
- module Asposewordsjavaforruby
2
- module InsertNestedFields
3
- def initialize()
4
- # The path to the documents directory.
5
- data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/'
6
-
7
- # Create new document.
8
- doc = Rjb::import('com.aspose.words.Document').new
9
- builder = Rjb::import("com.aspose.words.DocumentBuilder").new(doc)
10
-
11
- # Insert few page breaks (just for testing)
12
- breakType = Rjb::import("com.aspose.words.BreakType")
13
-
14
- for i in 0..4
15
- builder.insertBreak(breakType.PAGE_BREAK)
16
- end
17
-
18
- # Move DocumentBuilder cursor into the primary footer.
19
- headerFooterType = Rjb::import("com.aspose.words.HeaderFooterType")
20
- builder.moveToHeaderFooter(headerFooterType.FOOTER_PRIMARY)
21
-
22
- # We want to insert a field like this:
23
- # { IF {PAGE} <> {NUMPAGES} "See Next Page" "Last Page" }
24
- field = builder.insertField("IF ")
25
- builder.moveTo(field.getSeparator())
26
- builder.insertField("PAGE")
27
- builder.write(" <> ")
28
- builder.insertField("NUMPAGES")
29
- builder.write(" \"See Next Page\" \"Last Page\" ")
30
-
31
- # Finally update the outer field to recalcaluate the final value. Doing this will automatically update
32
- # the inner fields at the same time.
33
- field.update()
34
-
35
- # Save the document.
36
- doc.save(data_dir + "InsertNestedFields Out.doc")
37
- end
38
- end
39
- end
1
+ module Asposewordsjavaforruby
2
+ module InsertNestedFields
3
+ def initialize()
4
+ # The path to the documents directory.
5
+ data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/'
6
+
7
+ # Create new document.
8
+ doc = Rjb::import('com.aspose.words.Document').new
9
+ builder = Rjb::import("com.aspose.words.DocumentBuilder").new(doc)
10
+
11
+ # Insert few page breaks (just for testing)
12
+ breakType = Rjb::import("com.aspose.words.BreakType")
13
+
14
+ for i in 0..4
15
+ builder.insertBreak(breakType.PAGE_BREAK)
16
+ end
17
+
18
+ # Move DocumentBuilder cursor into the primary footer.
19
+ headerFooterType = Rjb::import("com.aspose.words.HeaderFooterType")
20
+ builder.moveToHeaderFooter(headerFooterType.FOOTER_PRIMARY)
21
+
22
+ # We want to insert a field like this:
23
+ # { IF {PAGE} <> {NUMPAGES} "See Next Page" "Last Page" }
24
+ field = builder.insertField("IF ")
25
+ builder.moveTo(field.getSeparator())
26
+ builder.insertField("PAGE")
27
+ builder.write(" <> ")
28
+ builder.insertField("NUMPAGES")
29
+ builder.write(" \"See Next Page\" \"Last Page\" ")
30
+
31
+ # Finally update the outer field to recalcaluate the final value. Doing this will automatically update
32
+ # the inner fields at the same time.
33
+ field.update()
34
+
35
+ # Save the document.
36
+ doc.save(data_dir + "InsertNestedFields Out.doc")
37
+ end
38
+ end
39
+ end
@@ -1,20 +1,20 @@
1
- module Asposewordsjavaforruby
2
- module LoadAndSaveToDisk
3
- def initialize()
4
- # Load and save the document.
5
- save_to_disk()
6
- end
7
-
8
- def save_to_disk()
9
- # The path to the documents directory.
10
- data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/quickstart/'
11
-
12
- # Open the document.
13
- doc = Rjb::import('com.aspose.words.Document').new(data_dir + "Document.doc")
14
-
15
- # Save the document as DOCX document.
16
- doc.save(data_dir + "Document Out.docx")
17
- end
18
-
19
- end
20
- end
1
+ module Asposewordsjavaforruby
2
+ module LoadAndSaveToDisk
3
+ def initialize()
4
+ # Load and save the document.
5
+ save_to_disk()
6
+ end
7
+
8
+ def save_to_disk()
9
+ # The path to the documents directory.
10
+ data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/quickstart/'
11
+
12
+ # Open the document.
13
+ doc = Rjb::import('com.aspose.words.Document').new(data_dir + "Document.doc")
14
+
15
+ # Save the document as DOCX document.
16
+ doc.save(data_dir + "Document Out.docx")
17
+ end
18
+
19
+ end
20
+ end
@@ -1,32 +1,32 @@
1
- module Asposewordsjavaforruby
2
- module LoadAndSaveToStream
3
- def initialize()
4
- # Load and save to stream.
5
- save_to_stream()
6
- end
7
-
8
- def save_to_stream()
9
- # The path to the documents directory.
10
- data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/quickstart/'
11
-
12
- # Open the stream. Read only access is enough for Aspose.Words to load a document.
13
- stream = Rjb::import('java.io.FileInputStream').new(data_dir + "Document.doc")
14
-
15
- # Load the entire document into memory.
16
- doc = Rjb::import('com.aspose.words.Document').new(stream)
17
-
18
- # You can close the stream now, it is no longer needed because the document is in memory.
19
- stream.close()
20
- # ... do something with the document
21
- # Convert the document to a different format and save to stream.
22
- dst_stream = Rjb::import("java.io.ByteArrayOutputStream").new()
23
- save_format = Rjb::import("com.aspose.words.SaveFormat")
24
- doc.save(dst_stream, save_format.RTF)
25
-
26
- output = Rjb::import("java.io.FileOutputStream").new(data_dir + "Document Out.rtf")
27
- output.write(dst_stream.toByteArray())
28
- output.close()
29
- end
30
-
31
- end
32
- end
1
+ module Asposewordsjavaforruby
2
+ module LoadAndSaveToStream
3
+ def initialize()
4
+ # Load and save to stream.
5
+ save_to_stream()
6
+ end
7
+
8
+ def save_to_stream()
9
+ # The path to the documents directory.
10
+ data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/quickstart/'
11
+
12
+ # Open the stream. Read only access is enough for Aspose.Words to load a document.
13
+ stream = Rjb::import('java.io.FileInputStream').new(data_dir + "Document.doc")
14
+
15
+ # Load the entire document into memory.
16
+ doc = Rjb::import('com.aspose.words.Document').new(stream)
17
+
18
+ # You can close the stream now, it is no longer needed because the document is in memory.
19
+ stream.close()
20
+ # ... do something with the document
21
+ # Convert the document to a different format and save to stream.
22
+ dst_stream = Rjb::import("java.io.ByteArrayOutputStream").new()
23
+ save_format = Rjb::import("com.aspose.words.SaveFormat")
24
+ doc.save(dst_stream, save_format.RTF)
25
+
26
+ output = Rjb::import("java.io.FileOutputStream").new(data_dir + "Document Out.rtf")
27
+ output.write(dst_stream.toByteArray())
28
+ output.close()
29
+ end
30
+
31
+ end
32
+ end
@@ -1,14 +1,14 @@
1
- module Asposewordsjavaforruby
2
- module LoadTxt
3
- def initialize()
4
- # The path to the documents directory.
5
- data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/'
6
-
7
- # Open the document.
8
- doc = Rjb::import('com.aspose.words.Document').new(data_dir + "LoadTxt.txt")
9
-
10
- # Save as any Aspose.Words supported format, such as DOCX.
11
- doc.save(data_dir + "LoadTxt Out.doc")
12
- end
13
- end
14
- end
1
+ module Asposewordsjavaforruby
2
+ module LoadTxt
3
+ def initialize()
4
+ # The path to the documents directory.
5
+ data_dir = File.dirname(File.dirname(File.dirname(__FILE__))) + '/data/'
6
+
7
+ # Open the document.
8
+ doc = Rjb::import('com.aspose.words.Document').new(data_dir + "LoadTxt.txt")
9
+
10
+ # Save as any Aspose.Words supported format, such as DOCX.
11
+ doc.save(data_dir + "LoadTxt Out.doc")
12
+ end
13
+ end
14
+ end