Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork1.8k
-
I have a lottie file where the "assets":[{"id":"image_0","w":2000,"h":2000,"u":"","p":"image_0.png","e":1},{"id":"image_1","w":2000,"h":2000,"u":"","p":"image_1.png","e":1},{"id":"image_2","w":2000,"h":2000,"u":"","p":"image_2.png","e":1},{"id":"image_3","w":2000,"h":2000,"u":"","p":"image_3.png","e":1},{"id":"image_4","w":2000,"h":2000,"u":"","p":"image_4.png","e":1},{"id":"image_5","w":2000,"h":2000,"u":"","p":"image_5.png","e":1},{"id":"image_6","w":2000,"h":2000,"u":"","p":"image_6.png","e":1},{"id":"image_7","w":2000,"h":2000,"u":"","p":"image_7.png","e":1},{"id":"image_8","w":2000,"h":2000,"u":"","p":"image_8.png","e":1},{"id":"image_9","w":2000,"h":2000,"u":"","p":"image_9.png","e":1},{"id":"image_10","w":2000,"h":2000,"u":"","p":"image_10.png","e":1},{"id":"image_11","w":2000,"h":2000,"u":"","p":"image_11.png","e":1},{"id":"image_12","w":2000,"h":2000,"u":"","p":"image_12.png","e":1},{"id":"image_13","w":2000,"h":2000,"u":"","p":"image_13.png","e":1},{"id":"image_14","w":2000,"h":2000,"u":"","p":"image_14.png","e":1},{"id":"image_15","w":2000,"h":2000,"u":"","p":"image_15.png","e":1},{"id":"image_16","w":2000,"h":2000,"u":"","p":"image_16.png","e":1},{"id":"image_17","w":2000,"h":2000,"u":"","p":"image_17.png","e":1},{"id":"image_18","w":2000,"h":2000,"u":"","p":"image_18.png","e":1},{"id":"image_19","w":2000,"h":2000,"u":"","p":"image_19.png","e":1},{"id":"image_20","w":2000,"h":2000,"u":"","p":"image_20.png","e":1},{"id":"image_21","w":2000,"h":2000,"u":"","p":"image_21.png","e":1},{"id":"image_22","w":2000,"h":2000,"u":"","p":"image_22.png","e":1},{"id":"image_23","w":2000,"h":2000,"u":"","p":"image_23.png","e":1}] I'd like to convert it to a file that includes the images as base64 so that I don't have to mess with native config. Is there a straightforward way to do that? |
BetaWas this translation helpful?Give feedback.
All reactions
Answered by iway1Feb 4, 2023
Was able to create a script for it - just replace thep
property with the base 64:
importfsfrom"node:fs";import{program}from"commander";program.option("-i, --injectFile <inject file>","Destination file").option("-s, --sourceDir <source directory>","Source directory").option("-o, --outputFile <output directory>","Inject file");typeOptionsType={injectFile?:string;sourceDir?:string;};typePartialLottieFile={assets:{p:string}[];};program.parse();constoptions=program.opts()asOptionsType;if(!(options.injectFile&&options.sourceDir))thrownewError("Pass all options plz.");constdir=fs.readdirSync(options.sourceDir);constoverw…
Replies: 1 comment
-
Was able to create a script for it - just replace the importfsfrom"node:fs";import{program}from"commander";program.option("-i, --injectFile <inject file>","Destination file").option("-s, --sourceDir <source directory>","Source directory").option("-o, --outputFile <output directory>","Inject file");typeOptionsType={injectFile?:string;sourceDir?:string;};typePartialLottieFile={assets:{p:string}[];};program.parse();constoptions=program.opts()asOptionsType;if(!(options.injectFile&&options.sourceDir))thrownewError("Pass all options plz.");constdir=fs.readdirSync(options.sourceDir);constoverwriteMap:{[fileName:string]:string}={};dir.forEach((e)=>{constr="data:image/png;base64,"+fs.readFileSync(`${options.sourceDir}/${e}`,{encoding:"base64"});overwriteMap[e]=r;});constlottieJson=JSON.parse(fs.readFileSync(options.injectFile).toString())asPartialLottieFile;lottieJson.assets=lottieJson.assets.map((e)=>{return{ ...e,p:overwriteMap[e.p]};});fs.writeFileSync(options.injectFile.replace(".json","_injected.json"),JSON.stringify(lottieJson)); |
BetaWas this translation helpful?Give feedback.
All reactions
0 replies
Answer selected byiway1
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment