rghost 0.7.4 → 0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/rghost/border.rb +44 -0
- data/lib/rghost/callback.rb +25 -22
- data/lib/rghost/circle.rb +102 -0
- data/lib/rghost/color.rb +81 -56
- data/lib/rghost/constants.rb +599 -589
- data/lib/rghost/convert.rb +26 -7
- data/lib/rghost/cursor.rb +90 -58
- data/lib/rghost/dash.rb +59 -0
- data/lib/rghost/document.rb +334 -311
- data/lib/rghost/document_callback_facade.rb +64 -0
- data/lib/rghost/dsc_entry.rb +12 -12
- data/lib/rghost/dynamic_document_callback.rb +6 -18
- data/lib/rghost/eps.rb +17 -8
- data/lib/rghost/font.rb +19 -23
- data/lib/rghost/font_map.rb +40 -0
- data/lib/rghost/frame.rb +105 -0
- data/lib/rghost/function.rb +19 -21
- data/lib/rghost/gif.rb +22 -9
- data/lib/rghost/graphic.rb +3 -3
- data/lib/rghost/grid/base_grid.rb +218 -0
- data/lib/rghost/grid/callback_facade.rb +136 -0
- data/lib/rghost/grid/csv_grid.rb +50 -0
- data/lib/rghost/{data_grid → grid}/dynamic_callback.rb +2 -2
- data/lib/rghost/grid/field_format.rb +43 -0
- data/lib/rghost/grid/grid.rb +15 -0
- data/lib/rghost/grid/header.rb +120 -0
- data/lib/rghost/grid/matrix.rb +10 -0
- data/lib/rghost/grid/rails_grid.rb +70 -0
- data/lib/rghost/{data_grid → grid}/static_callback.rb +4 -4
- data/lib/rghost/grid/style/border_lines.rb +46 -0
- data/lib/rghost/grid/style/bottom_lines.rb +30 -0
- data/lib/rghost/grid/style/old_forms.rb +30 -0
- data/lib/rghost/grid/style/style.rb +8 -0
- data/lib/rghost/gs_alone.rb +7 -5
- data/lib/rghost/helpers.rb +4 -4
- data/lib/rghost/horizontal_line.rb +35 -19
- data/lib/rghost/how_to.rb +75 -0
- data/lib/rghost/image.rb +8 -8
- data/lib/rghost/jpeg.rb +21 -8
- data/lib/rghost/line.rb +66 -17
- data/lib/rghost/line_width.rb +19 -8
- data/lib/rghost/load.rb +24 -22
- data/lib/rghost/newpath.rb +8 -7
- data/lib/rghost/paper.rb +100 -41
- data/lib/rghost/parse_text.rb +53 -0
- data/lib/rghost/point.rb +9 -8
- data/lib/rghost/point_with_command.rb +5 -5
- data/lib/rghost/polygon.rb +75 -0
- data/lib/rghost/ps/AdobeExpert.enc +0 -0
- data/lib/rghost/ps/AdobeLatinEncoding.enc +0 -0
- data/lib/rghost/ps/Bengali.enc +0 -0
- data/lib/rghost/ps/CodePage1250.enc +0 -0
- data/lib/rghost/ps/CodePage1251.enc +0 -0
- data/lib/rghost/ps/CodePage1252.enc +0 -0
- data/lib/rghost/ps/CodePage1253.enc +0 -0
- data/lib/rghost/ps/CodePage1254.enc +0 -0
- data/lib/rghost/ps/CodePage1256.enc +0 -0
- data/lib/rghost/ps/CodePage1257.enc +0 -0
- data/lib/rghost/ps/CodePage1258.enc +0 -0
- data/lib/rghost/ps/CodePage874.enc +0 -0
- data/lib/rghost/ps/Fontmap +5 -0
- data/lib/rghost/ps/IsoLatin.enc +0 -0
- data/lib/rghost/ps/MacCentralEuropean.enc +0 -0
- data/lib/rghost/ps/{MacCyrillice.enc → MacCyrillice.desnc} +0 -0
- data/lib/rghost/ps/MacGreek.enc +0 -0
- data/lib/rghost/ps/MacHebrew.enc +0 -0
- data/lib/rghost/ps/TeX-CorkEncoding.enc +0 -0
- data/lib/rghost/ps/TeX-LGR-Greek.enc +0 -0
- data/lib/rghost/ps/TeX-T2AModified2Encoding.enc +0 -0
- data/lib/rghost/ps/TeX-T2BAdobeEncoding.enc +0 -0
- data/lib/rghost/ps/TeX-T2CAdobeEncoding.enc +0 -0
- data/lib/rghost/ps/TeX-X2AdobeEncoding.enc +0 -0
- data/lib/rghost/ps/TeX-XL2encoding.enc +0 -0
- data/lib/rghost/ps/TeXMathExtensionEncoding.enc +0 -0
- data/lib/rghost/ps/TeXMathItalicEncoding.enc +0 -0
- data/lib/rghost/ps/TeXMathSymbolEncoding.enc +0 -0
- data/lib/rghost/ps/US-ASCII.enc +0 -0
- data/lib/rghost/ps/UTF-8.enc +0 -0
- data/lib/rghost/ps/__datagrid.ps +52 -0
- data/lib/rghost/ps/_cusor.ps +46 -0
- data/lib/rghost/ps/basic.ps +12 -1
- data/lib/rghost/ps/begin_document.ps +1 -0
- data/lib/rghost/ps/callbacks.ps +32 -3
- data/lib/rghost/ps/code128.font +0 -0
- data/lib/rghost/ps/code39.font +0 -0
- data/lib/rghost/ps/cursor.ps +77 -13
- data/lib/rghost/ps/datagrid.ps +4 -1
- data/lib/rghost/ps/developer.ps +237 -0
- data/lib/rghost/ps/ean.font +0 -0
- data/lib/rghost/ps/eps.ps +0 -0
- data/lib/rghost/ps/font.ps +8 -1
- data/lib/rghost/ps/frame.ps +16 -0
- data/lib/rghost/ps/gif.ps +0 -0
- data/lib/rghost/ps/horizontal_line.ps +4 -3
- data/lib/rghost/ps/i25.font +0 -0
- data/lib/rghost/ps/jpeg.ps +0 -0
- data/lib/rghost/ps/paper.ps +0 -0
- data/lib/rghost/ps/rectangle.ps +0 -0
- data/lib/rghost/ps/rghost_default_template.eps +1532 -0
- data/lib/rghost/ps/row.ps +0 -0
- data/lib/rghost/ps/show.ps +2 -1
- data/lib/rghost/ps/table_callbacks.ps +0 -0
- data/lib/rghost/ps/text.ps +63 -0
- data/lib/rghost/ps/textarea.ps +1 -1
- data/lib/rghost/ps/type.ps +0 -0
- data/lib/rghost/ps/unit.ps +0 -0
- data/lib/rghost/ps/vertical_line.ps +2 -4
- data/lib/rghost/ps/virtual_pages.ps +55 -0
- data/lib/rghost/ps_facade.rb +256 -0
- data/lib/rghost/ps_object.rb +24 -20
- data/lib/rghost/rgengine.so +0 -0
- data/lib/rghost/ruby_ghost_config.rb +224 -16
- data/lib/rghost/ruby_ghost_engine.rb +32 -55
- data/lib/rghost/ruby_ghost_version.rb +8 -0
- data/lib/rghost/ruby_to_ps.rb +52 -78
- data/lib/rghost/scale.rb +22 -7
- data/lib/rghost/shape_content.rb +23 -0
- data/lib/rghost/show.rb +77 -20
- data/lib/rghost/static_document_callback.rb +3 -7
- data/lib/rghost/text.rb +44 -0
- data/lib/rghost/text_in.rb +36 -14
- data/lib/rghost/textarea.rb +66 -93
- data/lib/rghost/units.rb +45 -44
- data/lib/rghost/variable.rb +4 -4
- data/lib/rghost/vertical_line.rb +27 -19
- data/lib/rghost/virtual_pages.rb +42 -0
- data/lib/rghost.rb +16 -2
- metadata +153 -500
- data/lib/rghost/arc.rb +0 -39
- data/lib/rghost/barcode.rb +0 -40
- data/lib/rghost/data_grid/basic_grid.rb +0 -136
- data/lib/rghost/data_grid/csv_grid.rb +0 -27
- data/lib/rghost/data_grid/data_grid.rb +0 -14
- data/lib/rghost/data_grid/field_format.rb +0 -60
- data/lib/rghost/data_grid/grid.rb +0 -18
- data/lib/rghost/data_grid/header.rb +0 -111
- data/lib/rghost/data_grid/rails_grid.rb +0 -62
- data/lib/rghost/data_grid/style/border_lines.rb +0 -47
- data/lib/rghost/data_grid/style/bottom_lines.rb +0 -30
- data/lib/rghost/data_grid/style/old_forms.rb +0 -30
- data/lib/rghost/data_grid/style/style.rb +0 -8
- data/lib/rghost/doc/classes/Arc.html +0 -200
- data/lib/rghost/doc/classes/Arc.src/M000049.html +0 -18
- data/lib/rghost/doc/classes/Arc.src/M000050.html +0 -23
- data/lib/rghost/doc/classes/Barcode.html +0 -214
- data/lib/rghost/doc/classes/Barcode.src/M000001.html +0 -19
- data/lib/rghost/doc/classes/Barcode.src/M000002.html +0 -18
- data/lib/rghost/doc/classes/Barcode.src/M000003.html +0 -19
- data/lib/rghost/doc/classes/Barcode.src/M000004.html +0 -27
- data/lib/rghost/doc/classes/CMYK.html +0 -209
- data/lib/rghost/doc/classes/CMYK.src/M000047.html +0 -18
- data/lib/rghost/doc/classes/CMYK.src/M000048.html +0 -24
- data/lib/rghost/doc/classes/Callback.html +0 -220
- data/lib/rghost/doc/classes/Callback.src/M000071.html +0 -21
- data/lib/rghost/doc/classes/Callback.src/M000072.html +0 -26
- data/lib/rghost/doc/classes/Color.html +0 -175
- data/lib/rghost/doc/classes/Color.src/M000028.html +0 -33
- data/lib/rghost/doc/classes/Constants/Colors.html +0 -129
- data/lib/rghost/doc/classes/Constants/Devices.html +0 -163
- data/lib/rghost/doc/classes/Constants/Devices.src/M000168.html +0 -22
- data/lib/rghost/doc/classes/Constants/Fonts.html +0 -144
- data/lib/rghost/doc/classes/Constants/Papers.html +0 -124
- data/lib/rghost/doc/classes/Constants.html +0 -120
- data/lib/rghost/doc/classes/Convert.html +0 -189
- data/lib/rghost/doc/classes/Convert.src/M000067.html +0 -20
- data/lib/rghost/doc/classes/Convert.src/M000068.html +0 -24
- data/lib/rghost/doc/classes/Cursor.html +0 -330
- data/lib/rghost/doc/classes/Cursor.src/M000031.html +0 -21
- data/lib/rghost/doc/classes/Cursor.src/M000032.html +0 -21
- data/lib/rghost/doc/classes/Cursor.src/M000033.html +0 -20
- data/lib/rghost/doc/classes/Cursor.src/M000034.html +0 -18
- data/lib/rghost/doc/classes/Cursor.src/M000035.html +0 -18
- data/lib/rghost/doc/classes/Cursor.src/M000036.html +0 -19
- data/lib/rghost/doc/classes/Cursor.src/M000037.html +0 -22
- data/lib/rghost/doc/classes/Cursor.src/M000038.html +0 -18
- data/lib/rghost/doc/classes/Cursor.src/M000039.html +0 -18
- data/lib/rghost/doc/classes/DSCEntry.html +0 -173
- data/lib/rghost/doc/classes/DSCEntry.src/M000059.html +0 -19
- data/lib/rghost/doc/classes/DSCEntry.src/M000060.html +0 -19
- data/lib/rghost/doc/classes/DataGrid/BasicGrid.html +0 -343
- data/lib/rghost/doc/classes/DataGrid/BasicGrid.src/M000140.html +0 -27
- data/lib/rghost/doc/classes/DataGrid/BasicGrid.src/M000141.html +0 -26
- data/lib/rghost/doc/classes/DataGrid/BasicGrid.src/M000142.html +0 -22
- data/lib/rghost/doc/classes/DataGrid/BasicGrid.src/M000143.html +0 -19
- data/lib/rghost/doc/classes/DataGrid/BasicGrid.src/M000144.html +0 -26
- data/lib/rghost/doc/classes/DataGrid/BasicGrid.src/M000145.html +0 -34
- data/lib/rghost/doc/classes/DataGrid/BasicGrid.src/M000146.html +0 -18
- data/lib/rghost/doc/classes/DataGrid/BasicGrid.src/M000147.html +0 -37
- data/lib/rghost/doc/classes/DataGrid/BasicGrid.src/M000148.html +0 -26
- data/lib/rghost/doc/classes/DataGrid/CSVGrid.html +0 -152
- data/lib/rghost/doc/classes/DataGrid/CSVGrid.src/M000139.html +0 -32
- data/lib/rghost/doc/classes/DataGrid/DynamicCallback.html +0 -158
- data/lib/rghost/doc/classes/DataGrid/DynamicCallback.src/M000149.html +0 -19
- data/lib/rghost/doc/classes/DataGrid/FieldFormat/Custom.html +0 -176
- data/lib/rghost/doc/classes/DataGrid/FieldFormat/Custom.src/M000136.html +0 -18
- data/lib/rghost/doc/classes/DataGrid/FieldFormat/Custom.src/M000137.html +0 -18
- data/lib/rghost/doc/classes/DataGrid/FieldFormat/Custom.src/M000138.html +0 -18
- data/lib/rghost/doc/classes/DataGrid/FieldFormat.html +0 -216
- data/lib/rghost/doc/classes/DataGrid/FieldFormat.src/M000131.html +0 -19
- data/lib/rghost/doc/classes/DataGrid/FieldFormat.src/M000132.html +0 -18
- data/lib/rghost/doc/classes/DataGrid/FieldFormat.src/M000133.html +0 -23
- data/lib/rghost/doc/classes/DataGrid/FieldFormat.src/M000134.html +0 -18
- data/lib/rghost/doc/classes/DataGrid/FieldFormat.src/M000135.html +0 -22
- data/lib/rghost/doc/classes/DataGrid/Grid.html +0 -148
- data/lib/rghost/doc/classes/DataGrid/Grid.src/M000160.html +0 -19
- data/lib/rghost/doc/classes/DataGrid/Header.html +0 -367
- data/lib/rghost/doc/classes/DataGrid/Header.src/M000150.html +0 -26
- data/lib/rghost/doc/classes/DataGrid/Header.src/M000151.html +0 -25
- data/lib/rghost/doc/classes/DataGrid/Header.src/M000152.html +0 -24
- data/lib/rghost/doc/classes/DataGrid/Header.src/M000153.html +0 -19
- data/lib/rghost/doc/classes/DataGrid/Header.src/M000154.html +0 -18
- data/lib/rghost/doc/classes/DataGrid/Header.src/M000155.html +0 -18
- data/lib/rghost/doc/classes/DataGrid/Header.src/M000156.html +0 -18
- data/lib/rghost/doc/classes/DataGrid/Header.src/M000157.html +0 -18
- data/lib/rghost/doc/classes/DataGrid/Header.src/M000158.html +0 -19
- data/lib/rghost/doc/classes/DataGrid/Header.src/M000159.html +0 -19
- data/lib/rghost/doc/classes/DataGrid/RailsGrid.html +0 -234
- data/lib/rghost/doc/classes/DataGrid/RailsGrid.src/M000161.html +0 -27
- data/lib/rghost/doc/classes/DataGrid/RailsGrid.src/M000162.html +0 -23
- data/lib/rghost/doc/classes/DataGrid/RailsGrid.src/M000163.html +0 -18
- data/lib/rghost/doc/classes/DataGrid/StaticCallback.html +0 -158
- data/lib/rghost/doc/classes/DataGrid/StaticCallback.src/M000164.html +0 -19
- data/lib/rghost/doc/classes/DataGrid/Style/BorderLines.html +0 -137
- data/lib/rghost/doc/classes/DataGrid/Style/BorderLines.src/M000128.html +0 -55
- data/lib/rghost/doc/classes/DataGrid/Style/BottomLines.html +0 -137
- data/lib/rghost/doc/classes/DataGrid/Style/BottomLines.src/M000129.html +0 -38
- data/lib/rghost/doc/classes/DataGrid/Style/OldForms.html +0 -137
- data/lib/rghost/doc/classes/DataGrid/Style/OldForms.src/M000130.html +0 -38
- data/lib/rghost/doc/classes/DataGrid/Style.html +0 -113
- data/lib/rghost/doc/classes/DataGrid.html +0 -133
- data/lib/rghost/doc/classes/Document.html +0 -990
- data/lib/rghost/doc/classes/Document.src/M000075.html +0 -32
- data/lib/rghost/doc/classes/Document.src/M000076.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000077.html +0 -29
- data/lib/rghost/doc/classes/Document.src/M000078.html +0 -33
- data/lib/rghost/doc/classes/Document.src/M000079.html +0 -20
- data/lib/rghost/doc/classes/Document.src/M000080.html +0 -21
- data/lib/rghost/doc/classes/Document.src/M000081.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000082.html +0 -19
- data/lib/rghost/doc/classes/Document.src/M000083.html +0 -21
- data/lib/rghost/doc/classes/Document.src/M000084.html +0 -22
- data/lib/rghost/doc/classes/Document.src/M000085.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000086.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000087.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000088.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000089.html +0 -19
- data/lib/rghost/doc/classes/Document.src/M000090.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000091.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000092.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000093.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000094.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000095.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000096.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000097.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000098.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000099.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000100.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000101.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000102.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000103.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000104.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000105.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000106.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000107.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000108.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000109.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000110.html +0 -18
- data/lib/rghost/doc/classes/Document.src/M000111.html +0 -20
- data/lib/rghost/doc/classes/Document.src/M000112.html +0 -19
- data/lib/rghost/doc/classes/Document.src/M000113.html +0 -19
- data/lib/rghost/doc/classes/DynamicDocumentCallback.html +0 -175
- data/lib/rghost/doc/classes/DynamicDocumentCallback.src/M000022.html +0 -19
- data/lib/rghost/doc/classes/Eps.html +0 -168
- data/lib/rghost/doc/classes/Eps.src/M000063.html +0 -20
- data/lib/rghost/doc/classes/Eps.src/M000064.html +0 -20
- data/lib/rghost/doc/classes/Font.html +0 -205
- data/lib/rghost/doc/classes/Font.src/M000061.html +0 -22
- data/lib/rghost/doc/classes/Font.src/M000062.html +0 -37
- data/lib/rghost/doc/classes/Function.html +0 -196
- data/lib/rghost/doc/classes/Function.src/M000045.html +0 -27
- data/lib/rghost/doc/classes/Function.src/M000046.html +0 -20
- data/lib/rghost/doc/classes/GSAlone.html +0 -154
- data/lib/rghost/doc/classes/GSAlone.src/M000065.html +0 -19
- data/lib/rghost/doc/classes/GSAlone.src/M000066.html +0 -22
- data/lib/rghost/doc/classes/Gif.html +0 -148
- data/lib/rghost/doc/classes/Gif.src/M000040.html +0 -30
- data/lib/rghost/doc/classes/Graphic.html +0 -153
- data/lib/rghost/doc/classes/Graphic.src/M000014.html +0 -18
- data/lib/rghost/doc/classes/Gray.html +0 -181
- data/lib/rghost/doc/classes/Gray.src/M000026.html +0 -18
- data/lib/rghost/doc/classes/Gray.src/M000027.html +0 -19
- data/lib/rghost/doc/classes/Helpers/HashKeyMethod.html +0 -131
- data/lib/rghost/doc/classes/Helpers/HashKeyMethod.src/M000127.html +0 -18
- data/lib/rghost/doc/classes/Helpers/HashKeyMethodClass.html +0 -118
- data/lib/rghost/doc/classes/Helpers.html +0 -112
- data/lib/rghost/doc/classes/HorizontalLine.html +0 -186
- data/lib/rghost/doc/classes/HorizontalLine.src/M000023.html +0 -23
- data/lib/rghost/doc/classes/Image.html +0 -176
- data/lib/rghost/doc/classes/Image.src/M000042.html +0 -20
- data/lib/rghost/doc/classes/Image.src/M000043.html +0 -26
- data/lib/rghost/doc/classes/Jpeg.html +0 -148
- data/lib/rghost/doc/classes/Jpeg.src/M000013.html +0 -28
- data/lib/rghost/doc/classes/Line.html +0 -190
- data/lib/rghost/doc/classes/Line.src/M000069.html +0 -20
- data/lib/rghost/doc/classes/Line.src/M000070.html +0 -19
- data/lib/rghost/doc/classes/LineWidth.html +0 -172
- data/lib/rghost/doc/classes/LineWidth.src/M000005.html +0 -18
- data/lib/rghost/doc/classes/LineWidth.src/M000006.html +0 -18
- data/lib/rghost/doc/classes/Load.html +0 -161
- data/lib/rghost/doc/classes/Load.src/M000165.html +0 -21
- data/lib/rghost/doc/classes/Load.src/M000166.html +0 -34
- data/lib/rghost/doc/classes/Load.src/M000167.html +0 -19
- data/lib/rghost/doc/classes/NewPath.html +0 -153
- data/lib/rghost/doc/classes/NewPath.src/M000041.html +0 -18
- data/lib/rghost/doc/classes/Paper.html +0 -213
- data/lib/rghost/doc/classes/Paper.src/M000010.html +0 -20
- data/lib/rghost/doc/classes/Paper.src/M000011.html +0 -24
- data/lib/rghost/doc/classes/Paper.src/M000012.html +0 -20
- data/lib/rghost/doc/classes/Point.html +0 -180
- data/lib/rghost/doc/classes/Point.src/M000073.html +0 -20
- data/lib/rghost/doc/classes/Point.src/M000074.html +0 -18
- data/lib/rghost/doc/classes/PointWithCommand.html +0 -150
- data/lib/rghost/doc/classes/PointWithCommand.src/M000115.html +0 -22
- data/lib/rghost/doc/classes/PsObject.html +0 -269
- data/lib/rghost/doc/classes/PsObject.src/M000015.html +0 -25
- data/lib/rghost/doc/classes/PsObject.src/M000016.html +0 -18
- data/lib/rghost/doc/classes/PsObject.src/M000017.html +0 -18
- data/lib/rghost/doc/classes/PsObject.src/M000018.html +0 -18
- data/lib/rghost/doc/classes/PsObject.src/M000019.html +0 -21
- data/lib/rghost/doc/classes/PsObject.src/M000020.html +0 -19
- data/lib/rghost/doc/classes/PsObject.src/M000021.html +0 -18
- data/lib/rghost/doc/classes/RGB.html +0 -213
- data/lib/rghost/doc/classes/RGB.src/M000024.html +0 -21
- data/lib/rghost/doc/classes/RGB.src/M000025.html +0 -25
- data/lib/rghost/doc/classes/Rectangle.html +0 -226
- data/lib/rghost/doc/classes/Rectangle.src/M000056.html +0 -18
- data/lib/rghost/doc/classes/Rectangle.src/M000057.html +0 -24
- data/lib/rghost/doc/classes/Rectangle.src/M000058.html +0 -21
- data/lib/rghost/doc/classes/RubyGhostConfig.html +0 -144
- data/lib/rghost/doc/classes/RubyGhostConfig.src/M000118.html +0 -22
- data/lib/rghost/doc/classes/RubyGhostEngine.html +0 -261
- data/lib/rghost/doc/classes/RubyGhostEngine.src/M000007.html +0 -24
- data/lib/rghost/doc/classes/RubyGhostEngine.src/M000008.html +0 -96
- data/lib/rghost/doc/classes/RubyGhostEngine.src/M000009.html +0 -21
- data/lib/rghost/doc/classes/RubyToPs.html +0 -272
- data/lib/rghost/doc/classes/RubyToPs.src/M000119.html +0 -23
- data/lib/rghost/doc/classes/RubyToPs.src/M000120.html +0 -18
- data/lib/rghost/doc/classes/RubyToPs.src/M000121.html +0 -18
- data/lib/rghost/doc/classes/RubyToPs.src/M000122.html +0 -19
- data/lib/rghost/doc/classes/RubyToPs.src/M000123.html +0 -30
- data/lib/rghost/doc/classes/RubyToPs.src/M000124.html +0 -18
- data/lib/rghost/doc/classes/RubyToPs.src/M000125.html +0 -18
- data/lib/rghost/doc/classes/RubyToPs.src/M000126.html +0 -30
- data/lib/rghost/doc/classes/Scale.html +0 -153
- data/lib/rghost/doc/classes/Scale.src/M000114.html +0 -18
- data/lib/rghost/doc/classes/Show.html +0 -203
- data/lib/rghost/doc/classes/Show.src/M000052.html +0 -20
- data/lib/rghost/doc/classes/Show.src/M000053.html +0 -19
- data/lib/rghost/doc/classes/StaticDocumentCallback.html +0 -168
- data/lib/rghost/doc/classes/StaticDocumentCallback.src/M000051.html +0 -19
- data/lib/rghost/doc/classes/TextArea.html +0 -217
- data/lib/rghost/doc/classes/TextArea.src/M000029.html +0 -22
- data/lib/rghost/doc/classes/TextArea.src/M000030.html +0 -24
- data/lib/rghost/doc/classes/TextIn.html +0 -201
- data/lib/rghost/doc/classes/TextIn.src/M000054.html +0 -19
- data/lib/rghost/doc/classes/TextIn.src/M000055.html +0 -24
- data/lib/rghost/doc/classes/Units/Cm.html +0 -145
- data/lib/rghost/doc/classes/Units/Cm.src/M000175.html +0 -19
- data/lib/rghost/doc/classes/Units/Inch.html +0 -145
- data/lib/rghost/doc/classes/Units/Inch.src/M000174.html +0 -18
- data/lib/rghost/doc/classes/Units/PSUnit.html +0 -139
- data/lib/rghost/doc/classes/Units/PSUnit.src/M000170.html +0 -18
- data/lib/rghost/doc/classes/Units/Unit.html +0 -190
- data/lib/rghost/doc/classes/Units/Unit.src/M000171.html +0 -18
- data/lib/rghost/doc/classes/Units/Unit.src/M000172.html +0 -19
- data/lib/rghost/doc/classes/Units/Unit.src/M000173.html +0 -18
- data/lib/rghost/doc/classes/Units.html +0 -166
- data/lib/rghost/doc/classes/Units.src/M000169.html +0 -22
- data/lib/rghost/doc/classes/Variable.html +0 -152
- data/lib/rghost/doc/classes/Variable.src/M000044.html +0 -18
- data/lib/rghost/doc/classes/VerticalLine.html +0 -175
- data/lib/rghost/doc/classes/VerticalLine.src/M000116.html +0 -23
- data/lib/rghost/doc/classes/VerticalLine.src/M000117.html +0 -19
- data/lib/rghost/doc/created.rid +0 -1
- data/lib/rghost/doc/files/arc_rb.html +0 -109
- data/lib/rghost/doc/files/barcode_rb.html +0 -108
- data/lib/rghost/doc/files/callback_rb.html +0 -109
- data/lib/rghost/doc/files/color_rb.html +0 -110
- data/lib/rghost/doc/files/constants_rb.html +0 -108
- data/lib/rghost/doc/files/convert_rb.html +0 -107
- data/lib/rghost/doc/files/cursor_rb.html +0 -110
- data/lib/rghost/doc/files/data_grid/basic_grid_rb.html +0 -108
- data/lib/rghost/doc/files/data_grid/csv_grid_rb.html +0 -108
- data/lib/rghost/doc/files/data_grid/data_grid_rb.html +0 -116
- data/lib/rghost/doc/files/data_grid/dynamic_callback_rb.html +0 -108
- data/lib/rghost/doc/files/data_grid/field_format_rb.html +0 -109
- data/lib/rghost/doc/files/data_grid/grid_rb.html +0 -108
- data/lib/rghost/doc/files/data_grid/header_rb.html +0 -113
- data/lib/rghost/doc/files/data_grid/rails_grid_rb.html +0 -108
- data/lib/rghost/doc/files/data_grid/static_callback_rb.html +0 -109
- data/lib/rghost/doc/files/data_grid/style/border_lines_rb.html +0 -101
- data/lib/rghost/doc/files/data_grid/style/bottom_lines_rb.html +0 -101
- data/lib/rghost/doc/files/data_grid/style/old_forms_rb.html +0 -101
- data/lib/rghost/doc/files/data_grid/style/style_rb.html +0 -110
- data/lib/rghost/doc/files/document_rb.html +0 -150
- data/lib/rghost/doc/files/dsc_entry_rb.html +0 -108
- data/lib/rghost/doc/files/dynamic_document_callback_rb.html +0 -108
- data/lib/rghost/doc/files/eps_rb.html +0 -108
- data/lib/rghost/doc/files/font_rb.html +0 -110
- data/lib/rghost/doc/files/function_rb.html +0 -108
- data/lib/rghost/doc/files/gif_rb.html +0 -114
- data/lib/rghost/doc/files/graphic_rb.html +0 -113
- data/lib/rghost/doc/files/gs_alone_rb.html +0 -101
- data/lib/rghost/doc/files/helpers_rb.html +0 -101
- data/lib/rghost/doc/files/horizontal_line_rb.html +0 -109
- data/lib/rghost/doc/files/image_rb.html +0 -108
- data/lib/rghost/doc/files/jpeg_rb.html +0 -112
- data/lib/rghost/doc/files/line_rb.html +0 -109
- data/lib/rghost/doc/files/line_width_rb.html +0 -108
- data/lib/rghost/doc/files/load_rb.html +0 -108
- data/lib/rghost/doc/files/newpath_rb.html +0 -113
- data/lib/rghost/doc/files/paper_rb.html +0 -112
- data/lib/rghost/doc/files/point_rb.html +0 -109
- data/lib/rghost/doc/files/point_with_command_rb.html +0 -109
- data/lib/rghost/doc/files/ps_object_rb.html +0 -107
- data/lib/rghost/doc/files/rectangle_rb.html +0 -110
- data/lib/rghost/doc/files/rghost_rb.html +0 -109
- data/lib/rghost/doc/files/ruby_ghost_config_rb.html +0 -109
- data/lib/rghost/doc/files/ruby_ghost_engine_rb.html +0 -111
- data/lib/rghost/doc/files/ruby_to_ps_rb.html +0 -107
- data/lib/rghost/doc/files/scale_rb.html +0 -108
- data/lib/rghost/doc/files/show_rb.html +0 -109
- data/lib/rghost/doc/files/static_document_callback_rb.html +0 -109
- data/lib/rghost/doc/files/text_in_rb.html +0 -110
- data/lib/rghost/doc/files/textarea_rb.html +0 -111
- data/lib/rghost/doc/files/units_rb.html +0 -109
- data/lib/rghost/doc/files/variable_rb.html +0 -108
- data/lib/rghost/doc/files/version_rb.html +0 -101
- data/lib/rghost/doc/files/vertical_line_rb.html +0 -110
- data/lib/rghost/doc/fr_class_index.html +0 -93
- data/lib/rghost/doc/fr_file_index.html +0 -81
- data/lib/rghost/doc/fr_method_index.html +0 -201
- data/lib/rghost/doc/index.html +0 -24
- data/lib/rghost/ps/functions.ps +0 -646
- data/lib/rghost/rectangle.rb +0 -39
- data/lib/rghost/rghost.rb +0 -3
- data/lib/rghost/version.rb +0 -9
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
#Border object render a border around of vector shapes. Its sketch can be a combination of color, dashes, line joins and line caps.
|
|
2
|
+
#Usually its use inside of object facades, such as, Document, CallbackFacade and PsFacade as parameter :border, for example:
|
|
3
|
+
# d=Document.new
|
|
4
|
+
# d.horizontal_line :middle, :border => { :color => '#058412', :dash => [1,0,2] }
|
|
5
|
+
#You can use it as a new instance of Border and set inside of Document by method set, example:
|
|
6
|
+
# d=Document.new
|
|
7
|
+
# b=Border.new :color => '#058412', :dash => [1,0,2]
|
|
8
|
+
# d.set b
|
|
9
|
+
# d.lineto :x => 2.5, :y => 5
|
|
10
|
+
#===Options
|
|
11
|
+
#* <tt>:color</tt> - Facade to Color using the same parameter.
|
|
12
|
+
#* <tt>:dash</tt> - Facade to Dash using the same parameter.
|
|
13
|
+
#* <tt>:width</tt> - Facade to LineWidth using the same parameter.
|
|
14
|
+
#* <tt>:linejoin</tt> - Sets the line join parameter in the graphics state to int, which must be one of the integers 0, 1, or 2.
|
|
15
|
+
#====:linejoin examples
|
|
16
|
+
#* <tt>Miter join</tt> link:images/linejoin0.png <tt> :linejoin => 0 </tt>
|
|
17
|
+
#* <tt>Round join</tt> link:images/linejoin1.png <tt> :linejoin => 1 </tt>
|
|
18
|
+
#* <tt>Bevel join</tt> link:images/linejoin2.png <tt> :linejoin => 2 </tt>
|
|
19
|
+
#* <tt>:linecap</tt> - Sets the line cap parameter in the graphics state to int, which must be one of the integers 0, 1, or 2
|
|
20
|
+
#====:linecap examples
|
|
21
|
+
#* <tt><tt>Butt cap</tt></tt> link:images/linecap0.png <tt> :linecap => 0 </tt>
|
|
22
|
+
#* <tt>Round cap</tt> link:images/linecap1.png <tt> :linecap => 1 </tt>
|
|
23
|
+
#* <tt>Projecting square cap</tt> link:images/linecap2.png <tt> :linecap => 2 </tt>
|
|
24
|
+
class RGhost::Border < RGhost::PsObject
|
|
25
|
+
|
|
26
|
+
DEFAULT_OPTIONS = {:color => '#49AAFA', :dash => false, :width => 0.5, :linejoin => 0, :linecap => 0 }
|
|
27
|
+
# aqui tem documentação
|
|
28
|
+
def initialize(options={})
|
|
29
|
+
super(""){}
|
|
30
|
+
@options = DEFAULT_OPTIONS.dup.merge(options)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def ps #:nodoc:
|
|
34
|
+
p=RGhost::PsObject.new
|
|
35
|
+
p.set RGhost::LineWidth.new(@options[:width]) if @options[:width]
|
|
36
|
+
p.raw "#{@options[:linejoin]} setlinejoin"
|
|
37
|
+
p.raw "#{@options[:linecap]} setlinecap"
|
|
38
|
+
p.set RGhost::Dash.new(@options[:dash]) if @options[:dash]
|
|
39
|
+
p.set RGhost::Color.create(@options[:color]) if @options[:color]
|
|
40
|
+
p
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
end
|
|
44
|
+
|
data/lib/rghost/callback.rb
CHANGED
|
@@ -1,27 +1,33 @@
|
|
|
1
1
|
require "ps_object"
|
|
2
2
|
require "ruby_to_ps"
|
|
3
3
|
|
|
4
|
-
#
|
|
5
|
-
#
|
|
6
|
-
#
|
|
7
|
-
#
|
|
8
|
-
#
|
|
9
|
-
#
|
|
10
|
-
#
|
|
11
|
-
#
|
|
12
|
-
#
|
|
4
|
+
# Callbacks are custom code blocks defined inside of Document.
|
|
5
|
+
# All callbacks received implicitly a instance of PsFacade can be creates any PsObject.
|
|
6
|
+
# The callbacks's execution depend of the algorithims predefined in Postscript core library.
|
|
7
|
+
# There are two kind of callbacks, Statics and Dynamics callbacks.
|
|
8
|
+
# A Static callback there aren't parameters to control of the inclusion and exception on current scope, usually
|
|
9
|
+
# applied for events which happen one time, for example after_document_create, "after document create" always will execute one time for each document.
|
|
10
|
+
# Otherwise Dynamic callbacks there is control of scope using conditional :only or :except, this is only difference in relation the static callbacks.
|
|
11
|
+
# The parameters of a Dynamic callbak must be one integer or one array of integer. Example:
|
|
12
|
+
# For all pages except page 3
|
|
13
|
+
# doc.before_page_create :except => 3 do
|
|
14
|
+
# # do something
|
|
15
|
+
# end
|
|
13
16
|
#
|
|
14
|
-
|
|
17
|
+
# For just 2 and 4 pages
|
|
18
|
+
# doc.before_page_create :only => [2,4] do
|
|
19
|
+
# # do something
|
|
20
|
+
# end
|
|
21
|
+
#
|
|
22
|
+
# The most of callbacks are defined in facades such as DocumentCallbackFacade and Grid::CallbackFacade
|
|
23
|
+
class RGhost::Callback < RGhost::PsObject
|
|
15
24
|
attr_accessor :only, :except, :name
|
|
16
|
-
include RubyToPs
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
# Callback.new :only => [4,10,11]
|
|
23
|
-
def initialize(name,options={},&block) #((|name|)) nome do callback
|
|
24
|
-
super(&block)
|
|
25
|
+
include RGhost::RubyToPs
|
|
26
|
+
|
|
27
|
+
def initialize(name,options={},&block)
|
|
28
|
+
|
|
29
|
+
super(""){}
|
|
30
|
+
set RGhost::PsFacade.new(&block)
|
|
25
31
|
@name=name
|
|
26
32
|
@options=options
|
|
27
33
|
|
|
@@ -29,11 +35,8 @@ class Callback < PsObject
|
|
|
29
35
|
|
|
30
36
|
def ps
|
|
31
37
|
|
|
32
|
-
|
|
33
38
|
@only=num_to_array(@options[:only])
|
|
34
39
|
@except=num_to_array(@options[:except])
|
|
35
|
-
|
|
36
|
-
|
|
37
40
|
|
|
38
41
|
"\n/#{@name} 3 dict def #{@name} begin \n/proc { #{super} } bind def \n/except #{to_array(@except)} def \n/only #{to_array(@only)} def \nend "
|
|
39
42
|
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
require "ps_object"
|
|
2
|
+
require "units"
|
|
3
|
+
#Draw a circle to the current path(or current row by default).
|
|
4
|
+
#===Options
|
|
5
|
+
#
|
|
6
|
+
#* <tt>:x and :y</tt> - as center of the circle.
|
|
7
|
+
#* <tt>:radius</tt> - as radius(in points).
|
|
8
|
+
#* <tt>:ang1</tt> - the angle of a vector from (:x , :y ) of length :radius to the first endpoint of the circle.
|
|
9
|
+
#* <tt>:ang2</tt> - the angle of a vector from (:x, :y) of length :radius to the second endpoint of the circle.
|
|
10
|
+
#* <tt>:content</tt> - facade to ShapeContent with same parameters.
|
|
11
|
+
#* <tt>:border</tt> - facade to Border with same parameters.
|
|
12
|
+
#* <tt>:use</tt> - <b>:arc</b> draw counterclockwise and <b>:arcn</b> (arc negative) clockwise direction.
|
|
13
|
+
#===Examples using facade circle method inside of Document
|
|
14
|
+
# d=Document.new
|
|
15
|
+
# d.circle :x => 5, :y => 2.5 , :radius => 40
|
|
16
|
+
#
|
|
17
|
+
#link:images/circle01.png
|
|
18
|
+
# d=Document.new
|
|
19
|
+
# d.circle :x => 5, :y => 2.5 , :radius => 40, :content => {:fill => false}
|
|
20
|
+
#
|
|
21
|
+
#link:images/circle02.png
|
|
22
|
+
#
|
|
23
|
+
# d=Document.new
|
|
24
|
+
# d.circle :x => 5, :y => 2.5 , :radius => 40, :content => {:color => "#FF0000"}
|
|
25
|
+
#
|
|
26
|
+
#link:images/circle03.png
|
|
27
|
+
#
|
|
28
|
+
# d=Document.new
|
|
29
|
+
# d.circle :x => 5, :y => 2.5 , :radius => 40, :content => {:color => "#FF0000"} ,:border => {:color => "#FFFFFF"}
|
|
30
|
+
#
|
|
31
|
+
#link:images/circle04.png
|
|
32
|
+
#
|
|
33
|
+
# d=Document.new
|
|
34
|
+
# d.circle :x => 5, :y => 2.5 , :radius => 40, :content => {:color => :yellow} ,:border => {:color => :orange, :dash => [1,2,1,2], :width => 20}
|
|
35
|
+
#
|
|
36
|
+
#link:images/circle05.png
|
|
37
|
+
#
|
|
38
|
+
# d=Document.new
|
|
39
|
+
# colors=%w[#98AE09 #AFE099 #A971FF #CC1010 #FF7201 #34FEE1]
|
|
40
|
+
# 6.downto(1) do |v|
|
|
41
|
+
# d.circle :x => 5, :y => 2.5 , :radius => v*10, :content =>{:color => colors[v]}
|
|
42
|
+
# end
|
|
43
|
+
#
|
|
44
|
+
#link:images/circle06.png
|
|
45
|
+
# d=Document.new
|
|
46
|
+
# d.circle :x => 5, :y => 2.5 , :ang1 => 90, :radius => 50, :content => {:fill => false }
|
|
47
|
+
#
|
|
48
|
+
#link:images/circle07.png
|
|
49
|
+
#
|
|
50
|
+
# d=Document.new
|
|
51
|
+
# d.circle :x => 5, :y => 2.5 , :ang2 => 90, :radius => 50, :content => {:fill => false }
|
|
52
|
+
#
|
|
53
|
+
#link:images/circle08.png
|
|
54
|
+
#
|
|
55
|
+
# d=Document.new
|
|
56
|
+
# d.circle :x => 5, :y => 2.5 , :ang2 => 90, :radius => 50, :content =>{:color => :green}
|
|
57
|
+
#
|
|
58
|
+
#link:images/circle09.png
|
|
59
|
+
#
|
|
60
|
+
# d=Document.new
|
|
61
|
+
# d.circle :x => 5, :y => 2.5 , :ang2 => 90, :use => :arcn, :radius => 50, :content =>{:color => :green}
|
|
62
|
+
#
|
|
63
|
+
#link:images/circle10.png
|
|
64
|
+
#
|
|
65
|
+
#===Examples using Circle class
|
|
66
|
+
# d=Document.new
|
|
67
|
+
# d.scale(3,1)
|
|
68
|
+
# d.set Circle.new(:x => 1.5, :y => 1.5 , :ang2 => 180, :radius => 25)
|
|
69
|
+
#
|
|
70
|
+
#link:images/circle11.png
|
|
71
|
+
class RGhost::Circle < RGhost::PsObject
|
|
72
|
+
DEFAULT_OPTIONS={
|
|
73
|
+
:x => :limit_left,
|
|
74
|
+
:y=> :current_row,
|
|
75
|
+
:radius => 50,
|
|
76
|
+
:ang1 => 0,
|
|
77
|
+
:ang2 => 360 ,
|
|
78
|
+
:use => :arc,
|
|
79
|
+
:content => RGhost::ShapeContent::DEFAULT_OPTIONS,
|
|
80
|
+
:border => RGhost::Border::DEFAULT_OPTIONS
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
def initialize(options={})
|
|
84
|
+
super(''){}
|
|
85
|
+
@options=DEFAULT_OPTIONS.dup.merge(options)
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
def ps
|
|
89
|
+
|
|
90
|
+
x,y= RGhost::Units::parse(@options[:x]), RGhost::Units::parse(@options[:y]) #with parse
|
|
91
|
+
|
|
92
|
+
graph=RGhost::Graphic.new
|
|
93
|
+
graph.raw :newpath
|
|
94
|
+
graph.set RGhost::Border.new(@options[:border]) if @options[:border]
|
|
95
|
+
graph.raw "#{x} #{y} #{@options[:radius]} #{@options[:ang1]} #{@options[:ang2]} #{@options[:use]} "
|
|
96
|
+
graph.set RGhost::ShapeContent.new(@options[:content]) if @options[:content]
|
|
97
|
+
graph.raw :stroke
|
|
98
|
+
graph
|
|
99
|
+
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
end
|
data/lib/rghost/color.rb
CHANGED
|
@@ -2,38 +2,53 @@ require "ps_object"
|
|
|
2
2
|
require "constants"
|
|
3
3
|
require "ruby_to_ps" #array_to_stack
|
|
4
4
|
|
|
5
|
-
#
|
|
6
|
-
|
|
7
|
-
class Color < PsObject
|
|
5
|
+
#Creates color for postscript components
|
|
6
|
+
class RGhost::Color < RGhost::PsObject
|
|
8
7
|
|
|
9
|
-
include RubyToPs
|
|
10
|
-
#
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
#
|
|
14
|
-
#
|
|
15
|
-
#
|
|
16
|
-
#
|
|
17
|
-
#
|
|
18
|
-
#
|
|
19
|
-
#
|
|
20
|
-
# Color.create
|
|
21
|
-
#
|
|
22
|
-
|
|
8
|
+
include RGhost::RubyToPs
|
|
9
|
+
#The method create is a color factory depends when parameter is used. The parameter variate between 0 and 1, if value greatet that 1 will be divided by 100.0 .
|
|
10
|
+
#===Examples
|
|
11
|
+
#====Creating RGB color
|
|
12
|
+
#String HTML color converter
|
|
13
|
+
# Color.create '#FFAA33'
|
|
14
|
+
#As Symbol will be find in RGhost::Constants::Colors::RGB
|
|
15
|
+
# Color.create :red
|
|
16
|
+
#As Array with 3 elements
|
|
17
|
+
# Color.create [0.5, 0.3, 0.5]
|
|
18
|
+
#Hash with 3 pair of key/value. Valids keys :red, :green and :blue
|
|
19
|
+
# Color.create :red => 0.5, :green => 0.3, :blue => 0.5
|
|
20
|
+
#Hash with 3 pair of key/value. Valids keys :r, :g and :b
|
|
21
|
+
# Color.create :r => 0.5, :g => 0.3, :b => 0.5
|
|
22
|
+
#====Creating CMYK color
|
|
23
|
+
#Hash with 4 pair of key/value. Valids keys :cyan, :magenta, :yellow and :black
|
|
24
|
+
# Color.create :cyan=> 1 ,:magenta => 0.3, :yellow => 0, :black => 0
|
|
25
|
+
#Hash with 4 pair of key/value. Valids keys :c, :m, :y and :b
|
|
26
|
+
# Color.create :c=> 1 ,:m => 0.3, :y => 0, :b => 0
|
|
27
|
+
#====Creating Gray color
|
|
28
|
+
#A single Numeric
|
|
29
|
+
# Color.create 0.5
|
|
30
|
+
#50 percent of black will be divided by 100.0
|
|
31
|
+
# Color.create 50
|
|
32
|
+
def self.create(color="FFAA99")
|
|
23
33
|
|
|
24
34
|
return case color
|
|
25
|
-
|
|
26
|
-
|
|
35
|
+
when String: RGhost::RGB.new(color)
|
|
36
|
+
when Symbol:
|
|
37
|
+
c=RGhost::Constants::Colors::RGB[color]
|
|
38
|
+
raise ArgumentError.new("#{color}##{color.class}") unless c
|
|
39
|
+
self.create c
|
|
40
|
+
|
|
41
|
+
when Array, Hash:
|
|
27
42
|
if color.size == 3
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
else
|
|
32
|
-
raise ArgumentError.new
|
|
33
|
-
end
|
|
34
|
-
when Numeric: Gray.new(color)
|
|
43
|
+
RGhost::RGB.new(color)
|
|
44
|
+
elsif color.size == 4
|
|
45
|
+
RGhost::CMYK.new(color)
|
|
35
46
|
else
|
|
36
|
-
raise ArgumentError.new
|
|
47
|
+
raise ArgumentError.new("#{color}##{color.class}")
|
|
48
|
+
end
|
|
49
|
+
when Numeric: RGhost::Gray.new(color)
|
|
50
|
+
else
|
|
51
|
+
raise ArgumentError.new("#{color}##{color.class}")
|
|
37
52
|
end
|
|
38
53
|
|
|
39
54
|
end
|
|
@@ -41,18 +56,21 @@ class Color < PsObject
|
|
|
41
56
|
|
|
42
57
|
end
|
|
43
58
|
|
|
44
|
-
#
|
|
45
|
-
class RGB < Color
|
|
59
|
+
#Creates RGB color
|
|
60
|
+
class RGhost::RGB < RGhost::Color
|
|
46
61
|
attr_accessor :red, :green, :blue
|
|
47
|
-
CONSTANTS=Constants::Colors::RGB
|
|
62
|
+
CONSTANTS=RGhost::Constants::Colors::RGB
|
|
48
63
|
DEFAULT_RGB={:red => 0, :green => 0, :blue => 0}
|
|
49
|
-
#
|
|
50
|
-
#
|
|
51
|
-
#
|
|
52
|
-
#
|
|
53
|
-
#
|
|
54
|
-
#
|
|
55
|
-
#
|
|
64
|
+
#String HTML color converter
|
|
65
|
+
# Color.create '#FFAA33'
|
|
66
|
+
#As Symbol will be find in RGhost::Constants::Colors::RGB
|
|
67
|
+
# Color.create :red
|
|
68
|
+
#As Array with 3 elements
|
|
69
|
+
# Color.create [0.5, 0.3, 0.5]
|
|
70
|
+
#Hash with 3 pair of key/value. Valids keys :red, :green and :blue
|
|
71
|
+
# Color.create :red => 0.5, :green => 0.3, :blue => 0.5
|
|
72
|
+
#Hash with 3 pair of key/value. Valids keys :r, :g and :b
|
|
73
|
+
# Color.create :r => 0.5, :g => 0.3, :b => 0.5
|
|
56
74
|
def initialize(color_or_red=nil,green=nil,blue=nil)
|
|
57
75
|
@color=color_or_red
|
|
58
76
|
@color=[color_or_red.to_f,green.to_f,blue.to_f] if color_or_red.is_a? Numeric
|
|
@@ -63,11 +81,12 @@ class RGB < Color
|
|
|
63
81
|
def ps
|
|
64
82
|
|
|
65
83
|
value=case @color
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
84
|
+
when Hash: [@color[:red] || @color[:r],@color[:green] || @color[:g],@color[:blue] || @color[:b]]
|
|
85
|
+
when Array: @color
|
|
86
|
+
when String: hex_to_rgb(@color)
|
|
87
|
+
when NilClass: [0,0,1]
|
|
70
88
|
end
|
|
89
|
+
|
|
71
90
|
array_to_stack(value.map{|n| n > 1 ? n/100.0: n})+"setrgbcolor"
|
|
72
91
|
end
|
|
73
92
|
|
|
@@ -80,12 +99,15 @@ class RGB < Color
|
|
|
80
99
|
|
|
81
100
|
end
|
|
82
101
|
|
|
83
|
-
#
|
|
84
|
-
class CMYK < Color
|
|
85
|
-
|
|
86
|
-
CONSTANTS=Constants::Colors::CMYK
|
|
87
|
-
|
|
88
|
-
#
|
|
102
|
+
#Creates CMYK color space
|
|
103
|
+
class RGhost::CMYK < RGhost::Color
|
|
104
|
+
attr_accessor :cyan ,:magenta, :yellow, :black
|
|
105
|
+
CONSTANTS=RGhost::Constants::Colors::CMYK
|
|
106
|
+
|
|
107
|
+
#Hash with 4 pair of key/value. Valids keys :cyan, :magenta, :yellow and :black
|
|
108
|
+
# Color.create :cyan=> 1 ,:magenta => 0.3, :yellow => 0, :black => 0
|
|
109
|
+
#Hash with 4 pair of key/value. Valids keys :c, :m, :y and :b
|
|
110
|
+
# Color.create :c=> 1 ,:m => 0.3, :y => 0, :b => 0
|
|
89
111
|
def initialize(color={:cyan=> 1 ,:magenta => 0, :yellow => 0, :black => 0})
|
|
90
112
|
@color=color
|
|
91
113
|
end
|
|
@@ -93,25 +115,28 @@ class CMYK < Color
|
|
|
93
115
|
def ps
|
|
94
116
|
|
|
95
117
|
value=case @color
|
|
96
|
-
|
|
97
|
-
|
|
118
|
+
when Hash: [@color[:cyan] || @color[:c],@color[:magenta] || @color[:m],@color[:yellow] || @color[:y],@color[:black] || @color[:k]]
|
|
119
|
+
when Array: @color
|
|
98
120
|
end
|
|
99
121
|
array_to_stack(value.map{|n| n > 1 ? n/100.0: n})+"setcmykcolor"
|
|
100
122
|
|
|
101
123
|
end
|
|
102
124
|
|
|
103
125
|
end
|
|
104
|
-
#
|
|
105
|
-
class Gray < Color
|
|
126
|
+
#Creates Gray color
|
|
127
|
+
class RGhost::Gray < RGhost::Color
|
|
106
128
|
attr_accessor :gray
|
|
107
|
-
|
|
108
|
-
#
|
|
129
|
+
|
|
130
|
+
#A single Numeric
|
|
131
|
+
# Color.create 0.5
|
|
132
|
+
#50 percent of black will be divided by 100.0
|
|
133
|
+
# Color.create 50
|
|
109
134
|
def initialize(gray=0.8)
|
|
110
|
-
|
|
135
|
+
@gray=gray
|
|
111
136
|
end
|
|
112
137
|
|
|
113
|
-
def ps
|
|
114
|
-
|
|
138
|
+
def ps #:nodoc:
|
|
139
|
+
@gray = @gray/100.0 if @gray > 1
|
|
115
140
|
"#{@gray} setgray"
|
|
116
141
|
end
|
|
117
142
|
|