Fixing compatibility with linux os

Thank you, Travis! Turns out the cairo gem isn't perfectly the same in Linux...
dev
Andy Meneely 2015-02-28 21:39:26 -05:00
parent 499050c4ee
commit 2caacaeece
22 changed files with 63 additions and 57 deletions

View File

@ -25,7 +25,7 @@ module Squib
@svgfile = "#{deck.dir}/#{deck.prefix}#{deck.count_format % index}.svg" @svgfile = "#{deck.dir}/#{deck.prefix}#{deck.count_format % index}.svg"
@cairo_surface = make_surface(@svgfile, backend) @cairo_surface = make_surface(@svgfile, backend)
@cairo_context = Squib::Graphics::CairoContextWrapper.new(Cairo::Context.new(@cairo_surface)) @cairo_context = Squib::Graphics::CairoContextWrapper.new(Cairo::Context.new(@cairo_surface))
@cairo_context.antialias = @deck.antialias @cairo_context.antialias = ANTIALIAS_OPTS[(@deck.antialias.downcase)] || 'subpixel'
end end
def make_surface(svgfile, backend) def make_surface(svgfile, backend)

View File

@ -74,6 +74,12 @@ module Squib
'progress_bar' => false, 'progress_bar' => false,
} }
#Translate the hints to the methods.
ANTIALIAS_OPTS = {
'best' => 'subpixel',
'good' => 'gray',
'fast' => 'gray',
}
# These are parameters that are intended to be "expanded" across # These are parameters that are intended to be "expanded" across
# range if they are singletons. # range if they are singletons.
# #

View File

@ -1,6 +1,6 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color([:white]) cairo: set_source_color([:white])
cairo: paint([]) cairo: paint([])

View File

@ -1,6 +1,6 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color([:white]) cairo: set_source_color([:white])
cairo: paint([]) cairo: paint([])

View File

@ -1,5 +1,5 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color([:white]) cairo: set_source_color([:white])
cairo: paint([]) cairo: paint([])

View File

@ -1,5 +1,5 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color([:white]) cairo: set_source_color([:white])
cairo: paint([]) cairo: paint([])

View File

@ -1,4 +1,4 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color(["#ccc"]) cairo: set_source_color(["#ccc"])
cairo: paint([]) cairo: paint([])

View File

@ -1,4 +1,4 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: rounded_rectangle([300, 300, 400, 400, 0, 0]) cairo: rounded_rectangle([300, 300, 400, 400, 0, 0])
cairo: set_source_color([:red]) cairo: set_source_color([:red])

View File

@ -1,6 +1,6 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color([:white]) cairo: set_source_color([:white])
cairo: paint([]) cairo: paint([])

View File

@ -1,4 +1,4 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source([LinearPattern]) cairo: set_source([LinearPattern])
cairo: paint([]) cairo: paint([])

View File

@ -1,5 +1,5 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color([:black]) cairo: set_source_color([:black])
cairo: translate([0, 0]) cairo: translate([0, 0])

View File

@ -1,4 +1,4 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color(["#0b7c8e"]) cairo: set_source_color(["#0b7c8e"])
cairo: paint([]) cairo: paint([])

View File

