You've already forked collage-maker
							
							add collage package
This commit is contained in:
		
							
								
								
									
										36
									
								
								collage/collage.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								collage/collage.go
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,36 @@
 | 
			
		||||
// Package collage makes a pic collage
 | 
			
		||||
package collage
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"io"
 | 
			
		||||
	"io/fs"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type Dimension struct {
 | 
			
		||||
	Width  uint `json:"width"`
 | 
			
		||||
	Height uint `json:"height"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type Point struct {
 | 
			
		||||
	X uint `json:"x"`
 | 
			
		||||
	Y uint `json:"y"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type Rectangle struct {
 | 
			
		||||
	Start Point `json:"start"`
 | 
			
		||||
	End   Point `json:"end"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type Request struct {
 | 
			
		||||
	BackgroundImage string    `json:"background_image"`
 | 
			
		||||
	Aspect          Dimension `json:"aspect"`
 | 
			
		||||
	Dimension       Dimension `json:"dimension"`
 | 
			
		||||
	Photos          []struct {
 | 
			
		||||
		ImageName string    `json:"image"`
 | 
			
		||||
		Crop      Rectangle `json:"crop"`
 | 
			
		||||
		Frame     Rectangle `json:"frame"`
 | 
			
		||||
	} `json:"photos"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func Make(request Request, source fs.FS, output io.Writer) {
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										24
									
								
								collage/collage_test.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								collage/collage_test.go
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
			
		||||
package collage
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"embed"
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"io/fs"
 | 
			
		||||
	"testing"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
//go:embed test_data/*
 | 
			
		||||
var testData embed.FS
 | 
			
		||||
 | 
			
		||||
func TestMake(t *testing.T) {
 | 
			
		||||
	t.Log("Test was run")
 | 
			
		||||
	ifs, err := fs.Sub(testData, "test_data")
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		t.Fatalf("getting test_data subdir failed %v", err)
 | 
			
		||||
	}
 | 
			
		||||
	img1f, err := ifs.Open("img1.jpg")
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		t.Fatalf("opening image failed %v", err)
 | 
			
		||||
	}
 | 
			
		||||
	fmt.Printf("%#v\n", img1f)
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user