Files
scraed-LanPaint/example_workflows/SD3.5_ImageEncode_Inpaint.json
T
scraed 59aa08dff0 Store masks inside exported videos and convert the example set to ImageEncode/ImageDecode
Mask-in-video (the masks now travel with the video file):
- New videometa module: write/read a JSON payload under the lanpaint-mask
  mp4 metadata tag via PyAV (stream copy, movflags=use_metadata_tags), so
  exporting produces a NEW file and the source is never modified.
- Two server routes: GET /lanpaint/video_mask_meta (read the payload back)
  and POST /lanpaint/export_mask_video (remux into input/<base>_masked.mp4).
- The mask editor exports the painted keyframes (base64 PNGs) + audio
  intervals into the video; loading a video with the tag auto-restores the
  masks (editor and node preview). A video without the tag clears the
  workflow's masks - the video is the source of truth. The export also
  offers a native save dialog (showSaveFilePicker) when available.
- The video widget upload now uses video_upload so MP4s are selectable in
  the file chooser (was image_upload).
- LanPaint_ImageEncode accepts 5D latents from video VAEs encoding a single
  image (e.g. the Hunyuan video VAE) - fixes the Hunyuan example.

Example set conversion (one example per supported model, new files, old
pairs removed after being superseded):
- New *ImageEncode/*EncodeDecode example workflows for SDXL, Flux.1,
  Flux.2 Dev, Flux2 Klein, SD3.5, Hunyuan, Ideogram4, Krea2, Qwen Edit,
  Qwen Image, Z-Image, Wan 2.2 and MiniMax H3 (AV), all using
  LanPaint_ImageEncode/ImageDecode instead of VAEEncode +
  SetLatentNoiseMask + VAEDecode + MaskBlend; every example references its
  own example folder's masked input (hash-verified); preview jpgs generated
  from the test runs; the H3 example ships its output mp4 as a preview.
- HiDream example removed on request; Example_29 added with the H3 masked
  input video.

Fixes along the way: normalize node input.link/output.links fields against
the links arrays in all converted workflows (the frontend renders
null-link nodes as disconnected); stale Inpainting_mode widget removed from
the Flux.2 sampler; Lambda defaults 5.0 (first-order scheme); torchaudio
resample test assertion relaxed (edge ringing); the videometa tests updated
to the final export signature.
2026-08-09 20:41:45 +08:00

1695 lines
23 KiB
JSON

{
"id": "11cce4ab-536b-4f42-a95c-0be437d04ace",
"revision": 0,
"last_node_id": 100,
"last_link_id": 273,
"nodes": [
{
"id": 57,
"type": "VAEDecode",
"pos": [
375.7364196777344,
1065.1798095703125
],
"size": [
210,
46
],
"flags": {},
"order": 21,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 132
},
{
"name": "vae",
"type": "VAE",
"link": 243
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"slot_index": 0,
"links": [
134
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "VAEDecode"
},
"widgets_values": []
},
{
"id": 62,
"type": "VAEDecode",
"pos": [
768.3919067382812,
1066.875244140625
],
"size": [
210,
46
],
"flags": {},
"order": 23,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 150
},
{
"name": "vae",
"type": "VAE",
"link": 246
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"slot_index": 0,
"links": [
153
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "VAEDecode"
},
"widgets_values": []
},
{
"id": 60,
"type": "VAEEncode",
"pos": [
-184.552734375,
1881.4002685546875
],
"size": [
210,
46
],
"flags": {},
"order": 9,
"mode": 0,
"inputs": [
{
"name": "pixels",
"type": "IMAGE",
"link": 141
},
{
"name": "vae",
"type": "VAE",
"link": 240
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
174
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "VAEEncode"
},
"widgets_values": []
},
{
"id": 70,
"type": "RepeatLatentBatch",
"pos": [
-293.03985595703125,
2005.1365966796875
],
"size": [
315,
58
],
"flags": {},
"order": 14,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 174
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
175
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "RepeatLatentBatch"
},
"widgets_values": [
4
]
},
{
"id": 59,
"type": "SetLatentNoiseMask",
"pos": [
59.09994125366211,
1895.3350830078125
],
"size": [
264.5999755859375,
46
],
"flags": {},
"order": 17,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 175
},
{
"name": "mask",
"type": "MASK",
"link": 144
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
145
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "SetLatentNoiseMask"
},
"widgets_values": []
},
{
"id": 92,
"type": "EmptySD3LatentImage",
"pos": [
393.2322692871094,
583.048828125
],
"size": [
315,
106
],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": []
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "EmptySD3LatentImage"
},
"widgets_values": [
1024,
1024,
1
]
},
{
"id": 93,
"type": "Reroute",
"pos": [
-119.7474365234375,
736.22412109375
],
"size": [
75,
26
],
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{
"name": "",
"type": "*",
"link": 247
}
],
"outputs": [
{
"name": "",
"type": "VAE",
"links": [
240,
242,
243,
246,
266,
270
]
}
],
"properties": {
"showOutputText": false,
"horizontal": false
}
},
{
"id": 90,
"type": "CLIPTextEncode",
"pos": [
289.5769958496094,
342.0919494628906
],
"size": [
432,
192
],
"flags": {},
"order": 7,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 235
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
252
]
}
],
"title": "Negative Prompt",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
""
],
"color": "#322",
"bgcolor": "#533"
},
{
"id": 95,
"type": "Reroute",
"pos": [
812.967529296875,
491.6490783691406
],
"size": [
75,
26
],
"flags": {},
"order": 12,
"mode": 0,
"inputs": [
{
"name": "",
"type": "*",
"link": 252
}
],
"outputs": [
{
"name": "",
"type": "CONDITIONING",
"links": [
253,
254,
255
]
}
],
"properties": {
"showOutputText": false,
"horizontal": false
}
},
{
"id": 94,
"type": "Reroute",
"pos": [
816.7250366210938,
315.13153076171875
],
"size": [
75,
26
],
"flags": {},
"order": 13,
"mode": 0,
"inputs": [
{
"name": "",
"type": "*",
"link": 251
}
],
"outputs": [
{
"name": "",
"type": "CONDITIONING",
"links": [
248,
249,
250
]
}
],
"properties": {
"showOutputText": false,
"horizontal": false
}
},
{
"id": 89,
"type": "CheckpointLoaderSimple",
"pos": [
-190.42303466796875,
486.09197998046875
],
"size": [
384.75592041015625,
98
],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"slot_index": 0,
"links": [
256
]
},
{
"name": "CLIP",
"type": "CLIP",
"slot_index": 1,
"links": []
},
{
"name": "VAE",
"type": "VAE",
"slot_index": 2,
"links": [
247
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "CheckpointLoaderSimple"
},
"widgets_values": [
"sd3.5_large.safetensors"
]
},
{
"id": 96,
"type": "Reroute",
"pos": [
258.5778503417969,
635.1219482421875
],
"size": [
75,
26
],
"flags": {},
"order": 5,
"mode": 0,
"inputs": [
{
"name": "",
"type": "*",
"link": 256
}
],
"outputs": [
{
"name": "",
"type": "MODEL",
"links": [
257,
258,
259
]
}
],
"properties": {
"showOutputText": false,
"horizontal": false
}
},
{
"id": 54,
"type": "VAEEncodeForInpaint",
"pos": [
491.6502380371094,
1924.27734375
],
"size": [
340.20001220703125,
98
],
"flags": {},
"order": 10,
"mode": 0,
"inputs": [
{
"name": "pixels",
"type": "IMAGE",
"link": 125
},
{
"name": "vae",
"type": "VAE",
"link": 242
},
{
"name": "mask",
"type": "MASK",
"link": 126
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
176
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "VAEEncodeForInpaint"
},
"widgets_values": [
0
]
},
{
"id": 71,
"type": "RepeatLatentBatch",
"pos": [
528.021728515625,
2073.6640625
],
"size": [
315,
58
],
"flags": {},
"order": 15,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 176
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
177
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "RepeatLatentBatch"
},
"widgets_values": [
4
]
},
{
"id": 63,
"type": "SaveImage",
"pos": [
719.3301391601562,
1155.3548583984375
],
"size": [
320.0124206542969,
493.46875
],
"flags": {},
"order": 26,
"mode": 4,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 153
}
],
"outputs": [],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23"
},
"widgets_values": [
"ComfyUI"
]
},
{
"id": 56,
"type": "SaveImage",
"pos": [
331.3768310546875,
1154.2471923828125
],
"size": [
311.2532653808594,
484.7096252441406
],
"flags": {},
"order": 24,
"mode": 4,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 134
}
],
"outputs": [],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23"
},
"widgets_values": [
"ComfyUI"
]
},
{
"id": 52,
"type": "LoadImage",
"pos": [
-248.0169219970703,
1121.7154541015625
],
"size": [
262.12347412109375,
487.22296142578125
],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"slot_index": 0,
"links": []
},
{
"name": "MASK",
"type": "MASK",
"slot_index": 1,
"links": []
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "LoadImage"
},
"widgets_values": [
"ComfyUI_05949_.png",
"image"
]
},
{
"id": 88,
"type": "TripleCLIPLoader",
"pos": [
-183.123779296875,
317.98052978515625
],
"size": [
315,
106
],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "CLIP",
"type": "CLIP",
"slot_index": 0,
"links": [
235,
236
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "TripleCLIPLoader"
},
"widgets_values": [
"clip_l_hidream.safetensors",
"clip_g_hidream.safetensors",
"t5xxl_fp8_e4m3fn_scaled.safetensors"
]
},
{
"id": 91,
"type": "CLIPTextEncode",
"pos": [
289.5769958496094,
102.09196472167969
],
"size": [
432,
192
],
"flags": {},
"order": 8,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 236
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
251
]
}
],
"title": "Positive Prompt",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"a bottle with a rainbow galaxy inside it on top of a wooden table on a snowy mountain top with the ocean and clouds in the background"
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 74,
"type": "LanPaint_KSampler",
"pos": [
1013.8515625,
251.58590698242188
],
"size": [
412.3423767089844,
572
],
"flags": {},
"order": 22,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 257
},
{
"name": "positive",
"type": "CONDITIONING",
"link": 248
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 253
},
{
"name": "latent_image",
"type": "LATENT",
"link": 268
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
269
]
}
],
"properties": {
"cnr_id": "LanPaint",
"ver": "56bd6c04e89124cd06682b304245d6ddf8b20522",
"Node name for S&R": "LanPaint_KSampler"
},
"widgets_values": [
0,
"fixed",
30,
5.5,
"euler",
"sgm_uniform",
1,
5,
"Image First",
"LanPaint KSampler. For more info, visit https://github.com/scraed/LanPaint. If you find it useful, please give a star ⭐️!"
]
},
{
"id": 48,
"type": "SaveImage",
"pos": [
1123.389892578125,
1188.722900390625
],
"size": [
311.2532653808594,
484.7096252441406
],
"flags": {},
"order": 27,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 273
}
],
"outputs": [],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23"
},
"widgets_values": [
"ComfyUI"
]
},
{
"id": 69,
"type": "RepeatLatentBatch",
"pos": [
364.2433166503906,
862.7393188476562
],
"size": [
315,
58
],
"flags": {},
"order": 16,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 267
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
268
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "RepeatLatentBatch"
},
"widgets_values": [
4
]
},
{
"id": 55,
"type": "KSampler",
"pos": [
897.1165161132812,
1900.3353271484375
],
"size": [
315,
474
],
"flags": {},
"order": 18,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 258
},
{
"name": "positive",
"type": "CONDITIONING",
"link": 249
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 254
},
{
"name": "latent_image",
"type": "LATENT",
"link": 177
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
132
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "KSampler"
},
"widgets_values": [
0,
"fixed",
30,
5.5,
"euler",
"sgm_uniform",
1
]
},
{
"id": 61,
"type": "KSampler",
"pos": [
49.68569564819336,
1998.5968017578125
],
"size": [
315,
474.0001220703125
],
"flags": {},
"order": 20,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 259
},
{
"name": "positive",
"type": "CONDITIONING",
"link": 250
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 255
},
{
"name": "latent_image",
"type": "LATENT",
"link": 145
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
150
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "KSampler"
},
"widgets_values": [
0,
"fixed",
30,
5.5,
"euler",
"sgm_uniform",
1
]
},
{
"id": 20,
"type": "LoadImage",
"pos": [
45.70227813720703,
1147.2928466796875
],
"size": [
262.12347412109375,
487.22296142578125
],
"flags": {},
"order": 4,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"slot_index": 0,
"links": [
125,
141,
264,
271
]
},
{
"name": "MASK",
"type": "MASK",
"slot_index": 1,
"links": [
126,
144,
265,
272
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.23",
"Node name for S&R": "LoadImage"
},
"widgets_values": [
"Example_9_Masked.png",
"image"
]
},
{
"id": 99,
"type": "LanPaint_ImageEncode",
"pos": [
198,
768
],
"size": [
210,
82
],
"flags": {},
"order": 11,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 264
},
{
"name": "vae",
"type": "VAE",
"link": 266
},
{
"name": "mask",
"type": "MASK",
"link": 265
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
267
]
}
],
"properties": {
"Node name for S&R": "LanPaint_ImageEncode"
},
"widgets_values": []
},
{
"id": 100,
"type": "LanPaint_ImageDecode",
"pos": [
1120,
1060
],
"size": [
210,
118
],
"flags": {},
"order": 25,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 269
},
{
"name": "vae",
"type": "VAE",
"link": 270
},
{
"name": "image",
"type": "IMAGE",
"link": 271
},
{
"name": "mask",
"type": "MASK",
"link": 272
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"slot_index": 0,
"links": [
273
]
}
],
"properties": {
"Node name for S&R": "LanPaint_ImageDecode"
},
"widgets_values": [
9
]
}
],
"links": [
[
125,
20,
0,
54,
0,
"IMAGE"
],
[
126,
20,
1,
54,
2,
"MASK"
],
[
132,
55,
0,
57,
0,
"LATENT"
],
[
134,
57,
0,
56,
0,
"IMAGE"
],
[
141,
20,
0,
60,
0,
"IMAGE"
],
[
144,
20,
1,
59,
1,
"MASK"
],
[
145,
59,
0,
61,
3,
"LATENT"
],
[
150,
61,
0,
62,
0,
"LATENT"
],
[
153,
62,
0,
63,
0,
"IMAGE"
],
[
174,
60,
0,
70,
0,
"LATENT"
],
[
175,
70,
0,
59,
0,
"LATENT"
],
[
176,
54,
0,
71,
0,
"LATENT"
],
[
177,
71,
0,
55,
3,
"LATENT"
],
[
235,
88,
0,
90,
0,
"CLIP"
],
[
236,
88,
0,
91,
0,
"CLIP"
],
[
240,
93,
0,
60,
1,
"VAE"
],
[
242,
93,
0,
54,
1,
"VAE"
],
[
243,
93,
0,
57,
1,
"VAE"
],
[
246,
93,
0,
62,
1,
"VAE"
],
[
247,
89,
2,
93,
0,
"*"
],
[
248,
94,
0,
74,
1,
"CONDITIONING"
],
[
249,
94,
0,
55,
1,
"CONDITIONING"
],
[
250,
94,
0,
61,
1,
"CONDITIONING"
],
[
251,
91,
0,
94,
0,
"*"
],
[
252,
90,
0,
95,
0,
"*"
],
[
253,
95,
0,
74,
2,
"CONDITIONING"
],
[
254,
95,
0,
55,
2,
"CONDITIONING"
],
[
255,
95,
0,
61,
2,
"CONDITIONING"
],
[
256,
89,
0,
96,
0,
"*"
],
[
257,
96,
0,
74,
0,
"MODEL"
],
[
258,
96,
0,
55,
0,
"MODEL"
],
[
259,
96,
0,
61,
0,
"MODEL"
],
[
264,
20,
0,
99,
0,
"IMAGE"
],
[
265,
20,
1,
99,
2,
"MASK"
],
[
266,
93,
0,
99,
1,
"VAE"
],
[
267,
99,
0,
69,
0,
"LATENT"
],
[
268,
69,
0,
74,
3,
"LATENT"
],
[
269,
74,
0,
100,
0,
"LATENT"
],
[
270,
93,
0,
100,
1,
"VAE"
],
[
271,
20,
0,
100,
2,
"IMAGE"
],
[
272,
20,
1,
100,
3,
"MASK"
],
[
273,
100,
0,
48,
0,
"IMAGE"
]
],
"groups": [
{
"id": 1,
"title": "Mask image for inpainting.",
"bounding": [
36.04227828979492,
989.7313232421875,
278.89093017578125,
669.3414916992188
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 2,
"title": "Convert Latents for LanPaint",
"bounding": [
286.0640563964844,
714.343505859375,
489.16796875,
197.81044006347656
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 3,
"title": "Load Model and Set Prompts",
"bounding": [
-78.9311294555664,
176.08712768554688,
1006.1721801757812,
514.258544921875
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 4,
"title": "Inpaint with the LanPaint KSampler",
"bounding": [
960.8922729492188,
179.17588806152344,
474.8909606933594,
630.4742431640625
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 5,
"title": "LanPaint OutPut",
"bounding": [
1085.6029052734375,
994.0775756835938,
345.4561767578125,
669.4969482421875
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 6,
"title": "Original Image",
"bounding": [
-263.5933837890625,
989.2400512695312,
297.57080078125,
670.1135864257812
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 7,
"title": "Comfy Original Inpaint: VAE Encode for inpainting",
"bounding": [
481.6502380371094,
1810.525390625,
757.8348388671875,
345.6000061035156
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 8,
"title": "Encode for InPainting OutPut",
"bounding": [
319.9195861816406,
991.5802612304688,
328.3387451171875,
669.1323852539062
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 9,
"title": "Latent Noise Mask OutPut",
"bounding": [
707.5668334960938,
990.3363037109375,
358.9906005859375,
661.2262573242188
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 10,
"title": "Comfy Original Inpaint: Latent Noise Mask",
"bounding": [
-185.77822875976562,
1807.8648681640625,
549.8079833984375,
482.0323791503906
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 11,
"title": "LanPaint",
"bounding": [
-262.59381103515625,
140.46656799316406,
1737.328857421875,
797.4443359375
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 12,
"title": "Baselines for Comparison, Delete them if you don't nee comparison",
"bounding": [
-256.9761047363281,
1733.4495849609375,
1582.3065185546875,
593.7572021484375
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
},
{
"id": 13,
"title": "Paste back the original to preserve it exactly, if you want",
"bounding": [
1486.6221923828125,
1002.1036987304688,
749.66455078125,
637.360595703125
],
"color": "#3f789e",
"font_size": 24,
"flags": {}
}
],
"config": {},
"extra": {
"ds": {
"scale": 0.7627768444385489,
"offset": [
-308.32243774693706,
-605.7385256990528
]
},
"frontendVersion": "1.20.6",
"node_versions": {
"comfy-core": "0.3.18",
"LanPaint": "0f509469ed2cd60c6032f739e282aad5dfc06166"
}
},
"version": 0.4
}