Future-proof query selector, clap CLI interface

feat/template
Shad Amethyst 2 years ago
parent be1d9c97ea
commit a0af4bf36c
Signed by: amethyst
GPG Key ID: D970C8DD1D6DEE36

@ -10,3 +10,5 @@ serde = { version = "1.0.140", features = ["derive"] }
toml = "0.5.9"
xmltree = "0.10.3"
mustache = { git = "https://git.shadamethyst.xyz/adri326/rust-mustache.git" }
clap = { version = "3.2", features = ["derive"] }
mkdirp = "1.0.0"

@ -0,0 +1,194 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="128"
height="128"
viewBox="0 0 33.866668 33.866668"
version="1.1"
id="svg5"
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
sodipodi:docname="blobfox_reach_aww.svg"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<title id="title">blobfox_reach_aww</title>
<sodipodi:namedview
id="namedview7"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:pageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:document-units="mm"
showgrid="false"
inkscape:zoom="3.7207012"
inkscape:cx="73.910798"
inkscape:cy="53.753308"
inkscape:window-width="1536"
inkscape:window-height="779"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="layer3"
units="px"
inkscape:showpageshadow="2"
inkscape:deskcolor="#505050">
<inkscape:grid
type="xygrid"
id="grid10" />
</sodipodi:namedview>
<defs id="defs2" />
<g
inkscape:groupmode="layer"
id="layer2"
inkscape:label="ref"
style="display:none">
<image
width="33.866665"
height="33.866665"
preserveAspectRatio="none"
style="display:none;fill:#313131;fill-opacity:1;stroke:none;image-rendering:optimizeQuality"
xlink:href="../original/blobfox.png"
id="image80"
x="0"
y="0"
inkscape:label="blobfox" />
<image
width="35.568115"
height="35.568115"
preserveAspectRatio="none"
style="image-rendering:optimizeSpeed"
xlink:href="../original/blobfoxreachaww.png"
id="image2154"
x="-1.6206435"
y="-1.8984466"
inkscape:label="blobfoxreachaww" />
</g>
<g
inkscape:label="Base"
inkscape:groupmode="layer"
id="layer1"
style="display:inline">
<path
id="body"
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.4501"
d="M 8.2074116,8.4126526 C 5.0913797,9.6496164 0.4041473,15.466063 0,25.134999 c 0,0 0.03851,2.124914 0.5829101,3.792016 1.4993074,1.718181 5.5005282,4.054899 10.6830689,4.70824 4.995668,0.629782 11.407069,-0.117981 15.429032,-1.02216 4.021965,-0.904179 6.039482,-3.513558 6.301425,-4.182173 0.261937,-0.668616 0.02856,-2.042628 -0.147797,-2.629814 -0.214802,-0.71519 -0.544671,-1.660976 -0.105418,-2.94969 C 33.182472,21.562704 34.115718,16.337933 32.130917,12.6127 28.259445,4.8114773 16.226603,5.2292932 8.2074116,8.4126526 Z"
sodipodi:nodetypes="sccssssscs"
inkscape:label="body" />
<path
style="fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 4.3137226,11.778813 C 1.9838307,6.3895666 2.145295,1.2059319 2.6452072,0.51782863 3.0391093,-0.02435716 3.3041475,-0.15736443 3.9502132,0.20050729 4.7128691,0.62296126 7.6810801,3.5307571 11.56213,6.108751 13.240321,7.223492 9.2628811,6.8913037 11.377083,7.6729166 7.6803703,7.9244796 6.2213245,9.6296562 4.3137226,11.778813 Z"
id="left-ear"
sodipodi:nodetypes="cssscc"
inkscape:label="left-ear" />
<path
id="hair"
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.4501"
d="M 11.377083,2.91 C 12.292433,4.7691551 12.5655,5.0594456 14.022916,6.87875 11.641667,5.5558333 9.136393,6.238479 8.07806,6.7676456 10.151048,7.1605077 10.449443,7.3377486 11.377083,7.6725 14.462128,8.7857796 17.25774,10.030627 19.911704,8.4803466 21.209819,7.7220691 23.693263,6.1378025 22.490617,5.521727 20.910675,4.7123751 19.838056,4.0335486 18.732706,3.5647403 18.834047,4.2785158 19.041575,4.8238358 19.283577,5.6648705 17.304617,4.3515344 15.100816,3.3140553 11.377083,2.91 Z"
sodipodi:nodetypes="cccsssccc"
inkscape:label="hair" />
<path
style="display:inline;fill:#ebdccc;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 31.870065,0.89136862 c 2.484943,0.0611907 0.664265,7.56804148 -0.509611,9.14994438 -1.173877,1.581904 -0.831551,4.245863 -1.354667,4.404248 -0.707644,-0.825525 -0.707787,-2.595852 -0.717551,-4.150112 -0.760031,0.341959 -2.089885,0.741869 -3.258009,0.409179 0.287592,-0.78609 0.653321,-1.9632947 0.948986,-2.908956 -0.481311,0.1872691 -1.564135,0.4426682 -2.855349,0.6028707 1.157455,-2.334176 5.261258,-7.5683648 7.746201,-7.50717408 z"
id="right-ear-fluff"
inkscape:label="right-ear-fluff"
sodipodi:nodetypes="sscccccs" />
<path
id="right-ear"
style="fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.4501"
inkscape:label="right-ear"
d="M 32.314823 0.13797607 C 32.186358 0.13371205 32.047151 0.14054812 31.896244 0.15916341 C 29.481744 0.45700807 24.510554 2.4015901 20.504692 7.9390503 C 21.104804 8.2945127 21.767566 8.4989786 22.423437 8.5684692 C 22.660522 8.5774639 22.905307 8.5653735 23.15931 8.5307454 C 23.48473 8.4863812 23.850486 8.4391805 24.23418 8.3845011 C 25.176137 8.0643719 25.920789 7.3874074 26.158093 6.3686035 C 26.680708 4.1248993 27.916356 3.3628118 28.864388 2.4287923 C 29.812421 1.494773 32.213807 0.50948616 32.627983 1.2273153 C 33.042158 1.9451442 32.700197 5.7187083 32.321025 7.1142944 C 31.422363 9.611044 29.85352 11.13425 29.94856 13.817244 C 29.956771 14.049056 29.962604 14.265947 30.000753 14.449247 C 30.053012 14.518359 30.109453 14.585347 30.170251 14.649235 C 30.916656 15.433578 31.456422 14.468469 31.802193 13.566614 C 31.906456 13.289794 32.012578 12.993592 32.130855 12.613184 C 33.122118 9.425044 33.674589 5.3875339 33.719389 3.5863444 C 33.741316 2.7047623 34.241807 0.20193647 32.314823 0.13797607 z " />
<path
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:#313131;stroke-width:1.11137;stroke-linecap:round;stroke-opacity:1"
d="m 25.046868,29.73072 c -1.996046,-1.43053 -2.72569,-4.187008 -2.780806,-5.18828 -0.03437,-0.624318 0.15189,-1.81594 1.167736,-1.987103 1.543555,-0.260079 4.052911,1.127235 5.469466,3.045398"
id="right-hand"
sodipodi:nodetypes="cssc"
inkscape:label="right-hand" />
<path
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:#313131;stroke-width:1.11137;stroke-linecap:round;stroke-opacity:1"
d="M 5.3852594,21.745188 C 3.8676069,19.925382 1.7197062,18.767913 0.59425394,18.831864 c -0.74574139,0.04237 -1.73644154,0.555339 -1.70383404,1.78787 0.032601,1.232281 0.71537941,3.212843 2.9601095,5.073686"
id="left-hand"
sodipodi:nodetypes="cssc"
inkscape:label="left-hand" />
</g>
<g
inkscape:groupmode="layer"
id="layer3"
inkscape:label="Features">
<g
id="right-eye"
inkscape:label="right-eye">
<path
style="display:inline;fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.46432"
d="m 18.821195,16.191592 c 0.0069,-1.813998 1.531479,-3.093615 3.091394,-3.033287 1.493144,0.05775 2.829012,0.966077 2.83543,2.763625 0.0067,1.884196 -1.272872,3.155228 -2.961041,3.17048 -1.504527,0.01359 -2.972957,-1.018363 -2.965783,-2.900818 z"
id="path22173-3"
sodipodi:nodetypes="sssss"
inkscape:label="pupil" />
<path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 20.674397,14.215889 c 0.508352,-0.363231 1.399535,-0.613604 1.892136,-0.003 0.492602,0.610567 0.179535,1.488101 -0.569282,1.861258 -0.764929,0.381186 -1.590423,0.427179 -1.90885,-0.213573 -0.318427,-0.640751 0.112788,-1.306526 0.585996,-1.644647 z"
id="path2500"
sodipodi:nodetypes="ssssss"
inkscape:label="top-refl" />
<path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 22.375344,17.21694 c 0.512878,-0.268199 0.863909,-0.715028 1.195282,-0.366907 0.363089,0.38144 -0.03421,1.007593 -0.549866,1.285796 -0.515653,0.278203 -1.426674,0.32325 -1.559971,-0.14029 -0.157306,-0.547032 0.343627,-0.480044 0.914555,-0.778599 z"
id="path2502"
sodipodi:nodetypes="sssss"
inkscape:label="bottom-refl" />
</g>
<g
id="left-eye"
inkscape:label="left-eye"
transform="translate(-12.395816,-1.9414121)">
<path
style="display:inline;fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.46432"
d="m 18.821195,16.191592 c 0.0069,-1.813998 1.531479,-3.093615 3.091394,-3.033287 1.493144,0.05775 2.829012,0.966077 2.83543,2.763625 0.0067,1.884196 -1.272872,3.155228 -2.961041,3.17048 -1.504527,0.01359 -2.972957,-1.018363 -2.965783,-2.900818 z"
id="path3139"
sodipodi:nodetypes="sssss"
inkscape:label="pupil" />
<path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 20.674397,14.215889 c 0.508352,-0.363231 1.399535,-0.613604 1.892136,-0.003 0.492602,0.610567 0.179535,1.488101 -0.569282,1.861258 -0.764929,0.381186 -1.590423,0.427179 -1.90885,-0.213573 -0.318427,-0.640751 0.112788,-1.306526 0.585996,-1.644647 z"
id="path3141"
sodipodi:nodetypes="ssssss"
inkscape:label="top-refl" />
<path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 22.375344,17.21694 c 0.512878,-0.268199 0.863909,-0.715028 1.195282,-0.366907 0.363089,0.38144 -0.03421,1.007593 -0.549866,1.285796 -0.515653,0.278203 -1.426674,0.32325 -1.559971,-0.14029 -0.157306,-0.547032 0.343627,-0.480044 0.914555,-0.778599 z"
id="path3143"
sodipodi:nodetypes="sssss"
inkscape:label="bottom-refl" />
</g>
<path
style="fill:none;fill-opacity:1;stroke:#313131;stroke-width:1.165;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 8.9038328,21.207191 C 8.4154886,20.200027 8.4083857,19.210862 9.0434442,18.546508 9.6785027,17.882154 10.898829,17.208363 11.547921,15.199472"
id="nose-outline"
sodipodi:nodetypes="csc"
inkscape:label="nose-outline" />
<path
style="fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 10.675849,19.175188 c 0.955611,-0.521313 3.849322,-0.706251 4.516746,0.681514 0.106717,0.221894 -1.618122,1.890181 -2.674108,1.887838 -1.02104,-0.0023 -2.08232,-2.438598 -1.842638,-2.569352 z"
id="nose"
sodipodi:nodetypes="ssss"
inkscape:label="nose" />
<path
style="fill:none;stroke:#313131;stroke-width:1.165;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 8.0248092,22.612995 c 0.548615,1.686713 1.0637781,2.752111 1.5767164,3.423841 0.9923844,-0.828422 2.2592704,-1.977918 2.7613864,-2.480155 0.783749,1.274883 1.856673,2.745088 2.294365,3.345841 1.285631,-1.024786 2.518532,-2.115492 3.025709,-2.688925"
id="mouth"
sodipodi:nodetypes="ccccc"
inkscape:label="mouth" />
</g>
<metadata
id="metadata30760"><rdf:RDF><cc:Work
rdf:about=""><dc:rights><cc:Agent><dc:title>Blobfox team (https://git.shadamethyst.xyz/adri326/blobfox), licensed under the Apache 2.0 License</dc:title></cc:Agent></dc:rights><dc:title>blobfox_reach_aww</dc:title><dc:creator><cc:Agent><dc:title>Feuerfuchs</dc:title></cc:Agent></dc:creator><dc:source>https://git.shadamethyst.xyz/adri326/blobfox</dc:source><dc:contributor><cc:Agent><dc:title>Shad Amethyst</dc:title></cc:Agent></dc:contributor></cc:Work></rdf:RDF>
</metadata>
</svg>

After

Width:  |  Height:  |  Size: 12 KiB

@ -1 +1,2 @@
# Add options in here as needs be
name = "blobfox"

@ -1,7 +1,7 @@
<g id="base">
{{#base}}body{{/base}}
{{#base}}left-ear{{/base}}
{{#base}}hair{{/base}}
{{#base}}right-ear{{/base}}
{{#base}}right-ear-fluff{{/base}}
{{#base}}#body{{/base}}
{{#base}}#left-ear{{/base}}
{{#base}}#hair{{/base}}
{{#base}}#right-ear{{/base}}
{{#base}}#right-ear-fluff{{/base}}
</g>

@ -0,0 +1,4 @@
<g id="eyes-aww">
{{#reach_aww}}#left-eye{{/reach_aww}}
{{#reach_aww}}#right-eye{{/reach_aww}}
</g>

@ -1,4 +1,4 @@
<g id="eyes">
{{#base}}left-eye{{/base}}
{{#base}}right-eye{{/base}}
{{#base}}#left-eye{{/base}}
{{#base}}#right-eye{{/base}}
</g>

@ -0,0 +1,4 @@
<g id="hands-reach">
{{#reach_aww}}#left-hand{{/reach_aww}}
{{#reach_aww}}#right-hand{{/reach_aww}}
</g>

@ -1,2 +1,3 @@
<svg width="128" height="128" viewBox="0 0 33.866668 33.866668">
<title>{{variant_name}}</title>
<g id="main">

Before

Width:  |  Height:  |  Size: 101 B

After

Width:  |  Height:  |  Size: 119 B

@ -1 +1 @@
{{#base}}mouth{{/base}}
{{#base}}#mouth{{/base}}

@ -0,0 +1,4 @@
<g id="nose-aww">
{{#base}}#nose{{/base}}
{{#reach_aww}}#nose-outline{{/reach_aww}}
</g>

@ -1,4 +1,4 @@
<g id="nose">
{{#base}}nose-outline{{/base}}
{{#base}}nose{{/base}}
{{#base}}#nose-outline{{/base}}
{{#base}}#nose{{/base}}
</g>

@ -1,6 +1,10 @@
{{>header}}
{{>base}}
{{>eyes}}
{{>nose}}
{{>mouth-w}}
<g id="body">
{{>base}}
</g>
<g id="features">
{{>eyes}}
{{>nose}}
{{>mouth-w}}
</g>
{{>footer}}

@ -0,0 +1,10 @@
{{>header}}
<g id="body">
{{>base}}
</g>
<g id="features">
{{>eyes-aww}}
{{>nose-aww}}
{{>mouth-w}}
</g>
{{>footer}}

@ -0,0 +1,11 @@
{{>header}}
<g id="body">
{{>base}}
{{>hands-reach}}
</g>
<g id="features">
{{>eyes}}
{{>nose}}
{{>mouth-w}}
</g>
{{>footer}}

@ -0,0 +1,11 @@
{{>header}}
<g id="body">
{{>base}}
{{>hands-reach}}
</g>
<g id="features">
{{>eyes-aww}}
{{>nose-aww}}
{{>mouth-w}}
</g>
{{>footer}}

@ -1,4 +1,6 @@
use std::sync::Arc;
use clap::Parser;
use std::path::PathBuf;
pub mod parse;
use parse::*;
@ -7,10 +9,56 @@ pub mod template;
use template::*;
fn main() {
let species = Arc::new(dbg!(load_species("species/blobfox")).unwrap());
let args = Args::parse();
let species = Arc::new(load_species(args.decl).unwrap());
let context = RenderingContext::new(species);
let template = context.compile("species/blobfox/variants/base.svg").unwrap();
let rendered = template.render_data_to_string(&context.get_data()).unwrap();
println!("{}", rendered);
std::fs::write("./test.svg", rendered).unwrap();
let output_dir = args.output_dir.unwrap_or(PathBuf::from("output/vector/"));
mkdirp::mkdirp(output_dir.clone()).unwrap();
if args.names.is_empty() {
for name in context.species().variants.keys() {
generate_variant(&context, name, &output_dir);
}
} else {
for name in args.names.iter() {
generate_variant(&context, name, &output_dir);
}
}
}
fn generate_variant(context: &RenderingContext, name: &str, output_dir: &PathBuf) {
if let Some(path) = context.species().variants.get(name) {
match context.compile(path).and_then(|template| {
template.render_data_to_string(&context.get_data())
}) {
Ok(rendered) => {
let output = output_dir.join(&format!("{}_{}.svg", context.species().name, name));
std::fs::write(output, rendered).unwrap();
}
Err(err) => {
eprintln!("Error while rendering {}: {}", name, err);
}
}
} else {
eprintln!("No variant named {}!", name);
}
}
#[derive(Parser, Debug)]
#[clap(author, version, about, long_about = None)]
struct Args {
/// A folder containing the declaration from which the emotes should be generated
#[clap(short, long, value_parser)]
decl: PathBuf,
/// List of the emote names to export
#[clap(value_parser)]
names: Vec<String>,
/// Output directory
#[clap(short, long, value_parser)]
output_dir: Option<PathBuf>,
}

@ -1,4 +1,4 @@
use xmltree::{XMLNode, Element};
use xmltree::{Element};
use serde::{Serialize, Deserialize};
use std::path::{PathBuf, Path};
use std::collections::HashMap;
@ -28,6 +28,9 @@ pub struct SpeciesDecl {
/// Imports xml and svg files from this folder if they aren't found
pub base: Option<PathBuf>,
/// The name of the species
pub name: String,
#[serde(skip)]
pub templates: HashMap<String, PathBuf>,

@ -111,6 +111,10 @@ impl RenderingContext {
None
}
}
pub fn species(&self) -> Arc<SpeciesDecl> {
Arc::clone(&self.species)
}
}
impl PartialLoader for RenderingContext {
@ -133,11 +137,13 @@ pub fn query_selector(svg: Element, pattern: &str) -> Option<Element> {
for child in svg.children {
if let XMLNode::Element(child) = child {
if child.attributes.get("id").map(|id| id == pattern).unwrap_or(false) {
return Some(child);
} else if child.children.len() > 0 {
if let Some(res) = query_selector(child, pattern) {
return Some(res);
if let ("#", pattern_id) = pattern.split_at(1) {
if child.attributes.get("id").map(|id| id == pattern_id).unwrap_or(false) {
return Some(child);
} else if child.children.len() > 0 {
if let Some(res) = query_selector(child, pattern) {
return Some(res);
}
}
}
}
@ -152,7 +158,7 @@ pub fn xml_to_string(element: Element) -> Option<String> {
config.perform_indent = true;
config.write_document_declaration = false;
element.write_with_config(&mut s, config);
element.write_with_config(&mut s, config).ok()?;
String::from_utf8(s).ok()
}

@ -2,159 +2,193 @@
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="128"
height="128"
viewBox="0 0 33.866668 33.866668"
version="1.1"
id="svg5"
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
sodipodi:docname="blobfox_reach_aww.svg"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"><title
id="title30762">blobfox_reach_aww</title><sodipodi:namedview
id="namedview7"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:pageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:document-units="mm"
showgrid="false"
inkscape:zoom="3.7207012"
inkscape:cx="73.910798"
inkscape:cy="53.753308"
inkscape:window-width="1536"
inkscape:window-height="779"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="layer3"
units="px"
inkscape:showpageshadow="2"
inkscape:deskcolor="#505050"><inkscape:grid
type="xygrid"
id="grid10" /></sodipodi:namedview><defs
id="defs2" /><g
inkscape:groupmode="layer"
id="layer2"
inkscape:label="ref"
style="display:none"><image
width="33.866665"
height="33.866665"
preserveAspectRatio="none"
style="display:none;fill:#313131;fill-opacity:1;stroke:none;image-rendering:optimizeQuality"
xlink:href="../original/blobfox.png"
id="image80"
x="0"
y="0"
inkscape:label="blobfox" /><image
width="35.568115"
height="35.568115"
preserveAspectRatio="none"
style="image-rendering:optimizeSpeed"
xlink:href="../original/blobfoxreachaww.png"
id="image2154"
x="-1.6206435"
y="-1.8984466"
inkscape:label="blobfoxreachaww" /></g><g
inkscape:label="Base"
inkscape:groupmode="layer"
id="layer1"
style="display:inline"><path
id="path117-3"
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.4501"
d="M 8.2074116,8.4126526 C 5.0913797,9.6496164 0.4041473,15.466063 0,25.134999 c 0,0 0.03851,2.124914 0.5829101,3.792016 1.4993074,1.718181 5.5005282,4.054899 10.6830689,4.70824 4.995668,0.629782 11.407069,-0.117981 15.429032,-1.02216 4.021965,-0.904179 6.039482,-3.513558 6.301425,-4.182173 0.261937,-0.668616 0.02856,-2.042628 -0.147797,-2.629814 -0.214802,-0.71519 -0.544671,-1.660976 -0.105418,-2.94969 C 33.182472,21.562704 34.115718,16.337933 32.130917,12.6127 28.259445,4.8114773 16.226603,5.2292932 8.2074116,8.4126526 Z"
sodipodi:nodetypes="sccssssscs"
inkscape:label="body" /><path
style="fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 4.3137226,11.778813 C 1.9838307,6.3895666 2.145295,1.2059319 2.6452072,0.51782863 3.0391093,-0.02435716 3.3041475,-0.15736443 3.9502132,0.20050729 4.7128691,0.62296126 7.6810801,3.5307571 11.56213,6.108751 13.240321,7.223492 9.2628811,6.8913037 11.377083,7.6729166 7.6803703,7.9244796 6.2213245,9.6296562 4.3137226,11.778813 Z"
id="path20678"
sodipodi:nodetypes="cssscc"
inkscape:label="left-ear" /><path
id="path117-7"
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.4501"
d="M 11.377083,2.91 C 12.292433,4.7691551 12.5655,5.0594456 14.022916,6.87875 11.641667,5.5558333 9.136393,6.238479 8.07806,6.7676456 10.151048,7.1605077 10.449443,7.3377486 11.377083,7.6725 14.462128,8.7857796 17.25774,10.030627 19.911704,8.4803466 21.209819,7.7220691 23.693263,6.1378025 22.490617,5.521727 20.910675,4.7123751 19.838056,4.0335486 18.732706,3.5647403 18.834047,4.2785158 19.041575,4.8238358 19.283577,5.6648705 17.304617,4.3515344 15.100816,3.3140553 11.377083,2.91 Z"
sodipodi:nodetypes="cccsssccc"
inkscape:label="hair" /><path
style="display:inline;fill:#ebdccc;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 31.870065,0.89136862 c 2.484943,0.0611907 0.664265,7.56804148 -0.509611,9.14994438 -1.173877,1.581904 -0.831551,4.245863 -1.354667,4.404248 -0.707644,-0.825525 -0.707787,-2.595852 -0.717551,-4.150112 -0.760031,0.341959 -2.089885,0.741869 -3.258009,0.409179 0.287592,-0.78609 0.653321,-1.9632947 0.948986,-2.908956 -0.481311,0.1872691 -1.564135,0.4426682 -2.855349,0.6028707 1.157455,-2.334176 5.261258,-7.5683648 7.746201,-7.50717408 z"
id="path18942"
inkscape:label="right-ear-fluff"
sodipodi:nodetypes="sscccccs" /><path
id="path14428"
style="fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.4501"
inkscape:label="right-ear"
d="M 32.314823 0.13797607 C 32.186358 0.13371205 32.047151 0.14054812 31.896244 0.15916341 C 29.481744 0.45700807 24.510554 2.4015901 20.504692 7.9390503 C 21.104804 8.2945127 21.767566 8.4989786 22.423437 8.5684692 C 22.660522 8.5774639 22.905307 8.5653735 23.15931 8.5307454 C 23.48473 8.4863812 23.850486 8.4391805 24.23418 8.3845011 C 25.176137 8.0643719 25.920789 7.3874074 26.158093 6.3686035 C 26.680708 4.1248993 27.916356 3.3628118 28.864388 2.4287923 C 29.812421 1.494773 32.213807 0.50948616 32.627983 1.2273153 C 33.042158 1.9451442 32.700197 5.7187083 32.321025 7.1142944 C 31.422363 9.611044 29.85352 11.13425 29.94856 13.817244 C 29.956771 14.049056 29.962604 14.265947 30.000753 14.449247 C 30.053012 14.518359 30.109453 14.585347 30.170251 14.649235 C 30.916656 15.433578 31.456422 14.468469 31.802193 13.566614 C 31.906456 13.289794 32.012578 12.993592 32.130855 12.613184 C 33.122118 9.425044 33.674589 5.3875339 33.719389 3.5863444 C 33.741316 2.7047623 34.241807 0.20193647 32.314823 0.13797607 z " /><path
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:#313131;stroke-width:1.11137;stroke-linecap:round;stroke-opacity:1"
d="m 25.046868,29.73072 c -1.996046,-1.43053 -2.72569,-4.187008 -2.780806,-5.18828 -0.03437,-0.624318 0.15189,-1.81594 1.167736,-1.987103 1.543555,-0.260079 4.052911,1.127235 5.469466,3.045398"
id="path4894"
sodipodi:nodetypes="cssc"
inkscape:label="right-hand" /><path
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:#313131;stroke-width:1.11137;stroke-linecap:round;stroke-opacity:1"
d="M 5.3852594,21.745188 C 3.8676069,19.925382 1.7197062,18.767913 0.59425394,18.831864 c -0.74574139,0.04237 -1.73644154,0.555339 -1.70383404,1.78787 0.032601,1.232281 0.71537941,3.212843 2.9601095,5.073686"
id="path4950"
sodipodi:nodetypes="cssc"
inkscape:label="left-hand" /></g><g
inkscape:groupmode="layer"
id="layer3"
inkscape:label="Features"><g
id="g3111"
inkscape:label="right-eye"><path
style="display:inline;fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.46432"
d="m 18.821195,16.191592 c 0.0069,-1.813998 1.531479,-3.093615 3.091394,-3.033287 1.493144,0.05775 2.829012,0.966077 2.83543,2.763625 0.0067,1.884196 -1.272872,3.155228 -2.961041,3.17048 -1.504527,0.01359 -2.972957,-1.018363 -2.965783,-2.900818 z"
id="path22173-3"
sodipodi:nodetypes="sssss"
inkscape:label="pupil" /><path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 20.674397,14.215889 c 0.508352,-0.363231 1.399535,-0.613604 1.892136,-0.003 0.492602,0.610567 0.179535,1.488101 -0.569282,1.861258 -0.764929,0.381186 -1.590423,0.427179 -1.90885,-0.213573 -0.318427,-0.640751 0.112788,-1.306526 0.585996,-1.644647 z"
id="path2500"
sodipodi:nodetypes="ssssss"
inkscape:label="top-refl" /><path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 22.375344,17.21694 c 0.512878,-0.268199 0.863909,-0.715028 1.195282,-0.366907 0.363089,0.38144 -0.03421,1.007593 -0.549866,1.285796 -0.515653,0.278203 -1.426674,0.32325 -1.559971,-0.14029 -0.157306,-0.547032 0.343627,-0.480044 0.914555,-0.778599 z"
id="path2502"
sodipodi:nodetypes="sssss"
inkscape:label="bottom-refl" /></g><g
id="g3145"
inkscape:label="left-eye"
transform="translate(-12.395816,-1.9414121)"><path
style="display:inline;fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.46432"
d="m 18.821195,16.191592 c 0.0069,-1.813998 1.531479,-3.093615 3.091394,-3.033287 1.493144,0.05775 2.829012,0.966077 2.83543,2.763625 0.0067,1.884196 -1.272872,3.155228 -2.961041,3.17048 -1.504527,0.01359 -2.972957,-1.018363 -2.965783,-2.900818 z"
id="path3139"
sodipodi:nodetypes="sssss"
inkscape:label="pupil" /><path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 20.674397,14.215889 c 0.508352,-0.363231 1.399535,-0.613604 1.892136,-0.003 0.492602,0.610567 0.179535,1.488101 -0.569282,1.861258 -0.764929,0.381186 -1.590423,0.427179 -1.90885,-0.213573 -0.318427,-0.640751 0.112788,-1.306526 0.585996,-1.644647 z"
id="path3141"
sodipodi:nodetypes="ssssss"
inkscape:label="top-refl" /><path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 22.375344,17.21694 c 0.512878,-0.268199 0.863909,-0.715028 1.195282,-0.366907 0.363089,0.38144 -0.03421,1.007593 -0.549866,1.285796 -0.515653,0.278203 -1.426674,0.32325 -1.559971,-0.14029 -0.157306,-0.547032 0.343627,-0.480044 0.914555,-0.778599 z"
id="path3143"
sodipodi:nodetypes="sssss"
inkscape:label="bottom-refl" /></g><path
style="fill:none;fill-opacity:1;stroke:#313131;stroke-width:1.165;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 8.9038328,21.207191 C 8.4154886,20.200027 8.4083857,19.210862 9.0434442,18.546508 9.6785027,17.882154 10.898829,17.208363 11.547921,15.199472"
id="path27175"
sodipodi:nodetypes="csc"
inkscape:label="nose-outline" /><path
style="fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 10.675849,19.175188 c 0.955611,-0.521313 3.849322,-0.706251 4.516746,0.681514 0.106717,0.221894 -1.618122,1.890181 -2.674108,1.887838 -1.02104,-0.0023 -2.08232,-2.438598 -1.842638,-2.569352 z"
id="path28517"
sodipodi:nodetypes="ssss"
inkscape:label="nose" /><path
style="fill:none;stroke:#313131;stroke-width:1.165;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 8.0248092,22.612995 c 0.548615,1.686713 1.0637781,2.752111 1.5767164,3.423841 0.9923844,-0.828422 2.2592704,-1.977918 2.7613864,-2.480155 0.783749,1.274883 1.856673,2.745088 2.294365,3.345841 1.285631,-1.024786 2.518532,-2.115492 3.025709,-2.688925"
id="path29369"
sodipodi:nodetypes="ccccc"
inkscape:label="mouth" /></g><metadata
id="metadata30760"><rdf:RDF><cc:Work
rdf:about=""><dc:rights><cc:Agent><dc:title>Blobfox team (https://git.shadamethyst.xyz/adri326/blobfox), licensed under the Apache 2.0 License</dc:title></cc:Agent></dc:rights><dc:title>blobfox_reach_aww</dc:title><dc:creator><cc:Agent><dc:title>Feuerfuchs</dc:title></cc:Agent></dc:creator><dc:source>https://git.shadamethyst.xyz/adri326/blobfox</dc:source><dc:contributor><cc:Agent><dc:title>Shad Amethyst</dc:title></cc:Agent></dc:contributor></cc:Work></rdf:RDF></metadata></svg>
width="128"
height="128"
viewBox="0 0 33.866668 33.866668"
version="1.1"
id="svg5"
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
sodipodi:docname="blobfox_reach_aww.svg"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<title id="title">blobfox_reach_aww</title>
<sodipodi:namedview
id="namedview7"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:pageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:document-units="mm"
showgrid="false"
inkscape:zoom="3.7207012"
inkscape:cx="73.910798"
inkscape:cy="53.753308"
inkscape:window-width="1536"
inkscape:window-height="779"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="layer3"
units="px"
inkscape:showpageshadow="2"
inkscape:deskcolor="#505050">
<inkscape:grid
type="xygrid"
id="grid10" />
</sodipodi:namedview>
<defs id="defs2" />
<g
inkscape:groupmode="layer"
id="layer2"
inkscape:label="ref"
style="display:none">
<image
width="33.866665"
height="33.866665"
preserveAspectRatio="none"
style="display:none;fill:#313131;fill-opacity:1;stroke:none;image-rendering:optimizeQuality"
xlink:href="../original/blobfox.png"
id="image80"
x="0"
y="0"
inkscape:label="blobfox" />
<image
width="35.568115"
height="35.568115"
preserveAspectRatio="none"
style="image-rendering:optimizeSpeed"
xlink:href="../original/blobfoxreachaww.png"
id="image2154"
x="-1.6206435"
y="-1.8984466"
inkscape:label="blobfoxreachaww" />
</g>
<g
inkscape:label="Base"
inkscape:groupmode="layer"
id="layer1"
style="display:inline">
<path
id="body"
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.4501"
d="M 8.2074116,8.4126526 C 5.0913797,9.6496164 0.4041473,15.466063 0,25.134999 c 0,0 0.03851,2.124914 0.5829101,3.792016 1.4993074,1.718181 5.5005282,4.054899 10.6830689,4.70824 4.995668,0.629782 11.407069,-0.117981 15.429032,-1.02216 4.021965,-0.904179 6.039482,-3.513558 6.301425,-4.182173 0.261937,-0.668616 0.02856,-2.042628 -0.147797,-2.629814 -0.214802,-0.71519 -0.544671,-1.660976 -0.105418,-2.94969 C 33.182472,21.562704 34.115718,16.337933 32.130917,12.6127 28.259445,4.8114773 16.226603,5.2292932 8.2074116,8.4126526 Z"
sodipodi:nodetypes="sccssssscs"
inkscape:label="body" />
<path
style="fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 4.3137226,11.778813 C 1.9838307,6.3895666 2.145295,1.2059319 2.6452072,0.51782863 3.0391093,-0.02435716 3.3041475,-0.15736443 3.9502132,0.20050729 4.7128691,0.62296126 7.6810801,3.5307571 11.56213,6.108751 13.240321,7.223492 9.2628811,6.8913037 11.377083,7.6729166 7.6803703,7.9244796 6.2213245,9.6296562 4.3137226,11.778813 Z"
id="left-ear"
sodipodi:nodetypes="cssscc"
inkscape:label="left-ear" />
<path
id="hair"
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.4501"
d="M 11.377083,2.91 C 12.292433,4.7691551 12.5655,5.0594456 14.022916,6.87875 11.641667,5.5558333 9.136393,6.238479 8.07806,6.7676456 10.151048,7.1605077 10.449443,7.3377486 11.377083,7.6725 14.462128,8.7857796 17.25774,10.030627 19.911704,8.4803466 21.209819,7.7220691 23.693263,6.1378025 22.490617,5.521727 20.910675,4.7123751 19.838056,4.0335486 18.732706,3.5647403 18.834047,4.2785158 19.041575,4.8238358 19.283577,5.6648705 17.304617,4.3515344 15.100816,3.3140553 11.377083,2.91 Z"
sodipodi:nodetypes="cccsssccc"
inkscape:label="hair" />
<path
style="display:inline;fill:#ebdccc;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 31.870065,0.89136862 c 2.484943,0.0611907 0.664265,7.56804148 -0.509611,9.14994438 -1.173877,1.581904 -0.831551,4.245863 -1.354667,4.404248 -0.707644,-0.825525 -0.707787,-2.595852 -0.717551,-4.150112 -0.760031,0.341959 -2.089885,0.741869 -3.258009,0.409179 0.287592,-0.78609 0.653321,-1.9632947 0.948986,-2.908956 -0.481311,0.1872691 -1.564135,0.4426682 -2.855349,0.6028707 1.157455,-2.334176 5.261258,-7.5683648 7.746201,-7.50717408 z"
id="right-ear-fluff"
inkscape:label="right-ear-fluff"
sodipodi:nodetypes="sscccccs" />
<path
id="right-ear"
style="fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.4501"
inkscape:label="right-ear"
d="M 32.314823 0.13797607 C 32.186358 0.13371205 32.047151 0.14054812 31.896244 0.15916341 C 29.481744 0.45700807 24.510554 2.4015901 20.504692 7.9390503 C 21.104804 8.2945127 21.767566 8.4989786 22.423437 8.5684692 C 22.660522 8.5774639 22.905307 8.5653735 23.15931 8.5307454 C 23.48473 8.4863812 23.850486 8.4391805 24.23418 8.3845011 C 25.176137 8.0643719 25.920789 7.3874074 26.158093 6.3686035 C 26.680708 4.1248993 27.916356 3.3628118 28.864388 2.4287923 C 29.812421 1.494773 32.213807 0.50948616 32.627983 1.2273153 C 33.042158 1.9451442 32.700197 5.7187083 32.321025 7.1142944 C 31.422363 9.611044 29.85352 11.13425 29.94856 13.817244 C 29.956771 14.049056 29.962604 14.265947 30.000753 14.449247 C 30.053012 14.518359 30.109453 14.585347 30.170251 14.649235 C 30.916656 15.433578 31.456422 14.468469 31.802193 13.566614 C 31.906456 13.289794 32.012578 12.993592 32.130855 12.613184 C 33.122118 9.425044 33.674589 5.3875339 33.719389 3.5863444 C 33.741316 2.7047623 34.241807 0.20193647 32.314823 0.13797607 z " />
<path
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:#313131;stroke-width:1.11137;stroke-linecap:round;stroke-opacity:1"
d="m 25.046868,29.73072 c -1.996046,-1.43053 -2.72569,-4.187008 -2.780806,-5.18828 -0.03437,-0.624318 0.15189,-1.81594 1.167736,-1.987103 1.543555,-0.260079 4.052911,1.127235 5.469466,3.045398"
id="right-hand"
sodipodi:nodetypes="cssc"
inkscape:label="right-hand" />
<path
style="display:inline;fill:#ff8702;fill-opacity:1;stroke:#313131;stroke-width:1.11137;stroke-linecap:round;stroke-opacity:1"
d="M 5.3852594,21.745188 C 3.8676069,19.925382 1.7197062,18.767913 0.59425394,18.831864 c -0.74574139,0.04237 -1.73644154,0.555339 -1.70383404,1.78787 0.032601,1.232281 0.71537941,3.212843 2.9601095,5.073686"
id="left-hand"
sodipodi:nodetypes="cssc"
inkscape:label="left-hand" />
</g>
<g
inkscape:groupmode="layer"
id="layer3"
inkscape:label="Features">
<g
id="right-eye"
inkscape:label="right-eye">
<path
style="display:inline;fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.46432"
d="m 18.821195,16.191592 c 0.0069,-1.813998 1.531479,-3.093615 3.091394,-3.033287 1.493144,0.05775 2.829012,0.966077 2.83543,2.763625 0.0067,1.884196 -1.272872,3.155228 -2.961041,3.17048 -1.504527,0.01359 -2.972957,-1.018363 -2.965783,-2.900818 z"
id="path22173-3"
sodipodi:nodetypes="sssss"
inkscape:label="pupil" />
<path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 20.674397,14.215889 c 0.508352,-0.363231 1.399535,-0.613604 1.892136,-0.003 0.492602,0.610567 0.179535,1.488101 -0.569282,1.861258 -0.764929,0.381186 -1.590423,0.427179 -1.90885,-0.213573 -0.318427,-0.640751 0.112788,-1.306526 0.585996,-1.644647 z"
id="path2500"
sodipodi:nodetypes="ssssss"
inkscape:label="top-refl" />
<path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 22.375344,17.21694 c 0.512878,-0.268199 0.863909,-0.715028 1.195282,-0.366907 0.363089,0.38144 -0.03421,1.007593 -0.549866,1.285796 -0.515653,0.278203 -1.426674,0.32325 -1.559971,-0.14029 -0.157306,-0.547032 0.343627,-0.480044 0.914555,-0.778599 z"
id="path2502"
sodipodi:nodetypes="sssss"
inkscape:label="bottom-refl" />
</g>
<g
id="left-eye"
inkscape:label="left-eye"
transform="translate(-12.395816,-1.9414121)">
<path
style="display:inline;fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.46432"
d="m 18.821195,16.191592 c 0.0069,-1.813998 1.531479,-3.093615 3.091394,-3.033287 1.493144,0.05775 2.829012,0.966077 2.83543,2.763625 0.0067,1.884196 -1.272872,3.155228 -2.961041,3.17048 -1.504527,0.01359 -2.972957,-1.018363 -2.965783,-2.900818 z"
id="path3139"
sodipodi:nodetypes="sssss"
inkscape:label="pupil" />
<path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 20.674397,14.215889 c 0.508352,-0.363231 1.399535,-0.613604 1.892136,-0.003 0.492602,0.610567 0.179535,1.488101 -0.569282,1.861258 -0.764929,0.381186 -1.590423,0.427179 -1.90885,-0.213573 -0.318427,-0.640751 0.112788,-1.306526 0.585996,-1.644647 z"
id="path3141"
sodipodi:nodetypes="ssssss"
inkscape:label="top-refl" />
<path
style="fill:#ffffff;stroke-width:0.264583;stroke-linecap:round"
d="m 22.375344,17.21694 c 0.512878,-0.268199 0.863909,-0.715028 1.195282,-0.366907 0.363089,0.38144 -0.03421,1.007593 -0.549866,1.285796 -0.515653,0.278203 -1.426674,0.32325 -1.559971,-0.14029 -0.157306,-0.547032 0.343627,-0.480044 0.914555,-0.778599 z"
id="path3143"
sodipodi:nodetypes="sssss"
inkscape:label="bottom-refl" />
</g>
<path
style="fill:none;fill-opacity:1;stroke:#313131;stroke-width:1.165;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 8.9038328,21.207191 C 8.4154886,20.200027 8.4083857,19.210862 9.0434442,18.546508 9.6785027,17.882154 10.898829,17.208363 11.547921,15.199472"
id="nose-outline"
sodipodi:nodetypes="csc"
inkscape:label="nose-outline" />
<path
style="fill:#313131;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 10.675849,19.175188 c 0.955611,-0.521313 3.849322,-0.706251 4.516746,0.681514 0.106717,0.221894 -1.618122,1.890181 -2.674108,1.887838 -1.02104,-0.0023 -2.08232,-2.438598 -1.842638,-2.569352 z"
id="nose"
sodipodi:nodetypes="ssss"
inkscape:label="nose" />
<path
style="fill:none;stroke:#313131;stroke-width:1.165;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 8.0248092,22.612995 c 0.548615,1.686713 1.0637781,2.752111 1.5767164,3.423841 0.9923844,-0.828422 2.2592704,-1.977918 2.7613864,-2.480155 0.783749,1.274883 1.856673,2.745088 2.294365,3.345841 1.285631,-1.024786 2.518532,-2.115492 3.025709,-2.688925"
id="mouth"
sodipodi:nodetypes="ccccc"
inkscape:label="mouth" />
</g>
<metadata
id="metadata30760"><rdf:RDF><cc:Work
rdf:about=""><dc:rights><cc:Agent><dc:title>Blobfox team (https://git.shadamethyst.xyz/adri326/blobfox), licensed under the Apache 2.0 License</dc:title></cc:Agent></dc:rights><dc:title>blobfox_reach_aww</dc:title><dc:creator><cc:Agent><dc:title>Feuerfuchs</dc:title></cc:Agent></dc:creator><dc:source>https://git.shadamethyst.xyz/adri326/blobfox</dc:source><dc:contributor><cc:Agent><dc:title>Shad Amethyst</dc:title></cc:Agent></dc:contributor></cc:Work></rdf:RDF>
</metadata>
</svg>

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Loading…
Cancel
Save