47 lines
718 B
Go
47 lines
718 B
Go
package screen
|
|
|
|
import (
|
|
"fmt"
|
|
"io"
|
|
|
|
"fyne.io/fyne/v2"
|
|
"fyne.io/fyne/v2/canvas"
|
|
)
|
|
|
|
func AssetToImage(
|
|
s ScreenHandler,
|
|
asset string,
|
|
) (
|
|
img *canvas.Image,
|
|
err error,
|
|
) {
|
|
fh, err := s.LoadAsset(asset)
|
|
if err != nil {
|
|
err = fmt.Errorf("failed to load asset: %w", err)
|
|
return
|
|
}
|
|
img = canvas.NewImageFromReader(fh, asset)
|
|
return
|
|
}
|
|
|
|
func AssetToResource(
|
|
s ScreenHandler,
|
|
asset string,
|
|
) (
|
|
res fyne.Resource,
|
|
err error,
|
|
) {
|
|
fh, err := s.LoadAsset(asset)
|
|
if err != nil {
|
|
err = fmt.Errorf("failed to load asset: %w", err)
|
|
return
|
|
}
|
|
bytes, err := io.ReadAll(fh)
|
|
if err != nil {
|
|
err = fmt.Errorf("failed to read asset: %w", err)
|
|
return
|
|
}
|
|
res = fyne.NewStaticResource(asset, bytes)
|
|
return
|
|
}
|