One way I am investigating is, importing the texture as an image in the import box, so you can use the Image methods such as rezise () and then convert it to a texture image. I tried it and it works, but I don't know how the quality issue is, there are many options and interpolations and I know little and nothing about that. I keep investigating and I tell you.
extends Node2D
var img:Image
onready var tex= ImageTexture.new()
func _ready():
img=preload("res://art/forest.jpg")
img.resize(256,256,Image.INTERPOLATE_TRILINEAR)
tex.create_from_image(img)
var sp=Sprite.new()
sp.centered=false
sp.texture=tex
add_child(sp)
pass