@ -1,4 +1,4 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color(["#aaa"]) cairo: set_source_color(["#aaa"])
cairo: paint([]) cairo: paint([])
@ -21,7 +21,7 @@ cairo: update_pango_layout([MockDouble])
cairo: show_pango_layout([MockDouble]) cairo: show_pango_layout([MockDouble])
cairo: restore([]) cairo: restore([])
surface: write_to_png(["_output/portrait_00.png"]) surface: write_to_png(["_output/portrait_00.png"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color(["#aaa"]) cairo: set_source_color(["#aaa"])
cairo: paint([]) cairo: paint([])

View File

@ -1,6 +1,6 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color([:white]) cairo: set_source_color([:white])
cairo: paint([]) cairo: paint([])

View File

@ -1,19 +1,19 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color([:gray]) cairo: set_source_color([:gray])
cairo: paint([]) cairo: paint([])

View File

@ -1,7 +1,7 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color(["#CE534D"]) cairo: set_source_color(["#CE534D"])
cairo: paint([]) cairo: paint([])

View File

@ -1,6 +1,6 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color([:white]) cairo: set_source_color([:white])
cairo: paint([]) cairo: paint([])

View File

@ -1,4 +1,4 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color([:white]) cairo: set_source_color([:white])
cairo: paint([]) cairo: paint([])

View File

@ -1,4 +1,4 @@
cairo: antialias=(["best"]) cairo: antialias=(["subpixel"])
cairo: save([]) cairo: save([])
cairo: set_source_color(["#ddd"]) cairo: set_source_color(["#ddd"])
cairo: paint([]) cairo: paint([])

View File

@ -21,7 +21,7 @@ describe Squib::Card do
context '#png' do context '#png' do
it 'makes all the expected calls on a smoke test' do it 'makes all the expected calls on a smoke test' do
expect(@context).to receive(:antialias=).with('best') expect(@context).to receive(:antialias=).with('subpixel')
expect(@context).to receive(:save).once expect(@context).to receive(:save).once
expect(@context).to receive(:translate).with(-37, -38).once expect(@context).to receive(:translate).with(-37, -38).once
expect(@context).to receive(:rotate).with(0.0).once expect(@context).to receive(:rotate).with(0.0).once
@ -48,7 +48,7 @@ describe Squib::Card do
it 'makes all the expected calls on a smoke test' do it 'makes all the expected calls on a smoke test' do
expect(@svg).to receive(:width).and_return(100).twice expect(@svg).to receive(:width).and_return(100).twice
expect(@svg).to receive(:height).and_return(100).twice expect(@svg).to receive(:height).and_return(100).twice
expect(@context).to receive(:antialias=).with('best').once expect(@context).to receive(:antialias=).with('subpixel').once
expect(@context).to receive(:save).once expect(@context).to receive(:save).once
expect(@context).to receive(:rotate).with(0.0).once expect(@context).to receive(:rotate).with(0.0).once
expect(@context).to receive(:translate).with(37, 38).once expect(@context).to receive(:translate).with(37, 38).once

View File

@ -23,7 +23,7 @@ describe Squib::Card do
context 'rect' do context 'rect' do
it 'make all the expected calls on a smoke test' do it 'make all the expected calls on a smoke test' do
expect(@context).to receive(:antialias=).with('best') expect(@context).to receive(:antialias=).with('subpixel')
expect(@context).to receive(:save).once expect(@context).to receive(:save).once
expect(@context).to receive(:rounded_rectangle).with(37, 38, 50, 100, 10, 15).twice expect(@context).to receive(:rounded_rectangle).with(37, 38, 50, 100, 10, 15).twice
expect_stroke('#fff', '#f00', 2.0) expect_stroke('#fff', '#f00', 2.0)
@ -38,7 +38,7 @@ describe Squib::Card do
context 'circle' do context 'circle' do
it 'make all the expected calls on a smoke test' do it 'make all the expected calls on a smoke test' do
expect(@context).to receive(:antialias=).with('best') expect(@context).to receive(:antialias=).with('subpixel')
expect(@context).to receive(:save).once expect(@context).to receive(:save).once
expect(@context).to receive(:move_to).with(137, 38) expect(@context).to receive(:move_to).with(137, 38)
expect(@context).to receive(:circle).with(37, 38, 100).twice expect(@context).to receive(:circle).with(37, 38, 100).twice
@ -54,7 +54,7 @@ describe Squib::Card do
context 'triangle' do context 'triangle' do
it 'make all the expected calls on a smoke test' do it 'make all the expected calls on a smoke test' do
expect(@context).to receive(:antialias=).with('best') expect(@context).to receive(:antialias=).with('subpixel')
expect(@context).to receive(:save).once expect(@context).to receive(:save).once
expect(@context).to receive(:triangle).with(1, 2, 3, 4, 5, 6).twice expect(@context).to receive(:triangle).with(1, 2, 3, 4, 5, 6).twice
expect_stroke('#fff', '#f00', 2.0) expect_stroke('#fff', '#f00', 2.0)
@ -67,7 +67,7 @@ describe Squib::Card do
context 'line' do context 'line' do
it 'make all the expected calls on a smoke test' do it 'make all the expected calls on a smoke test' do
expect(@context).to receive(:antialias=).with('best') expect(@context).to receive(:antialias=).with('subpixel')
expect(@context).to receive(:save).once expect(@context).to receive(:save).once
expect(@context).to receive(:move_to).with(1, 2).once expect(@context).to receive(:move_to).with(1, 2).once
expect(@context).to receive(:line_to).with(3, 4).once expect(@context).to receive(:line_to).with(3, 4).once

View File

@ -20,7 +20,7 @@ describe Squib::Card, '#text' do
it 'make all the expected calls on a smoke test' do it 'make all the expected calls on a smoke test' do
extent = Pango::Rectangle.new(50,60,100,200) extent = Pango::Rectangle.new(50,60,100,200)
expect(Squib.logger).to receive(:debug).once expect(Squib.logger).to receive(:debug).once
expect(context).to receive(:antialias=).with('best').once expect(context).to receive(:antialias=).with('subpixel').once
expect(context).to receive(:save).once expect(context).to receive(:save).once
expect(context).to receive(:set_source_color).once expect(context).to receive(:set_source_color).once
expect(context).to receive(:move_to).with(10, 15).once expect(context).to receive(:move_to).with(10, 15).once