@imgly/codesign-mcp 0.1.5 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +51 -1
- package/assets/docs/guide/SKILL.md +45 -53
- package/assets/docs/guide/animation/create/base.md +234 -243
- package/assets/docs/guide/animation/create/text.md +250 -231
- package/assets/docs/guide/animation/create.md +197 -231
- package/assets/docs/guide/animation/edit.md +196 -271
- package/assets/docs/guide/animation/types.md +182 -185
- package/assets/docs/guide/animation.md +9 -6
- package/assets/docs/guide/api/AssetAPI.md +7 -53
- package/assets/docs/guide/api/BlockAPI.md +725 -648
- package/assets/docs/guide/api/CreativeEngine.md +7 -16
- package/assets/docs/guide/api/EditorAPI.md +32 -93
- package/assets/docs/guide/api/EventAPI.md +1 -2
- package/assets/docs/guide/api/SceneAPI.md +47 -98
- package/assets/docs/guide/api/VariableAPI.md +1 -4
- package/assets/docs/guide/api/node/classes/assetapi.md +1090 -0
- package/assets/docs/guide/api/node/classes/blockapi.md +12965 -0
- package/assets/docs/guide/api/node/classes/creativeengine.md +319 -0
- package/assets/docs/guide/api/node/classes/editorapi.md +3417 -0
- package/assets/docs/guide/api/node/classes/engineactions.md +319 -0
- package/assets/docs/guide/api/node/classes/eventapi.md +56 -0
- package/assets/docs/guide/api/node/classes/sceneapi.md +1370 -0
- package/assets/docs/guide/api/node/classes/variableapi.md +143 -0
- package/assets/docs/guide/api/node/enumerations/compressionformat.md +23 -0
- package/assets/docs/guide/api/node/enumerations/compressionlevel.md +24 -0
- package/assets/docs/guide/api/node/functions/iscmykcolor.md +30 -0
- package/assets/docs/guide/api/node/functions/isrgbacolor.md +30 -0
- package/assets/docs/guide/api/node/functions/isspotcolor.md +30 -0
- package/assets/docs/guide/api/node/interfaces/addvideooptions.md +31 -0
- package/assets/docs/guide/api/node/interfaces/applyassetoptions.md +31 -0
- package/assets/docs/guide/api/node/interfaces/asset.md +30 -0
- package/assets/docs/guide/api/node/interfaces/assetbooleanproperty.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetcmykcolor.md +26 -0
- package/assets/docs/guide/api/node/interfaces/assetcolorproperty.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetcontentaspectratio.md +23 -0
- package/assets/docs/guide/api/node/interfaces/assetdefinition.md +31 -0
- package/assets/docs/guide/api/node/interfaces/assetenumproperty.md +26 -0
- package/assets/docs/guide/api/node/interfaces/assetfixedaspectratio.md +24 -0
- package/assets/docs/guide/api/node/interfaces/assetfixedsize.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetfreeaspectratio.md +22 -0
- package/assets/docs/guide/api/node/interfaces/assetnumberproperty.md +28 -0
- package/assets/docs/guide/api/node/interfaces/assetpayload.md +27 -0
- package/assets/docs/guide/api/node/interfaces/assetquerydata.md +32 -0
- package/assets/docs/guide/api/node/interfaces/assetresult.md +46 -0
- package/assets/docs/guide/api/node/interfaces/assetrgbcolor.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetsource.md +111 -0
- package/assets/docs/guide/api/node/interfaces/assetspotcolor.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetsqueryresult.md +31 -0
- package/assets/docs/guide/api/node/interfaces/assetstringproperty.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetstylepreset.md +39 -0
- package/assets/docs/guide/api/node/interfaces/assetstylepresetanimation.md +23 -0
- package/assets/docs/guide/api/node/interfaces/audiotrackinfo.md +32 -0
- package/assets/docs/guide/api/node/interfaces/blockevent.md +26 -0
- package/assets/docs/guide/api/node/interfaces/blockstateerror.md +26 -0
- package/assets/docs/guide/api/node/interfaces/blockstatepending.md +26 -0
- package/assets/docs/guide/api/node/interfaces/blockstateready.md +25 -0
- package/assets/docs/guide/api/node/interfaces/buffer.md +26 -0
- package/assets/docs/guide/api/node/interfaces/characterinkbox.md +29 -0
- package/assets/docs/guide/api/node/interfaces/cmykcolor.md +34 -0
- package/assets/docs/guide/api/node/interfaces/completeassetresult.md +46 -0
- package/assets/docs/guide/api/node/interfaces/configuration.md +38 -0
- package/assets/docs/guide/api/node/interfaces/dominantcolor.md +25 -0
- package/assets/docs/guide/api/node/interfaces/dominantcolorsoptions.md +23 -0
- package/assets/docs/guide/api/node/interfaces/engineactioninfo.md +24 -0
- package/assets/docs/guide/api/node/interfaces/engineactionsregistry.md +18 -0
- package/assets/docs/guide/api/node/interfaces/engineplugin.md +30 -0
- package/assets/docs/guide/api/node/interfaces/font.md +27 -0
- package/assets/docs/guide/api/node/interfaces/fontmetrics.md +32 -0
- package/assets/docs/guide/api/node/interfaces/gradientcolorstop.md +28 -0
- package/assets/docs/guide/api/node/interfaces/logger.md +39 -0
- package/assets/docs/guide/api/node/interfaces/pageduration.md +23 -0
- package/assets/docs/guide/api/node/interfaces/range.md +23 -0
- package/assets/docs/guide/api/node/interfaces/rgbacolor.md +32 -0
- package/assets/docs/guide/api/node/interfaces/rgbcolor.md +30 -0
- package/assets/docs/guide/api/node/interfaces/settings.md +126 -0
- package/assets/docs/guide/api/node/interfaces/size2.md +21 -0
- package/assets/docs/guide/api/node/interfaces/source.md +24 -0
- package/assets/docs/guide/api/node/interfaces/spotcolor.md +30 -0
- package/assets/docs/guide/api/node/interfaces/textdecorationconfig.md +31 -0
- package/assets/docs/guide/api/node/interfaces/textfontsizeoptions.md +24 -0
- package/assets/docs/guide/api/node/interfaces/textruninfo.md +33 -0
- package/assets/docs/guide/api/node/interfaces/transientresource.md +26 -0
- package/assets/docs/guide/api/node/interfaces/typeface.md +23 -0
- package/assets/docs/guide/api/node/interfaces/vec2.md +21 -0
- package/assets/docs/guide/api/node/interfaces/vec3.md +22 -0
- package/assets/docs/guide/api/node/type-aliases/addimageoptions.md +36 -0
- package/assets/docs/guide/api/node/type-aliases/animationbaselinedirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationblockswipetextdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationeasing.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationentry.md +28 -0
- package/assets/docs/guide/api/node/type-aliases/animationgrowdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationjumploopdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationkenburnsdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationmergetextdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationoptions.md +28 -0
- package/assets/docs/guide/api/node/type-aliases/animationspindirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationspinloopdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationtype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/animationtypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/animationtypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationtypewritertextwritingstyle.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationwipedirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/applicationmimetype.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/assetcolor.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/assetfilter.md +47 -0
- package/assets/docs/guide/api/node/type-aliases/assetgroups.md +25 -0
- package/assets/docs/guide/api/node/type-aliases/assetmetadata.md +42 -0
- package/assets/docs/guide/api/node/type-aliases/assetproperty.md +25 -0
- package/assets/docs/guide/api/node/type-aliases/assetpropertyfilter.md +41 -0
- package/assets/docs/guide/api/node/type-aliases/assetpropertypath.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/assetstylepresetanimationproperties.md +34 -0
- package/assets/docs/guide/api/node/type-aliases/assetstylepresetproperties.md +29 -0
- package/assets/docs/guide/api/node/type-aliases/assetstylepresetpropertyvalue.md +29 -0
- package/assets/docs/guide/api/node/type-aliases/assetstylepresetscalableproperty.md +28 -0
- package/assets/docs/guide/api/node/type-aliases/assettransformpreset.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/asyncuriresolver.md +36 -0
- package/assets/docs/guide/api/node/type-aliases/audioexportoptions.md +43 -0
- package/assets/docs/guide/api/node/type-aliases/audiofromvideooptions.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/audiomimetype.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/blendmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/blockenumtype.md +63 -0
- package/assets/docs/guide/api/node/type-aliases/blockstate.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/blurtype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/blurtypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/blurtypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/booleanoperation.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/boolpropertyname.md +79 -0
- package/assets/docs/guide/api/node/type-aliases/cameraclampingovershootmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/captionhorizontalalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/captionverticalalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/cmyk.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/color.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/colorpickercolormode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/colorpropertyname.md +31 -0
- package/assets/docs/guide/api/node/type-aliases/colorspace.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/contentfillmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/controlgizmomovehandlevisibility.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/controlgizmoresizehandlesvisibility.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/controlgizmorotatehandlesvisibility.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/controlgizmoscalehandlesvisibility.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/createsceneoptions.md +30 -0
- package/assets/docs/guide/api/node/type-aliases/cutoutoperation.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/cutouttype.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/defaultassetsourceid.md +37 -0
- package/assets/docs/guide/api/node/type-aliases/demoassetsourceid.md +33 -0
- package/assets/docs/guide/api/node/type-aliases/designblockid.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/designblocktype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/designblocktypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/designblocktypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/designunit.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/doubleclickselectionmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/doublepropertyname.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/dropshadowoptions.md +32 -0
- package/assets/docs/guide/api/node/type-aliases/editmode.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/effecttype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/effecttypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/effecttypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/engineactionid.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/enginecustomactionfunction.md +30 -0
- package/assets/docs/guide/api/node/type-aliases/engineplugincontext.md +30 -0
- package/assets/docs/guide/api/node/type-aliases/enumpropertyname.md +59 -0
- package/assets/docs/guide/api/node/type-aliases/enumvalues.md +59 -0
- package/assets/docs/guide/api/node/type-aliases/exportoptions.md +57 -0
- package/assets/docs/guide/api/node/type-aliases/fillpixelstreamorientation.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/filltype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/filltypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/filltypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/floatpropertyname.md +184 -0
- package/assets/docs/guide/api/node/type-aliases/fontsizeunit.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/fontstyle.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/fontweight.md +30 -0
- package/assets/docs/guide/api/node/type-aliases/gradientstoprgba.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/heightmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/hexcolorstring.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/historyid.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/historyupdate.md +25 -0
- package/assets/docs/guide/api/node/type-aliases/horizontalblockalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/horizontalcontentfillalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/horizontaltextalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/imagemimetype.md +25 -0
- package/assets/docs/guide/api/node/type-aliases/intpropertyname.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/liststyle.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/locale.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/loglevel.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/mimetype.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/objecttype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/objecttypelonghand.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/objecttypeshorthand.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/optionalprefix.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/pageguidessource.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/palettecolor.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/positionmode.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/positionxmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/positionymode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/propertytype.md +31 -0
- package/assets/docs/guide/api/node/type-aliases/rgba.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/rolestring.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/scenefontsizeunit.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/scenelayout.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/scenemode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/scope.md +50 -0
- package/assets/docs/guide/api/node/type-aliases/settingboolpropertyname.md +62 -0
- package/assets/docs/guide/api/node/type-aliases/settingcolorpropertyname.md +38 -0
- package/assets/docs/guide/api/node/type-aliases/settingenumpropertyname.md +29 -0
- package/assets/docs/guide/api/node/type-aliases/settingenumtype.md +33 -0
- package/assets/docs/guide/api/node/type-aliases/settingenumvalues.md +29 -0
- package/assets/docs/guide/api/node/type-aliases/settingfloatpropertyname.md +25 -0
- package/assets/docs/guide/api/node/type-aliases/settingintpropertyname.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingkey.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/settingsbool.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingscolor.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/settingscolorrgba.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/settingsenum.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingsfloat.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingsint.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingsstring.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingstringpropertyname.md +28 -0
- package/assets/docs/guide/api/node/type-aliases/settingtype.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/settingvaluetype.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/shapetype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/shapetypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/shapetypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/shapevectorpathfillrule.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/sizemode.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/sortingorder.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/sourcesetpropertyname.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/splitoptions.md +28 -0
- package/assets/docs/guide/api/node/type-aliases/stringpropertyname.md +43 -0
- package/assets/docs/guide/api/node/type-aliases/strokecap.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokecornergeometry.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokedashendcap.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokedashstartcap.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokeendcap.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokeposition.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokestartcap.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokestyle.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/syncuriresolver.md +31 -0
- package/assets/docs/guide/api/node/type-aliases/textanimationwritingstyle.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/textcase.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/textdecorationline.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/textdecorationstyle.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/textverticalalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/timelinetrackvisibility.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/touchpinchaction.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/touchrotateaction.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/typefacedefinition.md +41 -0
- package/assets/docs/guide/api/node/type-aliases/verticalblockalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/verticalcontentfillalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/videoexportoptions.md +54 -0
- package/assets/docs/guide/api/node/type-aliases/videomimetype.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/widthmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/xywh.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/zoomautofitaxis.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/zoomoptions.md +27 -0
- package/assets/docs/guide/api/node/variables/animation_types.md +21 -0
- package/assets/docs/guide/api/node/variables/animationbaselinedirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationblockswipetextdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationeasingvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationgrowdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationjumploopdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationkenburnsdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationmergetextdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationspindirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationspinloopdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationtypewritertextwritingstylevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationwipedirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/blendmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/blur_types.md +21 -0
- package/assets/docs/guide/api/node/variables/cameraclampingovershootmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/captionhorizontalalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/captionverticalalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/colorpickercolormodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/contentfillmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/controlgizmomovehandlevisibilityvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/controlgizmoresizehandlesvisibilityvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/controlgizmorotatehandlesvisibilityvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/controlgizmoscalehandlesvisibilityvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/cutouttypevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/design_block_types.md +21 -0
- package/assets/docs/guide/api/node/variables/doubleclickselectionmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/effect_types.md +21 -0
- package/assets/docs/guide/api/node/variables/fill_types.md +21 -0
- package/assets/docs/guide/api/node/variables/fillpixelstreamorientationvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/heightmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/horizontalcontentfillalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/loglevel.md +37 -0
- package/assets/docs/guide/api/node/variables/mimetype.md +41 -0
- package/assets/docs/guide/api/node/variables/pageguidessourcevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/positionxmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/positionymodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/scenedesignunitvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/scenefontsizeunitvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/scenelayoutvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/scenemodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/shape_types.md +21 -0
- package/assets/docs/guide/api/node/variables/shapevectorpathfillrulevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokecapvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokecornergeometryvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokedashendcapvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokedashstartcapvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokeendcapvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokepositionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokestartcapvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokestylevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/textanimationwritingstylevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/texthorizontalalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/textverticalalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/timelinetrackvisibilityvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/touchpinchactionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/touchrotateactionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/verticalcontentfillalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/widthmodevalues.md +18 -0
- package/assets/docs/guide/api/types.md +5 -9
- package/assets/docs/guide/api-reference/overview.md +7 -7
- package/assets/docs/guide/automation/auto-resize.md +263 -300
- package/assets/docs/guide/automation/data-merge.md +246 -275
- package/assets/docs/guide/automation/design-generation.md +102 -31
- package/assets/docs/guide/automation/multi-image-generation.md +758 -0
- package/assets/docs/guide/automation/overview.md +21 -4
- package/assets/docs/guide/automation.md +10 -5
- package/assets/docs/guide/capabilities.md +6 -4
- package/assets/docs/guide/colors/adjust.md +247 -249
- package/assets/docs/guide/colors/apply.md +127 -138
- package/assets/docs/guide/colors/basics.md +126 -150
- package/assets/docs/guide/colors/conversion.md +171 -177
- package/assets/docs/guide/colors/create-color-palette.md +244 -245
- package/assets/docs/guide/colors/extract-colors.md +144 -0
- package/assets/docs/guide/colors/for-print/cmyk.md +292 -352
- package/assets/docs/guide/colors/for-print/spot.md +521 -578
- package/assets/docs/guide/colors/for-print.md +9 -4
- package/assets/docs/guide/colors/for-screen/p3.md +12 -10
- package/assets/docs/guide/colors/for-screen/srgb.md +107 -133
- package/assets/docs/guide/colors/for-screen.md +9 -4
- package/assets/docs/guide/colors/overview.md +6 -4
- package/assets/docs/guide/colors/replace.md +381 -419
- package/assets/docs/guide/colors.md +9 -4
- package/assets/docs/guide/compatibility.md +7 -5
- package/assets/docs/guide/concepts/architecture.md +17 -15
- package/assets/docs/guide/concepts/assets.md +152 -140
- package/assets/docs/guide/concepts/blocks.md +227 -323
- package/assets/docs/guide/concepts/buffers.md +147 -276
- package/assets/docs/guide/concepts/design-units.md +95 -145
- package/assets/docs/guide/concepts/editing-workflow.md +69 -183
- package/assets/docs/guide/concepts/events.md +80 -122
- package/assets/docs/guide/concepts/headless-mode.md +237 -0
- package/assets/docs/guide/concepts/pages.md +137 -127
- package/assets/docs/guide/concepts/resources.md +156 -217
- package/assets/docs/guide/concepts/scenes.md +191 -210
- package/assets/docs/guide/concepts/templating.md +118 -74
- package/assets/docs/guide/concepts/terminology.md +49 -47
- package/assets/docs/guide/concepts/undo-and-history.md +229 -303
- package/assets/docs/guide/concepts.md +9 -7
- package/assets/docs/guide/configuration.md +252 -380
- package/assets/docs/guide/conversion/overview.md +33 -4
- package/assets/docs/guide/conversion/to-base64.md +127 -167
- package/assets/docs/guide/conversion/to-pdf.md +24 -474
- package/assets/docs/guide/conversion/to-png.md +168 -211
- package/assets/docs/guide/conversion.md +9 -4
- package/assets/docs/guide/create-audio/audio/add-music.md +301 -327
- package/assets/docs/guide/create-audio/audio/add-sound-effects.md +475 -359
- package/assets/docs/guide/create-audio/audio/loop.md +232 -272
- package/assets/docs/guide/create-composition/add-background.md +237 -239
- package/assets/docs/guide/create-composition/blend-modes.md +118 -209
- package/assets/docs/guide/create-composition/collage.md +538 -320
- package/assets/docs/guide/create-composition/group-and-ungroup.md +216 -261
- package/assets/docs/guide/create-composition/layer-management.md +219 -257
- package/assets/docs/guide/create-composition/layout.md +513 -315
- package/assets/docs/guide/create-composition/lock-design.md +90 -109
- package/assets/docs/guide/create-composition/multi-page.md +133 -113
- package/assets/docs/guide/create-composition/overview.md +16 -4
- package/assets/docs/guide/create-composition/programmatic.md +288 -344
- package/assets/docs/guide/create-composition.md +10 -5
- package/assets/docs/guide/create-templates/add-dynamic-content/placeholders.md +443 -569
- package/assets/docs/guide/create-templates/add-dynamic-content/set-editing-constraints.md +567 -470
- package/assets/docs/guide/create-templates/add-dynamic-content/text-variables.md +179 -516
- package/assets/docs/guide/create-templates/add-dynamic-content.md +226 -224
- package/assets/docs/guide/create-templates/add-to-template-library.md +183 -193
- package/assets/docs/guide/create-templates/edit-or-remove.md +297 -303
- package/assets/docs/guide/create-templates/from-scratch.md +207 -268
- package/assets/docs/guide/create-templates/import/from-scene-file.md +158 -236
- package/assets/docs/guide/create-templates/import.md +145 -161
- package/assets/docs/guide/create-templates/lock.md +42 -295
- package/assets/docs/guide/create-templates/overview.md +33 -4
- package/assets/docs/guide/create-templates.md +9 -5
- package/assets/docs/guide/create-video/audio/adjust-speed.md +157 -207
- package/assets/docs/guide/create-video/audio/adjust-volume.md +116 -227
- package/assets/docs/guide/create-video/control.md +352 -193
- package/assets/docs/guide/create-video/limitations.md +175 -280
- package/assets/docs/guide/create-video.md +11 -10
- package/assets/docs/guide/edit-image/add-watermark.md +283 -330
- package/assets/docs/guide/edit-image/overview.md +29 -4
- package/assets/docs/guide/edit-image/remove-bg.md +283 -337
- package/assets/docs/guide/edit-image/replace-colors.md +424 -502
- package/assets/docs/guide/edit-image/transform/crop.md +463 -402
- package/assets/docs/guide/edit-image/transform/flip.md +353 -0
- package/assets/docs/guide/edit-image/transform/move.md +143 -100
- package/assets/docs/guide/edit-image/transform/resize.md +118 -88
- package/assets/docs/guide/edit-image/transform/rotate.md +132 -165
- package/assets/docs/guide/edit-image/transform/scale.md +230 -228
- package/assets/docs/guide/edit-image/transform.md +10 -5
- package/assets/docs/guide/edit-image.md +11 -7
- package/assets/docs/guide/edit-video/add-captions.md +344 -421
- package/assets/docs/guide/edit-video/add-watermark.md +312 -258
- package/assets/docs/guide/edit-video/join-and-arrange.md +237 -371
- package/assets/docs/guide/edit-video/redaction.md +419 -385
- package/assets/docs/guide/edit-video/split.md +243 -493
- package/assets/docs/guide/edit-video/transform/crop.md +21 -352
- package/assets/docs/guide/edit-video/transform/flip.md +102 -76
- package/assets/docs/guide/edit-video/transform/move.md +258 -310
- package/assets/docs/guide/edit-video/transform/resize.md +264 -428
- package/assets/docs/guide/edit-video/transform/rotate.md +265 -228
- package/assets/docs/guide/edit-video/transform/scale.md +320 -417
- package/assets/docs/guide/edit-video/transform.md +10 -6
- package/assets/docs/guide/edit-video/trim.md +448 -494
- package/assets/docs/guide/engine-interface.md +51 -62
- package/assets/docs/guide/export-save-publish/create-thumbnail.md +148 -184
- package/assets/docs/guide/export-save-publish/export/compress.md +161 -559
- package/assets/docs/guide/export-save-publish/export/overview.md +224 -373
- package/assets/docs/guide/export-save-publish/export/partial-export.md +386 -577
- package/assets/docs/guide/export-save-publish/export/size-limits.md +215 -310
- package/assets/docs/guide/export-save-publish/export/to-jpeg.md +132 -213
- package/assets/docs/guide/export-save-publish/export/to-pdf.md +139 -267
- package/assets/docs/guide/export-save-publish/export/to-png.md +121 -165
- package/assets/docs/guide/export-save-publish/export/to-raw-data.md +187 -234
- package/assets/docs/guide/export-save-publish/export/to-webp.md +160 -190
- package/assets/docs/guide/export-save-publish/export/with-color-mask.md +359 -203
- package/assets/docs/guide/export-save-publish/export.md +14 -11
- package/assets/docs/guide/export-save-publish/for-printing.md +141 -237
- package/assets/docs/guide/export-save-publish/for-social-media.md +124 -261
- package/assets/docs/guide/export-save-publish/pre-export-validation.md +436 -522
- package/assets/docs/guide/export-save-publish/save.md +167 -226
- package/assets/docs/guide/export-save-publish/store-custom-metadata.md +97 -162
- package/assets/docs/guide/file-format-support.md +9 -9
- package/assets/docs/guide/fills/color.md +370 -347
- package/assets/docs/guide/fills/image.md +167 -196
- package/assets/docs/guide/fills/overview.md +6 -4
- package/assets/docs/guide/fills/video.md +286 -438
- package/assets/docs/guide/fills.md +12 -8
- package/assets/docs/guide/filters-and-effects/apply.md +598 -664
- package/assets/docs/guide/filters-and-effects/blur.md +261 -159
- package/assets/docs/guide/filters-and-effects/chroma-key-green-screen.md +194 -293
- package/assets/docs/guide/filters-and-effects/create-custom-filters.md +548 -466
- package/assets/docs/guide/filters-and-effects/create-custom-lut-filter.md +176 -244
- package/assets/docs/guide/filters-and-effects/distortion.md +317 -384
- package/assets/docs/guide/filters-and-effects/duotone.md +221 -217
- package/assets/docs/guide/filters-and-effects/gradients.md +670 -813
- package/assets/docs/guide/filters-and-effects/overview.md +7 -7
- package/assets/docs/guide/filters-and-effects/support.md +97 -132
- package/assets/docs/guide/filters-and-effects.md +11 -6
- package/assets/docs/guide/get-started/agent-skills.md +20 -18
- package/assets/docs/guide/get-started/build-with-ai.md +7 -4
- package/assets/docs/guide/get-started/bun.md +219 -0
- package/assets/docs/guide/get-started/deno.md +161 -0
- package/assets/docs/guide/get-started/mcp-server.md +6 -4
- package/assets/docs/guide/get-started/overview.md +11 -6
- package/assets/docs/guide/get-started/vanilla-aws-lambda.md +506 -0
- package/assets/docs/guide/get-started/vanilla-clone-github-project.md +124 -0
- package/assets/docs/guide/get-started/vanilla.md +235 -0
- package/assets/docs/guide/guides/export-save-publish/export/audio.md +80 -66
- package/assets/docs/guide/guides.md +10 -9
- package/assets/docs/guide/import-media/asset-panel/refresh-assets.md +259 -288
- package/assets/docs/guide/import-media/concepts.md +20 -38
- package/assets/docs/guide/import-media/content-json-schema.md +145 -125
- package/assets/docs/guide/import-media/default-assets.md +113 -161
- package/assets/docs/guide/import-media/edit-or-remove-assets.md +391 -395
- package/assets/docs/guide/import-media/file-format-support.md +78 -61
- package/assets/docs/guide/import-media/from-remote-source/asset-versioning.md +273 -244
- package/assets/docs/guide/import-media/from-remote-source/remote-asset.md +152 -222
- package/assets/docs/guide/import-media/from-remote-source.md +9 -11
- package/assets/docs/guide/import-media/overview.md +5 -5
- package/assets/docs/guide/import-media/retrieve-mimetype.md +216 -108
- package/assets/docs/guide/import-media/size-limits.md +6 -4
- package/assets/docs/guide/import-media/source-sets.md +190 -251
- package/assets/docs/guide/import-media.md +10 -8
- package/assets/docs/guide/insert-media/audio.md +202 -195
- package/assets/docs/guide/insert-media/images.md +190 -188
- package/assets/docs/guide/insert-media/position-and-align.md +284 -551
- package/assets/docs/guide/insert-media/shapes-or-stickers.md +402 -418
- package/assets/docs/guide/insert-media/videos.md +236 -203
- package/assets/docs/guide/insert-media.md +10 -5
- package/assets/docs/guide/key-capabilities.md +36 -4
- package/assets/docs/guide/key-concepts.md +6 -4
- package/assets/docs/guide/licensing.md +6 -4
- package/assets/docs/guide/llms-txt.md +11 -7
- package/assets/docs/guide/open-the-editor/blank-canvas.md +102 -63
- package/assets/docs/guide/open-the-editor/from-image.md +157 -127
- package/assets/docs/guide/open-the-editor/from-template.md +131 -92
- package/assets/docs/guide/open-the-editor/from-video.md +204 -212
- package/assets/docs/guide/open-the-editor/import-design/from-archive.md +310 -360
- package/assets/docs/guide/open-the-editor/import-design/from-indesign.md +716 -513
- package/assets/docs/guide/open-the-editor/import-design/from-photoshop.md +667 -695
- package/assets/docs/guide/open-the-editor/import-design.md +228 -266
- package/assets/docs/guide/open-the-editor/load-scene.md +72 -68
- package/assets/docs/guide/open-the-editor/overview.md +6 -4
- package/assets/docs/guide/open-the-editor/uri-resolver.md +160 -251
- package/assets/docs/guide/open-the-editor.md +11 -9
- package/assets/docs/guide/outlines/overview.md +12 -4
- package/assets/docs/guide/outlines/shadows-and-glows.md +105 -410
- package/assets/docs/guide/outlines/strokes.md +218 -166
- package/assets/docs/guide/outlines.md +9 -4
- package/assets/docs/guide/overview.md +14 -6
- package/assets/docs/guide/performance.md +220 -113
- package/assets/docs/guide/plugins/print-ready-pdf.md +273 -368
- package/assets/docs/guide/plugins.md +10 -16
- package/assets/docs/guide/rules/asset-handling.md +7 -18
- package/assets/docs/guide/rules/common-pitfalls.md +25 -42
- package/assets/docs/guide/rules/content-fill-mode.md +4 -4
- package/assets/docs/guide/rules/enforce-brand-guidelines.md +398 -567
- package/assets/docs/guide/rules/lock-content.md +188 -231
- package/assets/docs/guide/rules/moderate-content.md +580 -571
- package/assets/docs/guide/rules/overview.md +345 -380
- package/assets/docs/guide/rules/silent-init-errors.md +4 -1
- package/assets/docs/guide/rules/verify-properties-before-use.md +2 -11
- package/assets/docs/guide/rules.md +10 -5
- package/assets/docs/guide/security.md +7 -5
- package/assets/docs/guide/serve-assets.md +57 -284
- package/assets/docs/guide/settings.md +96 -74
- package/assets/docs/guide/shapes.md +10 -5
- package/assets/docs/guide/stickers-and-shapes/combine.md +397 -583
- package/assets/docs/guide/stickers-and-shapes/create-cutout.md +181 -268
- package/assets/docs/guide/stickers-and-shapes/create-edit/create-shapes.md +418 -431
- package/assets/docs/guide/stickers-and-shapes/create-edit/create-stickers.md +147 -226
- package/assets/docs/guide/stickers-and-shapes/create-edit/edit-shapes.md +138 -123
- package/assets/docs/guide/stickers-and-shapes/insert-qr-code.md +151 -149
- package/assets/docs/guide/stickers.md +9 -4
- package/assets/docs/guide/text/add.md +470 -482
- package/assets/docs/guide/text/adjust-spacing.md +179 -214
- package/assets/docs/guide/text/auto-size.md +210 -271
- package/assets/docs/guide/text/edit.md +294 -309
- package/assets/docs/guide/text/effects.md +154 -190
- package/assets/docs/guide/text/emojis.md +199 -232
- package/assets/docs/guide/text/language-support.md +369 -382
- package/assets/docs/guide/text/overview.md +41 -4
- package/assets/docs/guide/text/styling.md +239 -273
- package/assets/docs/guide/text/text-designs.md +405 -544
- package/assets/docs/guide/text.md +10 -9
- package/assets/docs/guide/to-v1-19.md +12 -10
- package/assets/docs/guide/upgrade.md +8 -9
- package/assets/docs/guide/use-templates/apply-template.md +174 -163
- package/assets/docs/guide/use-templates/generate.md +171 -152
- package/assets/docs/guide/use-templates/overview.md +32 -4
- package/assets/docs/guide/use-templates/programmatic.md +266 -301
- package/assets/docs/guide/use-templates/replace-content.md +181 -171
- package/assets/docs/guide/what-is-cesdk.md +71 -282
- package/assets/docs/handbook/SKILL.md +24 -0
- package/dist/assets/inline.generated.d.ts.map +1 -1
- package/dist/assets/inline.generated.js +544 -406
- package/dist/assets/inline.generated.js.map +1 -1
- package/dist/assets/load-browser.d.ts +1 -1
- package/dist/assets/load-browser.js +1 -1
- package/dist/assets/load-browser.js.map +1 -1
- package/dist/assets/load-node.d.ts +1 -1
- package/dist/assets/load-node.js +1 -1
- package/dist/assets/load-node.js.map +1 -1
- package/dist/cli/http.d.ts.map +1 -1
- package/dist/cli/http.js +4 -28
- package/dist/cli/http.js.map +1 -1
- package/dist/cli/redirect-console.d.ts +1 -1
- package/dist/cli/redirect-console.d.ts.map +1 -1
- package/dist/cli/redirect-console.js +12 -3
- package/dist/cli/redirect-console.js.map +1 -1
- package/dist/cli/resolve-license.d.ts.map +1 -1
- package/dist/cli/resolve-license.js +8 -6
- package/dist/cli/resolve-license.js.map +1 -1
- package/dist/cli/stdio.d.ts +9 -0
- package/dist/cli/stdio.d.ts.map +1 -1
- package/dist/cli/stdio.js +48 -4
- package/dist/cli/stdio.js.map +1 -1
- package/dist/cli.js +10 -1
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +11 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +20 -1
- package/dist/config.js.map +1 -1
- package/dist/diagnostics/bundle.d.ts +10 -0
- package/dist/diagnostics/bundle.d.ts.map +1 -0
- package/dist/diagnostics/bundle.js +148 -0
- package/dist/diagnostics/bundle.js.map +1 -0
- package/dist/diagnostics/compose.d.ts +3 -0
- package/dist/diagnostics/compose.d.ts.map +1 -0
- package/dist/diagnostics/compose.js +15 -0
- package/dist/diagnostics/compose.js.map +1 -0
- package/dist/diagnostics/events.d.ts +34 -0
- package/dist/diagnostics/events.d.ts.map +1 -0
- package/dist/diagnostics/events.js +3 -0
- package/dist/diagnostics/events.js.map +1 -0
- package/dist/diagnostics/file-sink.d.ts +38 -0
- package/dist/diagnostics/file-sink.d.ts.map +1 -0
- package/dist/diagnostics/file-sink.js +157 -0
- package/dist/diagnostics/file-sink.js.map +1 -0
- package/dist/diagnostics/redact.d.ts +7 -0
- package/dist/diagnostics/redact.d.ts.map +1 -0
- package/dist/diagnostics/redact.js +43 -0
- package/dist/diagnostics/redact.js.map +1 -0
- package/dist/diagnostics/tool-call-adapter.d.ts +4 -0
- package/dist/diagnostics/tool-call-adapter.d.ts.map +1 -0
- package/dist/diagnostics/tool-call-adapter.js +21 -0
- package/dist/diagnostics/tool-call-adapter.js.map +1 -0
- package/dist/engine/cesdk-adapter.d.ts +5 -1
- package/dist/engine/cesdk-adapter.d.ts.map +1 -1
- package/dist/engine/cesdk-adapter.js +9 -2
- package/dist/engine/cesdk-adapter.js.map +1 -1
- package/dist/engine/index.d.ts +1 -0
- package/dist/engine/index.d.ts.map +1 -1
- package/dist/engine/index.js +4 -0
- package/dist/engine/index.js.map +1 -1
- package/dist/engine/scene-resource-schemes.d.ts +2 -0
- package/dist/engine/scene-resource-schemes.d.ts.map +1 -0
- package/dist/engine/scene-resource-schemes.js +20 -0
- package/dist/engine/scene-resource-schemes.js.map +1 -0
- package/dist/http/server.d.ts +0 -6
- package/dist/http/server.d.ts.map +1 -1
- package/dist/http/server.js +1 -2
- package/dist/http/server.js.map +1 -1
- package/dist/server.d.ts +0 -4
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +4 -60
- package/dist/server.js.map +1 -1
- package/dist/test/scripts/changelog-add.d.ts +8 -0
- package/dist/test/scripts/changelog-add.d.ts.map +1 -0
- package/dist/test/scripts/changelog-add.js +50 -0
- package/dist/test/scripts/changelog-add.js.map +1 -0
- package/dist/test/scripts/changelog-collate.d.ts +38 -0
- package/dist/test/scripts/changelog-collate.d.ts.map +1 -0
- package/dist/test/scripts/changelog-collate.js +171 -0
- package/dist/test/scripts/changelog-collate.js.map +1 -0
- package/dist/test/test/changelog.test.d.ts +2 -0
- package/dist/test/test/changelog.test.d.ts.map +1 -0
- package/dist/test/test/changelog.test.js +293 -0
- package/dist/test/test/changelog.test.js.map +1 -0
- package/dist/test/test/cli/dispatcher.test.js +10 -3
- package/dist/test/test/cli/dispatcher.test.js.map +1 -1
- package/dist/test/test/cli/redirect-console.test.js +31 -0
- package/dist/test/test/cli/redirect-console.test.js.map +1 -1
- package/dist/test/test/cli/resolve-license.test.js +10 -1
- package/dist/test/test/cli/resolve-license.test.js.map +1 -1
- package/dist/test/test/cli/stdio-diagnostics.test.d.ts +2 -0
- package/dist/test/test/cli/stdio-diagnostics.test.d.ts.map +1 -0
- package/dist/test/test/cli/stdio-diagnostics.test.js +31 -0
- package/dist/test/test/cli/stdio-diagnostics.test.js.map +1 -0
- package/dist/test/test/config.test.js +17 -13
- package/dist/test/test/config.test.js.map +1 -1
- package/dist/test/test/diagnostics/bundle.test.d.ts +2 -0
- package/dist/test/test/diagnostics/bundle.test.d.ts.map +1 -0
- package/dist/test/test/diagnostics/bundle.test.js +53 -0
- package/dist/test/test/diagnostics/bundle.test.js.map +1 -0
- package/dist/test/test/diagnostics/compose.test.d.ts +2 -0
- package/dist/test/test/diagnostics/compose.test.d.ts.map +1 -0
- package/dist/test/test/diagnostics/compose.test.js +31 -0
- package/dist/test/test/diagnostics/compose.test.js.map +1 -0
- package/dist/test/test/diagnostics/file-sink.test.d.ts +2 -0
- package/dist/test/test/diagnostics/file-sink.test.d.ts.map +1 -0
- package/dist/test/test/diagnostics/file-sink.test.js +113 -0
- package/dist/test/test/diagnostics/file-sink.test.js.map +1 -0
- package/dist/test/test/diagnostics/redact.test.d.ts +2 -0
- package/dist/test/test/diagnostics/redact.test.d.ts.map +1 -0
- package/dist/test/test/diagnostics/redact.test.js +59 -0
- package/dist/test/test/diagnostics/redact.test.js.map +1 -0
- package/dist/test/test/diagnostics/tool-call-adapter.test.d.ts +2 -0
- package/dist/test/test/diagnostics/tool-call-adapter.test.d.ts.map +1 -0
- package/dist/test/test/diagnostics/tool-call-adapter.test.js +34 -0
- package/dist/test/test/diagnostics/tool-call-adapter.test.js.map +1 -0
- package/dist/test/test/engine/cesdk-adapter.test.d.ts +2 -0
- package/dist/test/test/engine/cesdk-adapter.test.d.ts.map +1 -0
- package/dist/test/test/engine/cesdk-adapter.test.js +32 -0
- package/dist/test/test/engine/cesdk-adapter.test.js.map +1 -0
- package/dist/test/test/handbook-contract.test.js +6 -2
- package/dist/test/test/handbook-contract.test.js.map +1 -1
- package/dist/test/test/http/server.test.js +0 -36
- package/dist/test/test/http/server.test.js.map +1 -1
- package/dist/test/test/http/workspace-auth.test.js +0 -1
- package/dist/test/test/http/workspace-auth.test.js.map +1 -1
- package/dist/test/test/server.test.js +0 -40
- package/dist/test/test/server.test.js.map +1 -1
- package/dist/test/test/tools/edit-harness.d.ts +14 -0
- package/dist/test/test/tools/edit-harness.d.ts.map +1 -0
- package/dist/test/test/tools/edit-harness.js +30 -0
- package/dist/test/test/tools/edit-harness.js.map +1 -0
- package/dist/test/test/tools/edit.telemetry.test.d.ts +2 -0
- package/dist/test/test/tools/edit.telemetry.test.d.ts.map +1 -0
- package/dist/test/test/tools/edit.telemetry.test.js +46 -0
- package/dist/test/test/tools/edit.telemetry.test.js.map +1 -0
- package/dist/test/test/tools/export-harness.d.ts +13 -0
- package/dist/test/test/tools/export-harness.d.ts.map +1 -0
- package/dist/test/test/tools/export-harness.js +27 -0
- package/dist/test/test/tools/export-harness.js.map +1 -0
- package/dist/test/test/tools/export.telemetry.test.d.ts +2 -0
- package/dist/test/test/tools/export.telemetry.test.d.ts.map +1 -0
- package/dist/test/test/tools/export.telemetry.test.js +65 -0
- package/dist/test/test/tools/export.telemetry.test.js.map +1 -0
- package/dist/test/test/tools/import.test.d.ts +2 -0
- package/dist/test/test/tools/import.test.d.ts.map +1 -0
- package/dist/test/test/tools/import.test.js +122 -0
- package/dist/test/test/tools/import.test.js.map +1 -0
- package/dist/test/test/tools/index.test.js +78 -16
- package/dist/test/test/tools/index.test.js.map +1 -1
- package/dist/test/test/tools/load.integration.test.d.ts +2 -0
- package/dist/test/test/tools/load.integration.test.d.ts.map +1 -0
- package/dist/test/test/tools/load.integration.test.js +165 -0
- package/dist/test/test/tools/load.integration.test.js.map +1 -0
- package/dist/test/test/tools/load.test.d.ts +2 -0
- package/dist/test/test/tools/load.test.d.ts.map +1 -0
- package/dist/test/test/tools/load.test.js +387 -0
- package/dist/test/test/tools/load.test.js.map +1 -0
- package/dist/test/test/tools/preview-harness.d.ts +9 -0
- package/dist/test/test/tools/preview-harness.d.ts.map +1 -0
- package/dist/test/test/tools/preview-harness.js +23 -0
- package/dist/test/test/tools/preview-harness.js.map +1 -0
- package/dist/test/test/tools/preview.telemetry.test.d.ts +2 -0
- package/dist/test/test/tools/preview.telemetry.test.d.ts.map +1 -0
- package/dist/test/test/tools/preview.telemetry.test.js +36 -0
- package/dist/test/test/tools/preview.telemetry.test.js.map +1 -0
- package/dist/test/test/tools/schema-best-practices.d.ts +13 -0
- package/dist/test/test/tools/schema-best-practices.d.ts.map +1 -0
- package/dist/test/test/tools/schema-best-practices.js +169 -0
- package/dist/test/test/tools/schema-best-practices.js.map +1 -0
- package/dist/test/test/tools/schema-best-practices.test.d.ts +3 -0
- package/dist/test/test/tools/schema-best-practices.test.d.ts.map +1 -0
- package/dist/test/test/tools/schema-best-practices.test.js +194 -0
- package/dist/test/test/tools/schema-best-practices.test.js.map +1 -0
- package/dist/test/test/tools/spans.test.d.ts +2 -0
- package/dist/test/test/tools/spans.test.d.ts.map +1 -0
- package/dist/test/test/tools/spans.test.js +84 -0
- package/dist/test/test/tools/spans.test.js.map +1 -0
- package/dist/test/test/viewer/cesdk-cdn.test.d.ts +2 -0
- package/dist/test/test/viewer/cesdk-cdn.test.d.ts.map +1 -0
- package/dist/test/test/viewer/cesdk-cdn.test.js +19 -0
- package/dist/test/test/viewer/cesdk-cdn.test.js.map +1 -0
- package/dist/test/test/viewer/config-route.test.d.ts +2 -0
- package/dist/test/test/viewer/config-route.test.d.ts.map +1 -0
- package/dist/test/test/viewer/config-route.test.js +28 -0
- package/dist/test/test/viewer/config-route.test.js.map +1 -0
- package/dist/test/test/viewer/spa-version.test.d.ts +2 -0
- package/dist/test/test/viewer/spa-version.test.d.ts.map +1 -0
- package/dist/test/test/viewer/spa-version.test.js +14 -0
- package/dist/test/test/viewer/spa-version.test.js.map +1 -0
- package/dist/test/test/workspace/content-hash.test.d.ts +2 -0
- package/dist/test/test/workspace/content-hash.test.d.ts.map +1 -0
- package/dist/test/test/workspace/content-hash.test.js +17 -0
- package/dist/test/test/workspace/content-hash.test.js.map +1 -0
- package/dist/test/tsconfig.test.tsbuildinfo +1 -1
- package/dist/test/vitest.config.js +1 -1
- package/dist/test/vitest.config.js.map +1 -1
- package/dist/tools/asset-generate.d.ts.map +1 -1
- package/dist/tools/asset-generate.js +1 -8
- package/dist/tools/asset-generate.js.map +1 -1
- package/dist/tools/edit.d.ts +3 -0
- package/dist/tools/edit.d.ts.map +1 -1
- package/dist/tools/edit.js +145 -96
- package/dist/tools/edit.js.map +1 -1
- package/dist/tools/export.d.ts +3 -0
- package/dist/tools/export.d.ts.map +1 -1
- package/dist/tools/export.js +146 -108
- package/dist/tools/export.js.map +1 -1
- package/dist/tools/import.d.ts +12 -0
- package/dist/tools/import.d.ts.map +1 -0
- package/dist/tools/import.js +144 -0
- package/dist/tools/import.js.map +1 -0
- package/dist/tools/index.d.ts +3 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +44 -4
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/load.d.ts +26 -0
- package/dist/tools/load.d.ts.map +1 -0
- package/dist/tools/load.js +400 -0
- package/dist/tools/load.js.map +1 -0
- package/dist/tools/preview.d.ts +3 -0
- package/dist/tools/preview.d.ts.map +1 -1
- package/dist/tools/preview.js +79 -44
- package/dist/tools/preview.js.map +1 -1
- package/dist/tools/result.d.ts +1 -1
- package/dist/tools/result.js +2 -2
- package/dist/tools/result.js.map +1 -1
- package/dist/tools/spans.d.ts +45 -0
- package/dist/tools/spans.d.ts.map +1 -0
- package/dist/tools/spans.js +77 -0
- package/dist/tools/spans.js.map +1 -0
- package/dist/tools/telemetry-wrapper.d.ts +4 -0
- package/dist/tools/telemetry-wrapper.d.ts.map +1 -0
- package/dist/tools/telemetry-wrapper.js +43 -0
- package/dist/tools/telemetry-wrapper.js.map +1 -0
- package/dist/viewer/cesdk-cdn.d.ts +16 -0
- package/dist/viewer/cesdk-cdn.d.ts.map +1 -0
- package/dist/viewer/cesdk-cdn.js +30 -0
- package/dist/viewer/cesdk-cdn.js.map +1 -0
- package/dist/viewer/router.d.ts +6 -0
- package/dist/viewer/router.d.ts.map +1 -1
- package/dist/viewer/router.js +4 -1
- package/dist/viewer/router.js.map +1 -1
- package/dist/viewer/spa-assets.generated.d.ts.map +1 -1
- package/dist/viewer/spa-assets.generated.js +2 -3
- package/dist/viewer/spa-assets.generated.js.map +1 -1
- package/dist/workspace/content-hash.d.ts +2 -0
- package/dist/workspace/content-hash.d.ts.map +1 -0
- package/dist/workspace/content-hash.js +15 -0
- package/dist/workspace/content-hash.js.map +1 -0
- package/package.json +18 -9
- package/assets/docs/guide/actions.md +0 -1038
- package/assets/docs/guide/animation/overview.md +0 -22
- package/assets/docs/guide/automation/batch-processing.md +0 -474
- package/assets/docs/guide/browser-support.md +0 -38
- package/assets/docs/guide/concepts/edit-modes.md +0 -431
- package/assets/docs/guide/concepts/headless-mode/browser.md +0 -291
- package/assets/docs/guide/create-audio/audio.md +0 -336
- package/assets/docs/guide/create-video/overview.md +0 -224
- package/assets/docs/guide/create-video/timeline-editor.md +0 -622
- package/assets/docs/guide/create-video/update-caption-presets.md +0 -676
- package/assets/docs/guide/edit-image/vectorize.md +0 -204
- package/assets/docs/guide/export-save-publish/export/to-html5.md +0 -474
- package/assets/docs/guide/export-save-publish/export/to-mp4.md +0 -364
- package/assets/docs/guide/get-started/vanilla-js/quickstart.md +0 -175
- package/assets/docs/guide/grid-and-rulers.md +0 -222
- package/assets/docs/guide/guides/text/rendering-internals.md +0 -796
- package/assets/docs/guide/import-media/asset-library.md +0 -23
- package/assets/docs/guide/import-media/asset-panel/basics.md +0 -324
- package/assets/docs/guide/import-media/asset-panel/customize.md +0 -478
- package/assets/docs/guide/import-media/asset-panel/thumbnails.md +0 -633
- package/assets/docs/guide/import-media/capture-from-camera/record-video.md +0 -137
- package/assets/docs/guide/import-media/capture-from-camera.md +0 -20
- package/assets/docs/guide/import-media/from-local-source/user-upload.md +0 -438
- package/assets/docs/guide/import-media/from-local-source.md +0 -20
- package/assets/docs/guide/import-media/from-remote-source/getty-images.md +0 -627
- package/assets/docs/guide/import-media/from-remote-source/imgly-premium-assets.md +0 -625
- package/assets/docs/guide/import-media/from-remote-source/pexels.md +0 -692
- package/assets/docs/guide/import-media/from-remote-source/soundstripe.md +0 -497
- package/assets/docs/guide/import-media/from-remote-source/third-party.md +0 -51
- package/assets/docs/guide/import-media/from-remote-source/unsplash.md +0 -914
- package/assets/docs/guide/import-media/from-remote-source/your-server.md +0 -764
- package/assets/docs/guide/open-the-editor/from-htmlcanvas.md +0 -228
- package/assets/docs/guide/open-the-editor/set-zoom-level.md +0 -303
- package/assets/docs/guide/plugins/asset-sources.md +0 -553
- package/assets/docs/guide/starterkits/3d-mockup-editor.md +0 -748
- package/assets/docs/guide/starterkits/advanced-editor.md +0 -698
- package/assets/docs/guide/starterkits/advanced-video-editor.md +0 -696
- package/assets/docs/guide/starterkits/ai-editor.md +0 -749
- package/assets/docs/guide/starterkits/airtable-image-editor.md +0 -672
- package/assets/docs/guide/starterkits/apparel-ui.md +0 -188
- package/assets/docs/guide/starterkits/assets.md +0 -27
- package/assets/docs/guide/starterkits/auto-resize.md +0 -586
- package/assets/docs/guide/starterkits/automated-video-generation.md +0 -692
- package/assets/docs/guide/starterkits/background-removal-editor.md +0 -480
- package/assets/docs/guide/starterkits/content-moderation.md +0 -863
- package/assets/docs/guide/starterkits/creative-automation.md +0 -28
- package/assets/docs/guide/starterkits/custom-built-uis.md +0 -26
- package/assets/docs/guide/starterkits/customization.md +0 -29
- package/assets/docs/guide/starterkits/cutout-lines-editor.md +0 -470
- package/assets/docs/guide/starterkits/data-merge.md +0 -850
- package/assets/docs/guide/starterkits/design-editor.md +0 -698
- package/assets/docs/guide/starterkits/design-generation.md +0 -719
- package/assets/docs/guide/starterkits/design-validation.md +0 -808
- package/assets/docs/guide/starterkits/editor-ui-configurations.md +0 -14
- package/assets/docs/guide/starterkits/export-options.md +0 -724
- package/assets/docs/guide/starterkits/export-using-renderer.md +0 -708
- package/assets/docs/guide/starterkits/extensibility.md +0 -28
- package/assets/docs/guide/starterkits/force-crop-editor.md +0 -675
- package/assets/docs/guide/starterkits/form-based-template-adoption.md +0 -522
- package/assets/docs/guide/starterkits/getty-images-editor.md +0 -700
- package/assets/docs/guide/starterkits/html5-ads-exporter.md +0 -719
- package/assets/docs/guide/starterkits/indesign-template-import.md +0 -580
- package/assets/docs/guide/starterkits/layouts-editor.md +0 -724
- package/assets/docs/guide/starterkits/mobile-ui.md +0 -185
- package/assets/docs/guide/starterkits/mockup-editor.md +0 -745
- package/assets/docs/guide/starterkits/multi-image-generation.md +0 -542
- package/assets/docs/guide/starterkits/page-sizes-editor.md +0 -657
- package/assets/docs/guide/starterkits/pexels-image-editor.md +0 -665
- package/assets/docs/guide/starterkits/photo-editor.md +0 -755
- package/assets/docs/guide/starterkits/photo-ui.md +0 -186
- package/assets/docs/guide/starterkits/photobook-ui.md +0 -188
- package/assets/docs/guide/starterkits/placeholders.md +0 -678
- package/assets/docs/guide/starterkits/player.md +0 -405
- package/assets/docs/guide/starterkits/plugins.md +0 -25
- package/assets/docs/guide/starterkits/postcard-editor.md +0 -202
- package/assets/docs/guide/starterkits/pptx-template-import.md +0 -581
- package/assets/docs/guide/starterkits/print-ready-pdf-editor.md +0 -746
- package/assets/docs/guide/starterkits/product-editor.md +0 -773
- package/assets/docs/guide/starterkits/psd-template-import.md +0 -580
- package/assets/docs/guide/starterkits/qr-code-editor.md +0 -470
- package/assets/docs/guide/starterkits/single-page-editor.md +0 -661
- package/assets/docs/guide/starterkits/start-with-image.md +0 -684
- package/assets/docs/guide/starterkits/start-with-video.md +0 -651
- package/assets/docs/guide/starterkits/t-shirt-designer.md +0 -742
- package/assets/docs/guide/starterkits/templating.md +0 -23
- package/assets/docs/guide/starterkits/theming.md +0 -662
- package/assets/docs/guide/starterkits/translation-internationalization.md +0 -662
- package/assets/docs/guide/starterkits/unsplash-editor.md +0 -839
- package/assets/docs/guide/starterkits/vectorizer-editor.md +0 -466
- package/assets/docs/guide/starterkits/version-history.md +0 -745
- package/assets/docs/guide/starterkits/video-animations.md +0 -853
- package/assets/docs/guide/starterkits/video-captions.md +0 -884
- package/assets/docs/guide/starterkits/video-editing.md +0 -25
- package/assets/docs/guide/starterkits/video-editor.md +0 -696
- package/assets/docs/guide/starterkits/video-export-options.md +0 -676
- package/assets/docs/guide/starterkits/viewer.md +0 -400
- package/assets/docs/guide/starterkits.md +0 -41
- package/assets/docs/guide/stickers-and-shapes/create-edit/vector-edit.md +0 -362
- package/assets/docs/guide/text/custom-fonts.md +0 -401
- package/assets/docs/guide/text/decorations.md +0 -330
- package/assets/docs/guide/text/enumerations.md +0 -258
- package/assets/docs/guide/to-v1-10.md +0 -131
- package/assets/docs/guide/to-v1-13.md +0 -165
- package/assets/docs/guide/to-v1-32.md +0 -110
- package/assets/docs/guide/to-v1-69.md +0 -468
- package/assets/docs/guide/to-v1-72.md +0 -193
- package/assets/docs/guide/use-templates/library.md +0 -450
- package/assets/docs/guide/user-interface/ai-integration/audio-generation.md +0 -428
- package/assets/docs/guide/user-interface/ai-integration/auto-captions.md +0 -337
- package/assets/docs/guide/user-interface/ai-integration/custom-provider.md +0 -853
- package/assets/docs/guide/user-interface/ai-integration/gateway-provider.md +0 -1045
- package/assets/docs/guide/user-interface/ai-integration/image-generation.md +0 -641
- package/assets/docs/guide/user-interface/ai-integration/integrate.md +0 -966
- package/assets/docs/guide/user-interface/ai-integration/proxy-server.md +0 -99
- package/assets/docs/guide/user-interface/ai-integration/text-generation.md +0 -498
- package/assets/docs/guide/user-interface/ai-integration/video-generation.md +0 -493
- package/assets/docs/guide/user-interface/ai-integration.md +0 -30
- package/assets/docs/guide/user-interface/appearance/change-ui-font.md +0 -316
- package/assets/docs/guide/user-interface/appearance/custom-labels.md +0 -509
- package/assets/docs/guide/user-interface/appearance/icons.md +0 -373
- package/assets/docs/guide/user-interface/appearance/theming.md +0 -665
- package/assets/docs/guide/user-interface/appearance.md +0 -23
- package/assets/docs/guide/user-interface/build-your-own-ui.md +0 -620
- package/assets/docs/guide/user-interface/customization/canvas-menu.md +0 -412
- package/assets/docs/guide/user-interface/customization/canvas.md +0 -281
- package/assets/docs/guide/user-interface/customization/color-palette.md +0 -413
- package/assets/docs/guide/user-interface/customization/crop-presets.md +0 -384
- package/assets/docs/guide/user-interface/customization/disable-or-enable.md +0 -676
- package/assets/docs/guide/user-interface/customization/dock.md +0 -399
- package/assets/docs/guide/user-interface/customization/force-crop.md +0 -289
- package/assets/docs/guide/user-interface/customization/inspector-bar.md +0 -371
- package/assets/docs/guide/user-interface/customization/navigation-bar.md +0 -516
- package/assets/docs/guide/user-interface/customization/page-format.md +0 -436
- package/assets/docs/guide/user-interface/customization/panel.md +0 -605
- package/assets/docs/guide/user-interface/customization/quick-start/add-action-buttons.md +0 -531
- package/assets/docs/guide/user-interface/customization/quick-start/add-dock-buttons.md +0 -358
- package/assets/docs/guide/user-interface/customization/quick-start/create-custom-components.md +0 -374
- package/assets/docs/guide/user-interface/customization/quick-start/reorder-components.md +0 -323
- package/assets/docs/guide/user-interface/customization/quick-start/show-hide-components.md +0 -294
- package/assets/docs/guide/user-interface/customization/quick-start.md +0 -12
- package/assets/docs/guide/user-interface/customization/reference/component-order-api.md +0 -519
- package/assets/docs/guide/user-interface/customization/reference/component-reference.md +0 -333
- package/assets/docs/guide/user-interface/customization/reference.md +0 -12
- package/assets/docs/guide/user-interface/customization.md +0 -39
- package/assets/docs/guide/user-interface/localization.md +0 -633
- package/assets/docs/guide/user-interface/overview.md +0 -167
- package/assets/docs/guide/user-interface/ui-extensions/add-custom-feature.md +0 -411
- package/assets/docs/guide/user-interface/ui-extensions/asset-library.md +0 -721
- package/assets/docs/guide/user-interface/ui-extensions/create-custom-panel.md +0 -331
- package/assets/docs/guide/user-interface/ui-extensions/customize-behaviour.md +0 -553
- package/assets/docs/guide/user-interface/ui-extensions/notifications-and-dialogs.md +0 -672
- package/assets/docs/guide/user-interface/ui-extensions/quick-actions.md +0 -415
- package/assets/docs/guide/user-interface/ui-extensions/register-new-component.md +0 -521
- package/assets/docs/guide/user-interface/ui-extensions.md +0 -26
- package/assets/docs/guide/user-interface.md +0 -25
- package/assets/prompts/evals-assetGenerate.md +0 -12
- package/assets/prompts/evals-brutalistCore.md +0 -34
- package/assets/prompts/evals-danskCatalogue.md +0 -31
- package/assets/prompts/evals-exportRoundTrip.md +0 -12
- package/assets/prompts/evals-inspectPriorCode.md +0 -16
- package/assets/prompts/evals-listProjectFiles.md +0 -6
- package/assets/prompts/evals-readAndExplainScript.md +0 -6
- package/assets/prompts/evals-resumeAcrossRestart.md +0 -15
- package/assets/prompts/evals-rewindRecovery.md +0 -10
- package/assets/prompts/evals-searchAcrossFiles.md +0 -6
- package/assets/prompts/evals-weddingCard.md +0 -20
- package/assets/prompts/explain.md +0 -6
- package/assets/prompts/review.md +0 -6
- package/dist/frontmatter.d.ts +0 -15
- package/dist/frontmatter.d.ts.map +0 -1
- package/dist/frontmatter.js +0 -46
- package/dist/frontmatter.js.map +0 -1
- package/dist/test/test/frontmatter.test.d.ts +0 -2
- package/dist/test/test/frontmatter.test.d.ts.map +0 -1
- package/dist/test/test/frontmatter.test.js +0 -55
- package/dist/test/test/frontmatter.test.js.map +0 -1
|
@@ -1,351 +1,263 @@
|
|
|
1
|
-
> This is one page of the CE.SDK
|
|
1
|
+
> This is one page of the CE.SDK Node.js documentation. For a complete overview, see the [Node.js Documentation Index](https://img.ly/docs/cesdk/node.md). For all docs in one file, see [llms-full.txt](./llms-full.txt.md).
|
|
2
2
|
|
|
3
3
|
**Navigation:** [Plugins](./plugins.md) > [Print Ready PDFs](./plugins/print-ready-pdf.md)
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
In this guide, you'll learn how to use the Print Ready PDF plugin
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
> **Reading time:** 15 minutes
|
|
14
|
-
>
|
|
15
|
-
> **Resources:**
|
|
16
|
-
>
|
|
17
|
-
> - [Download examples](https://github.com/imgly/cesdk-web-examples/archive/refs/tags/release-$UBQ_VERSION$.zip)
|
|
18
|
-
> - [View source on GitHub](https://github.com/imgly/cesdk-web-examples/tree/release-$UBQ_VERSION$/plugins-print-ready-pdf-browser)
|
|
19
|
-
> - [Open in StackBlitz](https://stackblitz.com/github/imgly/cesdk-web-examples/tree/v$UBQ_VERSION$/plugins-print-ready-pdf-browser)
|
|
20
|
-
> - [Live demo](https://img.ly/docs/cesdk/examples/plugins-print-ready-pdf-browser/)
|
|
7
|
+
In this guide, you'll learn how to use the Print Ready PDF plugin with CE.SDK
|
|
8
|
+
Engine in Node.js to automate print-ready PDF generation. This is ideal for
|
|
9
|
+
batch processing, server-side PDF generation, CI/CD pipelines, and automated
|
|
10
|
+
workflows that require PDF/X compliant output. By default the plugin produces
|
|
11
|
+
PDF/X-4 (live transparency, vector text preserved); PDF/X-3 is available as
|
|
12
|
+
an opt-in fallback.
|
|
21
13
|
|
|
22
14
|
## What You'll Build
|
|
23
15
|
|
|
24
|
-
A
|
|
16
|
+
A server-side PDF conversion workflow that:
|
|
25
17
|
|
|
26
|
-
-
|
|
27
|
-
-
|
|
28
|
-
-
|
|
29
|
-
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
18
|
+
- Initializes CE.SDK Engine in headless mode
|
|
19
|
+
- Loads design scenes from files or APIs
|
|
20
|
+
- Exports PDFs using CE.SDK's engine
|
|
21
|
+
- Converts to PDF/X-4 (default) or PDF/X-3 with CMYK profiles
|
|
22
|
+
- Saves print-ready files to the filesystem
|
|
23
|
+
- Supports batch processing multiple files
|
|
32
24
|
|
|
33
25
|
## Prerequisites
|
|
34
26
|
|
|
35
|
-
-
|
|
36
|
-
-
|
|
37
|
-
-
|
|
27
|
+
- CE.SDK license with Design Editor features - [Get a free trial](https://img.ly/forms/free-trial)
|
|
28
|
+
- Node.js 22+ installed (required by `@cesdk/node`)
|
|
29
|
+
- Basic knowledge of Node.js and async/await
|
|
38
30
|
|
|
39
|
-
## Step 1: Install
|
|
31
|
+
## Step 1: Install Dependencies
|
|
40
32
|
|
|
41
|
-
|
|
33
|
+
Add CE.SDK Engine and the Print Ready PDF plugin to your Node.js project:
|
|
42
34
|
|
|
43
35
|
```bash
|
|
44
|
-
npm install @cesdk/
|
|
36
|
+
npm install @cesdk/node@$UBQ_VERSION$ @imgly/plugin-print-ready-pdfs-web@1.0.0
|
|
45
37
|
```
|
|
46
38
|
|
|
47
|
-
The plugin is a standalone npm package that works with any CE.SDK integration.
|
|
48
|
-
|
|
49
39
|
**Package details:**
|
|
50
40
|
|
|
51
|
-
- `@cesdk/
|
|
52
|
-
- `@imgly/plugin-print-ready-pdfs-web`: Print-ready PDF conversion
|
|
41
|
+
- `@cesdk/node`: CE.SDK Node.js package for server-side rendering (requires Node.js >=22)
|
|
42
|
+
- `@imgly/plugin-print-ready-pdfs-web`: Print-ready PDF conversion (works in Node.js despite the name)
|
|
43
|
+
|
|
44
|
+
The plugin works in Node.js because it's built on WebAssembly, which Node.js supports.
|
|
53
45
|
|
|
54
46
|
**Try it yourself:**
|
|
55
47
|
|
|
56
|
-
1. Run `npm install` in your project
|
|
48
|
+
1. Run `npm install` in your project directory
|
|
57
49
|
2. Verify packages appear in `package.json`
|
|
58
|
-
3. Check node_modules contains both packages
|
|
50
|
+
3. Check `node_modules` contains both packages
|
|
59
51
|
|
|
60
|
-
## Step 2:
|
|
52
|
+
## Step 2: Initialize CE.SDK Engine in Headless Mode
|
|
61
53
|
|
|
62
|
-
|
|
54
|
+
Set up CE.SDK Engine for server-side processing:
|
|
63
55
|
|
|
64
56
|
```typescript
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
cesdk.
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
{
|
|
75
|
-
key: 'export-print-ready-pdf',
|
|
76
|
-
id: 'ly.img.action.navigationBar',
|
|
77
|
-
label: 'Export Print-Ready PDF',
|
|
78
|
-
iconName: '@imgly/Download',
|
|
79
|
-
onClick: async () => {
|
|
80
|
-
await exportPrintReadyPDF();
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
]
|
|
84
|
-
}
|
|
85
|
-
);
|
|
57
|
+
import CreativeEngine from '@cesdk/node';
|
|
58
|
+
|
|
59
|
+
const config = {
|
|
60
|
+
license: 'YOUR_CESDK_LICENSE_KEY',
|
|
61
|
+
baseURL: `https://cdn.img.ly/packages/imgly/cesdk-node/${CreativeEngine.version}/assets`,
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const engine = await CreativeEngine.init(config);
|
|
65
|
+
console.log('Engine initialized:', engine.isInitialized());
|
|
86
66
|
```
|
|
87
67
|
|
|
88
68
|
**CE.SDK concepts explained:**
|
|
89
69
|
|
|
90
|
-
- **`
|
|
91
|
-
- **`
|
|
92
|
-
- **`
|
|
93
|
-
-
|
|
94
|
-
|
|
95
|
-
The custom action button integrates seamlessly with CE.SDK's UI, appearing alongside built-in export options.
|
|
70
|
+
- **`CreativeEngine.init()`**: Initializes the engine in headless mode (no browser required)
|
|
71
|
+
- **`license`**: Activates CE.SDK features including PDF export
|
|
72
|
+
- **`baseURL`**: Points to the required assets for the engine to function
|
|
73
|
+
- **Headless mode**: Runs without UI for automated workflows
|
|
96
74
|
|
|
97
|
-
**Verify
|
|
75
|
+
**Verify initialization:**
|
|
98
76
|
|
|
99
|
-
1.
|
|
100
|
-
2.
|
|
101
|
-
3.
|
|
102
|
-
4. Button should be clickable (even if export isn't implemented yet)
|
|
77
|
+
1. Run your Node.js script: `node script.js`
|
|
78
|
+
2. Check console shows "Engine initialized: true"
|
|
79
|
+
3. No license errors should appear
|
|
103
80
|
|
|
104
|
-
## Step 3: Export
|
|
81
|
+
## Step 3: Load and Export Scenes as PDF
|
|
105
82
|
|
|
106
|
-
|
|
83
|
+
Load design scenes and export them as PDFs:
|
|
107
84
|
|
|
108
85
|
```typescript
|
|
109
|
-
|
|
110
|
-
const scene = cesdk.engine.scene.get();
|
|
86
|
+
import { readFileSync } from 'fs';
|
|
111
87
|
|
|
112
|
-
//
|
|
113
|
-
const
|
|
88
|
+
// Load scene from file
|
|
89
|
+
const sceneString = readFileSync('design.scene', 'utf-8');
|
|
90
|
+
await engine.scene.loadFromString(sceneString);
|
|
114
91
|
|
|
115
|
-
//
|
|
116
|
-
const
|
|
117
|
-
|
|
118
|
-
|
|
92
|
+
// Get scene ID
|
|
93
|
+
const sceneId = engine.scene.get();
|
|
94
|
+
|
|
95
|
+
// Export as PDF
|
|
96
|
+
const pdfBlob = await engine.block.export(sceneId, 'application/pdf');
|
|
97
|
+
|
|
98
|
+
console.log('PDF exported:', pdfBlob.size, 'bytes');
|
|
119
99
|
```
|
|
120
100
|
|
|
121
101
|
**CE.SDK export methods in detail:**
|
|
122
102
|
|
|
123
|
-
- **`engine.scene.
|
|
124
|
-
- **`engine.
|
|
125
|
-
- **`
|
|
103
|
+
- **`engine.scene.loadFromString()`**: Loads a saved CE.SDK scene from JSON string
|
|
104
|
+
- **`engine.scene.get()`**: Returns the ID of the currently loaded scene
|
|
105
|
+
- **`engine.block.export()`**: Exports a block (the entire scene) as a specified format
|
|
106
|
+
|
|
107
|
+
The `.scene` file format is CE.SDK's native scene format. You can create these from CE.SDK Editor or generate them programmatically.
|
|
108
|
+
|
|
109
|
+
**Alternative: Load from URL or API:**
|
|
126
110
|
|
|
127
|
-
|
|
111
|
+
```typescript
|
|
112
|
+
// Fetch scene from API
|
|
113
|
+
await engine.scene.loadFromURL('https://api.example.com/scenes/123');
|
|
114
|
+
```
|
|
128
115
|
|
|
129
116
|
**Test your implementation:**
|
|
130
117
|
|
|
131
|
-
-
|
|
132
|
-
-
|
|
133
|
-
-
|
|
134
|
-
- Verify PDF blob has `size > 0`
|
|
118
|
+
- Run script with a valid `.scene` file
|
|
119
|
+
- Check console shows PDF size > 0
|
|
120
|
+
- No export errors should appear
|
|
135
121
|
|
|
136
122
|
## Step 4: Convert to Print-Ready Format
|
|
137
123
|
|
|
138
|
-
Use the plugin to convert CE.SDK's
|
|
124
|
+
Use the plugin to convert CE.SDK's PDF to PDF/X:
|
|
139
125
|
|
|
140
126
|
```typescript
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
127
|
+
import { convertToPDFX } from '@imgly/plugin-print-ready-pdfs-web';
|
|
128
|
+
|
|
129
|
+
// PDF/X-4 by default — live transparency, vector text preserved.
|
|
130
|
+
// Pass `outputStandard: 'PDF/X-3'` if your pipeline requires the older standard.
|
|
131
|
+
const printReadyPDF = await convertToPDFX(pdfBlob, {
|
|
132
|
+
outputProfile: 'fogra39',
|
|
133
|
+
title: 'Automated Print Export',
|
|
145
134
|
});
|
|
135
|
+
|
|
136
|
+
console.log('Conversion complete:', printReadyPDF.size, 'bytes');
|
|
146
137
|
```
|
|
147
138
|
|
|
148
139
|
**How this integrates with CE.SDK:**
|
|
149
140
|
|
|
150
|
-
- CE.SDK exports standard RGB PDF
|
|
151
|
-
- Plugin
|
|
152
|
-
-
|
|
153
|
-
-
|
|
154
|
-
- Embeds color profile for consistent printing
|
|
141
|
+
- CE.SDK Engine exports standard RGB PDF
|
|
142
|
+
- Plugin converts to CMYK with ICC profiles
|
|
143
|
+
- Adds PDF/X-4 (ISO 15930-7) compliance markers by default
|
|
144
|
+
- Keeps live transparency on transparent pages
|
|
155
145
|
|
|
156
146
|
**Color profile selection:**
|
|
157
147
|
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
- **`'fogra39'`**: European offset printing (ISO Coated v2 ECI)
|
|
148
|
+
- **`'fogra39'`**: European offset printing (ISO Coated v2)
|
|
161
149
|
- **`'gracol'`**: USA commercial printing (GRACoL 2013)
|
|
162
150
|
- **`'srgb'`**: Digital distribution (keeps RGB)
|
|
163
|
-
- **`'custom'`**: Use
|
|
164
|
-
|
|
165
|
-
Choose the profile that matches your print region or vendor requirements.
|
|
151
|
+
- **`'custom'`**: Use printer-specific ICC profile
|
|
166
152
|
|
|
167
153
|
**Verify the conversion:**
|
|
168
154
|
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
4. Blob size increased indicates successful conversion
|
|
155
|
+
- Conversion completes in 2-5 seconds
|
|
156
|
+
- Output size increased by ~400-500KB (ICC profile)
|
|
157
|
+
- No error messages in console
|
|
173
158
|
|
|
174
|
-
## Step 5:
|
|
159
|
+
## Step 5: Save to Filesystem
|
|
175
160
|
|
|
176
|
-
|
|
161
|
+
Save the print-ready PDF to disk:
|
|
177
162
|
|
|
178
163
|
```typescript
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
164
|
+
import { writeFileSync } from 'fs';
|
|
165
|
+
|
|
166
|
+
// Convert Blob to Buffer for Node.js filesystem
|
|
167
|
+
const buffer = Buffer.from(await printReadyPDF.arrayBuffer());
|
|
168
|
+
|
|
169
|
+
// Save to file
|
|
170
|
+
writeFileSync('output-print-ready.pdf', buffer);
|
|
171
|
+
|
|
172
|
+
console.log('File saved: output-print-ready.pdf');
|
|
186
173
|
```
|
|
187
174
|
|
|
188
|
-
**
|
|
175
|
+
**Node.js file handling explained:**
|
|
189
176
|
|
|
190
|
-
- **`
|
|
191
|
-
- **`
|
|
192
|
-
- **`
|
|
193
|
-
- **`URL.revokeObjectURL()`**: Cleans up temporary URL (prevents memory leaks)
|
|
177
|
+
- **`Blob.arrayBuffer()`**: Gets raw binary data from Blob
|
|
178
|
+
- **`Buffer.from()`**: Converts ArrayBuffer to Node.js Buffer
|
|
179
|
+
- **`writeFileSync()`**: Writes Buffer to filesystem synchronously
|
|
194
180
|
|
|
195
|
-
|
|
181
|
+
For production systems, use `writeFile()` (async) instead of `writeFileSync()`.
|
|
196
182
|
|
|
197
183
|
**Test the complete workflow:**
|
|
198
184
|
|
|
199
|
-
1.
|
|
200
|
-
2.
|
|
201
|
-
3.
|
|
202
|
-
4.
|
|
203
|
-
5. Check file properties for PDF/X-3:2003 compliance
|
|
185
|
+
1. Run your script: `node script.js`
|
|
186
|
+
2. Check `output-print-ready.pdf` exists
|
|
187
|
+
3. Open PDF in viewer (Adobe Acrobat, Preview, etc.)
|
|
188
|
+
4. Verify file properties show PDF/X-3:2003 compliance
|
|
204
189
|
|
|
205
190
|
## Complete Implementation
|
|
206
191
|
|
|
207
|
-
Here's
|
|
208
|
-
|
|
209
|
-
```typescript file=@cesdk_web_examples/plugins-print-ready-pdf-browser/src/index.ts reference-only
|
|
210
|
-
import CreativeEditorSDK from '@cesdk/cesdk-js';
|
|
211
|
-
// @ts-expect-error - Plugin types will be available in future release
|
|
212
|
-
import { convertToPDFX3 } from '@imgly/plugin-print-ready-pdfs-web';
|
|
213
|
-
import {
|
|
214
|
-
BlurAssetSource,
|
|
215
|
-
CaptionPresetsAssetSource,
|
|
216
|
-
ColorPaletteAssetSource,
|
|
217
|
-
CropPresetsAssetSource,
|
|
218
|
-
DemoAssetSources,
|
|
219
|
-
EffectsAssetSource,
|
|
220
|
-
FiltersAssetSource,
|
|
221
|
-
PagePresetsAssetSource,
|
|
222
|
-
StickerAssetSource,
|
|
223
|
-
TextAssetSource,
|
|
224
|
-
TypefaceAssetSource,
|
|
225
|
-
VectorShapeAssetSource
|
|
226
|
-
} from '@cesdk/cesdk-js/plugins';
|
|
227
|
-
|
|
228
|
-
let cesdk: CreativeEditorSDK;
|
|
229
|
-
|
|
230
|
-
const config = {
|
|
231
|
-
// By default, CE.SDK runs with a watermark.
|
|
232
|
-
// Get a free trial license at https://img.ly/forms/free-trial to remove it.
|
|
233
|
-
// Uncomment the line below and add your license key:
|
|
234
|
-
// license: 'your-license-key-here',
|
|
235
|
-
// baseURL: `https://cdn.img.ly/packages/imgly/cesdk-js/${CreativeEditorSDK.version}/assets`,
|
|
236
|
-
// Use local assets when developing with local packages
|
|
237
|
-
...((import.meta as any).env?.CESDK_USE_LOCAL && {
|
|
238
|
-
baseURL: import.meta.env.VITE_CESDK_ASSETS_BASE_URL
|
|
239
|
-
})
|
|
240
|
-
};
|
|
192
|
+
Here's a full server-side PDF conversion script:
|
|
241
193
|
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
key: 'export-print-ready-pdf',
|
|
253
|
-
id: 'ly.img.action.navigationBar',
|
|
254
|
-
label: 'Export Print-Ready PDF',
|
|
255
|
-
iconName: '@imgly/Download',
|
|
256
|
-
onClick: async () => {
|
|
257
|
-
await exportPrintReadyPDF();
|
|
258
|
-
}
|
|
259
|
-
}
|
|
260
|
-
]
|
|
261
|
-
}
|
|
262
|
-
);
|
|
263
|
-
|
|
264
|
-
// Load default scene
|
|
265
|
-
await cesdk.actions.run('scene.create', {
|
|
266
|
-
page: {
|
|
267
|
-
sourceId: 'ly.img.page.presets',
|
|
268
|
-
assetId: 'ly.img.page.presets.print.iso.a6.landscape'
|
|
269
|
-
}
|
|
194
|
+
```typescript
|
|
195
|
+
import CreativeEngine from '@cesdk/node';
|
|
196
|
+
import { convertToPDFX } from '@imgly/plugin-print-ready-pdfs-web';
|
|
197
|
+
import { readFileSync, writeFileSync } from 'fs';
|
|
198
|
+
|
|
199
|
+
async function convertToPrintReady() {
|
|
200
|
+
// Initialize CE.SDK Engine
|
|
201
|
+
const engine = await CreativeEngine.init({
|
|
202
|
+
license: 'YOUR_CESDK_LICENSE_KEY',
|
|
203
|
+
baseURL: `https://cdn.img.ly/packages/imgly/cesdk-node/${CreativeEngine.version}/assets`,
|
|
270
204
|
});
|
|
271
|
-
await cesdk.addPlugin(new BlurAssetSource());
|
|
272
|
-
await cesdk.addPlugin(new CaptionPresetsAssetSource());
|
|
273
|
-
await cesdk.addPlugin(new ColorPaletteAssetSource());
|
|
274
|
-
await cesdk.addPlugin(new CropPresetsAssetSource());
|
|
275
|
-
await cesdk.addPlugin(new EffectsAssetSource());
|
|
276
|
-
await cesdk.addPlugin(new FiltersAssetSource());
|
|
277
|
-
await cesdk.addPlugin(new PagePresetsAssetSource());
|
|
278
|
-
await cesdk.addPlugin(new StickerAssetSource());
|
|
279
|
-
await cesdk.addPlugin(new TextAssetSource());
|
|
280
|
-
await cesdk.addPlugin(new TypefaceAssetSource());
|
|
281
|
-
await cesdk.addPlugin(new VectorShapeAssetSource());
|
|
282
|
-
await cesdk.addPlugin(new DemoAssetSources());
|
|
283
|
-
}
|
|
284
|
-
|
|
285
|
-
async function exportPrintReadyPDF() {
|
|
286
|
-
try {
|
|
287
|
-
// Check if CE.SDK is initialized
|
|
288
|
-
if (!cesdk) {
|
|
289
|
-
throw new Error('CE.SDK not initialized');
|
|
290
|
-
}
|
|
291
|
-
|
|
292
|
-
// Get current scene ID
|
|
293
|
-
const scene = cesdk.engine.scene.get();
|
|
294
205
|
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
206
|
+
// Load scene from file
|
|
207
|
+
const sceneString = readFileSync('design.scene', 'utf-8');
|
|
208
|
+
await engine.scene.loadFromString(sceneString);
|
|
298
209
|
|
|
299
|
-
|
|
300
|
-
|
|
210
|
+
// Export as PDF
|
|
211
|
+
const sceneId = engine.scene.get();
|
|
212
|
+
const pdfBlob = await engine.block.export(sceneId, 'application/pdf');
|
|
301
213
|
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
214
|
+
// Convert to print-ready
|
|
215
|
+
const printReadyPDF = await convertToPDFX(pdfBlob, {
|
|
216
|
+
outputProfile: 'fogra39',
|
|
217
|
+
title: 'Automated Print Export',
|
|
218
|
+
});
|
|
305
219
|
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
});
|
|
220
|
+
// Save to disk
|
|
221
|
+
const buffer = Buffer.from(await printReadyPDF.arrayBuffer());
|
|
222
|
+
writeFileSync('output-print-ready.pdf', buffer);
|
|
310
223
|
|
|
311
|
-
|
|
312
|
-
const printReadyPDF = await convertToPDFX3(pdfBlob, {
|
|
313
|
-
outputProfile: 'fogra39', // European printing standard
|
|
314
|
-
title: 'Print-Ready Export'
|
|
315
|
-
});
|
|
224
|
+
console.log('Print-ready PDF created successfully');
|
|
316
225
|
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
const link = document.createElement('a');
|
|
320
|
-
link.href = url;
|
|
321
|
-
link.download = 'design-print-ready.pdf';
|
|
322
|
-
link.click();
|
|
323
|
-
URL.revokeObjectURL(url);
|
|
324
|
-
|
|
325
|
-
console.log('Print-ready PDF exported successfully!');
|
|
326
|
-
} catch (error) {
|
|
327
|
-
console.error('Export failed:', error);
|
|
328
|
-
alert('Failed to export print-ready PDF. Please try again.');
|
|
329
|
-
}
|
|
226
|
+
// Don't forget to dispose when done
|
|
227
|
+
engine.dispose();
|
|
330
228
|
}
|
|
331
229
|
|
|
332
|
-
|
|
333
|
-
init().catch((error) => {
|
|
334
|
-
console.error('Failed to initialize CE.SDK:', error);
|
|
335
|
-
});
|
|
230
|
+
convertToPrintReady().catch(console.error);
|
|
336
231
|
```
|
|
337
232
|
|
|
338
|
-
This implementation
|
|
339
|
-
|
|
340
|
-
Find the complete working example in the [GitHub repository](https://github.com/imgly/cesdk-web-examples/tree/release-$UBQ_VERSION$/plugins-print-ready-pdf-browser).
|
|
233
|
+
This implementation provides a complete automated workflow for generating print-ready PDFs from CE.SDK scenes.
|
|
341
234
|
|
|
342
235
|
## Transparency Handling
|
|
343
236
|
|
|
344
|
-
PDF/X-
|
|
237
|
+
The default output is PDF/X-4, which is based on PDF 1.6 and supports live transparency natively. Vector text and gradients on transparent pages are preserved without flattening, so no special handling is required.
|
|
238
|
+
|
|
239
|
+
```typescript
|
|
240
|
+
// Default — PDF/X-4 with live transparency preserved
|
|
241
|
+
const printReadyPDF = await convertToPDFX(pdfBlob, {
|
|
242
|
+
outputProfile: 'fogra39',
|
|
243
|
+
title: 'Automated Print Export',
|
|
244
|
+
});
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
## Fallback: PDF/X-3
|
|
345
248
|
|
|
346
|
-
|
|
249
|
+
If your downstream pipeline does not accept PDF/X-4, opt back into the older PDF/X-3 standard with `outputStandard: 'PDF/X-3'`:
|
|
250
|
+
|
|
251
|
+
```typescript
|
|
252
|
+
// PDF/X-3 fallback (PDF 1.4, no live transparency)
|
|
253
|
+
const printReadyPDF = await convertToPDFX(pdfBlob, {
|
|
254
|
+
outputStandard: 'PDF/X-3',
|
|
255
|
+
outputProfile: 'fogra39',
|
|
256
|
+
title: 'Automated Print Export (X-3)',
|
|
257
|
+
});
|
|
258
|
+
```
|
|
347
259
|
|
|
348
|
-
|
|
260
|
+
PDF/X-3:2003 is based on PDF 1.3 which does not support transparency. The plugin flattens transparency by default on this path so the output is strictly compliant.
|
|
349
261
|
|
|
350
262
|
**What happens during flattening:**
|
|
351
263
|
|
|
@@ -355,195 +267,188 @@ Transparency flattening is mandatory for PDF/X-3 compliance—this is a requirem
|
|
|
355
267
|
|
|
356
268
|
### Known Issue: Black Backgrounds During Flattening
|
|
357
269
|
|
|
358
|
-
During
|
|
270
|
+
During flattening, certain elements may render with black backgrounds instead of their intended appearance:
|
|
359
271
|
|
|
360
272
|
- Gradients that fade to transparent
|
|
361
273
|
- PNG images with alpha channels (e.g., stickers, icons)
|
|
362
274
|
- Text with emoji characters
|
|
363
275
|
- Overlapping semi-transparent elements
|
|
364
276
|
|
|
365
|
-
|
|
277
|
+
If you hit any of these, switch back to the PDF/X-4 default — X-4 preserves transparency live and avoids the flattening artifacts entirely.
|
|
366
278
|
|
|
367
|
-
|
|
279
|
+
### Workaround: Preserve Transparency on X-3
|
|
280
|
+
|
|
281
|
+
If you must stay on X-3 but visual fidelity matters more than strict compliance, disable flattening:
|
|
368
282
|
|
|
369
283
|
```typescript
|
|
370
|
-
//
|
|
371
|
-
const printReadyPDF = await
|
|
284
|
+
// X-3 output with live transparency — non-strict
|
|
285
|
+
const printReadyPDF = await convertToPDFX(pdfBlob, {
|
|
286
|
+
outputStandard: 'PDF/X-3',
|
|
372
287
|
outputProfile: 'fogra39',
|
|
373
|
-
title: '
|
|
374
|
-
flattenTransparency: false
|
|
288
|
+
title: 'X-3 with Preserved Transparency',
|
|
289
|
+
flattenTransparency: false,
|
|
375
290
|
});
|
|
376
291
|
```
|
|
377
292
|
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
|
381
|
-
|
|
|
382
|
-
| `flattenTransparency: true` (default) | May have artifacts | Strictly compliant |
|
|
383
|
-
| `flattenTransparency: false` | Preserved | May not validate if transparency exists |
|
|
293
|
+
| Setting | Visual Fidelity | PDF/X-3 Compliance |
|
|
294
|
+
|---------|----------------|-------------------|
|
|
295
|
+
| `flattenTransparency: true` (default for X-3) | May have artifacts | Strictly compliant |
|
|
296
|
+
| `flattenTransparency: false` | Preserved | May not validate if transparency exists |
|
|
384
297
|
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
To ensure best results with PDF/X-3, design without transparency:
|
|
388
|
-
|
|
389
|
-
- Use 100% opacity for all elements
|
|
390
|
-
- Avoid PNG images with alpha channels
|
|
391
|
-
- Use solid fills instead of gradients with opacity
|
|
392
|
-
- Avoid gradients that fade to transparent
|
|
393
|
-
- Export without blend modes
|
|
298
|
+
The `flattenTransparency` option is ignored when `outputStandard` is `'PDF/X-4'` — X-4 keeps transparency live by definition.
|
|
394
299
|
|
|
395
300
|
## Advanced: Opting Out of ICC Profile Embedding
|
|
396
301
|
|
|
397
|
-
If a downstream prepress pipeline (e.g. ZePrA, PitStop)
|
|
302
|
+
If a downstream prepress pipeline (e.g. ZePrA, PitStop) applies its own ICC profile and color normalization, you can keep the RGB→CMYK color conversion from the plugin and skip the embedded OutputIntent so the downstream tool can add its own:
|
|
398
303
|
|
|
399
304
|
```typescript
|
|
400
|
-
// Convert to CMYK without embedding the ICC profile or PDF/X
|
|
401
|
-
const cmykPDF = await
|
|
305
|
+
// Convert to CMYK without embedding the ICC profile or PDF/X metadata
|
|
306
|
+
const cmykPDF = await convertToPDFX(pdfBlob, {
|
|
402
307
|
outputProfile: 'fogra39',
|
|
403
308
|
embedICCProfile: false,
|
|
404
|
-
title: 'CMYK for Downstream Pipeline'
|
|
309
|
+
title: 'CMYK for Downstream Pipeline',
|
|
405
310
|
});
|
|
406
311
|
```
|
|
407
312
|
|
|
408
313
|
**What changes when `embedICCProfile` is `false`:**
|
|
409
314
|
|
|
410
315
|
- The selected `outputProfile` still determines whether the output is device CMYK (for `fogra39`, `gracol`, or a custom CMYK profile) or RGB (for `srgb`).
|
|
411
|
-
- The output PDF does not include the ICC profile, the `OutputIntent`, or the
|
|
412
|
-
- The resulting file is a plain CMYK PDF, not PDF/X
|
|
316
|
+
- The output PDF does not include the ICC profile, the `OutputIntent`, or the PDF/X conformance markers.
|
|
317
|
+
- The resulting file is a plain CMYK PDF, not PDF/X compliant. Your downstream prepress tool is responsible for assigning the final ICC profile and applying any color normalization.
|
|
413
318
|
|
|
414
319
|
Use this when your existing pipeline already enforces ICC profile embedding and color normalization rules you need to preserve.
|
|
415
320
|
|
|
416
|
-
## Advanced:
|
|
321
|
+
## Advanced: Batch Processing Multiple Files
|
|
417
322
|
|
|
418
|
-
|
|
323
|
+
Process multiple scenes in a batch:
|
|
419
324
|
|
|
420
325
|
```typescript
|
|
421
|
-
|
|
422
|
-
const customProfile = await fetch('/path/to/custom.icc').then((r) => r.blob());
|
|
423
|
-
|
|
424
|
-
const printReadyPDF = await convertToPDFX3(pdfBlob, {
|
|
425
|
-
outputProfile: 'custom',
|
|
426
|
-
customProfile: customProfile,
|
|
427
|
-
title: 'Custom Profile Export',
|
|
428
|
-
outputConditionIdentifier: 'Custom_CMYK_Profile',
|
|
429
|
-
outputCondition: 'Custom profile for specialized printing'
|
|
430
|
-
});
|
|
431
|
-
```
|
|
326
|
+
import { readdirSync } from 'fs';
|
|
432
327
|
|
|
433
|
-
|
|
328
|
+
async function batchConvert() {
|
|
329
|
+
const engine = await CreativeEngine.init({
|
|
330
|
+
license: 'YOUR_CESDK_LICENSE_KEY',
|
|
331
|
+
baseURL: `https://cdn.img.ly/packages/imgly/cesdk-node/${CreativeEngine.version}/assets`,
|
|
332
|
+
});
|
|
434
333
|
|
|
435
|
-
|
|
334
|
+
// Find all .scene files
|
|
335
|
+
const sceneFiles = readdirSync('.').filter(f => f.endsWith('.scene'));
|
|
436
336
|
|
|
437
|
-
|
|
337
|
+
console.log(`Processing ${sceneFiles.length} files...`);
|
|
438
338
|
|
|
439
|
-
|
|
339
|
+
for (const file of sceneFiles) {
|
|
340
|
+
console.log(`Converting ${file}...`);
|
|
440
341
|
|
|
441
|
-
|
|
342
|
+
// Load scene
|
|
343
|
+
const sceneString = readFileSync(file, 'utf-8');
|
|
344
|
+
await engine.scene.loadFromString(sceneString);
|
|
442
345
|
|
|
443
|
-
|
|
444
|
-
const
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
346
|
+
// Export and convert
|
|
347
|
+
const sceneId = engine.scene.get();
|
|
348
|
+
const pdfBlob = await engine.block.export(sceneId, 'application/pdf');
|
|
349
|
+
const printReadyPDF = await convertToPDFX(pdfBlob, {
|
|
350
|
+
outputProfile: 'fogra39',
|
|
351
|
+
title: file.replace('.scene', ''),
|
|
352
|
+
});
|
|
448
353
|
|
|
449
|
-
|
|
354
|
+
// Save with print-ready suffix
|
|
355
|
+
const outputName = file.replace('.scene', '-print-ready.pdf');
|
|
356
|
+
const buffer = Buffer.from(await printReadyPDF.arrayBuffer());
|
|
357
|
+
writeFileSync(outputName, buffer);
|
|
450
358
|
|
|
451
|
-
|
|
359
|
+
console.log(`✓ Saved ${outputName}`);
|
|
360
|
+
}
|
|
452
361
|
|
|
453
|
-
|
|
362
|
+
console.log('Batch processing complete!');
|
|
363
|
+
}
|
|
454
364
|
|
|
455
|
-
|
|
365
|
+
batchConvert().catch(console.error);
|
|
366
|
+
```
|
|
456
367
|
|
|
457
|
-
|
|
458
|
-
- Transparency flattening may rasterize content
|
|
459
|
-
- For smaller files, use `srgb` profile (digital-only)
|
|
460
|
-
- Disable transparency flattening if no transparency exists: `flattenTransparency: false`
|
|
368
|
+
This processes all `.scene` files in a directory and generates print-ready PDFs for each.
|
|
461
369
|
|
|
462
|
-
|
|
370
|
+
## Troubleshooting
|
|
463
371
|
|
|
464
|
-
|
|
372
|
+
### "Cannot find module" Error
|
|
465
373
|
|
|
466
|
-
**
|
|
374
|
+
**Problem:** Import errors for CE.SDK or plugin
|
|
467
375
|
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
376
|
+
**Solution:** Verify package installation:
|
|
377
|
+
|
|
378
|
+
```bash
|
|
379
|
+
npm list @cesdk/node @imgly/plugin-print-ready-pdfs-web
|
|
380
|
+
```
|
|
472
381
|
|
|
473
|
-
|
|
382
|
+
If missing, reinstall:
|
|
474
383
|
|
|
475
|
-
|
|
384
|
+
```bash
|
|
385
|
+
npm install @cesdk/node@$UBQ_VERSION$ @imgly/plugin-print-ready-pdfs-web@1.0.0
|
|
386
|
+
```
|
|
476
387
|
|
|
477
|
-
|
|
388
|
+
### Memory Issues with Large Files
|
|
478
389
|
|
|
479
|
-
|
|
480
|
-
- Some bright RGB colors cannot be reproduced in CMYK
|
|
481
|
-
- Preview in CMYK-capable viewer (Adobe Acrobat) for accurate representation
|
|
482
|
-
- For color-critical work, use CMYK values directly in CE.SDK designs
|
|
390
|
+
**Problem:** Node.js crashes with "out of memory" errors
|
|
483
391
|
|
|
484
|
-
|
|
392
|
+
**Solution:** Increase Node.js memory limit:
|
|
485
393
|
|
|
486
|
-
|
|
394
|
+
```bash
|
|
395
|
+
node --max-old-space-size=4096 script.js
|
|
396
|
+
```
|
|
487
397
|
|
|
488
|
-
|
|
398
|
+
Or use streaming for large batch operations:
|
|
489
399
|
|
|
490
400
|
```typescript
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
key: 'export-print-ready-pdf',
|
|
498
|
-
id: 'ly.img.action.navigationBar',
|
|
499
|
-
label: 'Export Print-Ready PDF',
|
|
500
|
-
iconName: '@imgly/Download',
|
|
501
|
-
onClick: async () => {
|
|
502
|
-
/* ... */
|
|
503
|
-
}
|
|
504
|
-
}
|
|
505
|
-
]
|
|
506
|
-
}
|
|
507
|
-
);
|
|
401
|
+
// Process files sequentially instead of in parallel
|
|
402
|
+
for (const file of sceneFiles) {
|
|
403
|
+
await processFile(file);
|
|
404
|
+
// Allow garbage collection between files
|
|
405
|
+
await new Promise(resolve => setTimeout(resolve, 100));
|
|
406
|
+
}
|
|
508
407
|
```
|
|
509
408
|
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
## Validating PDF/X-3 Compliance
|
|
409
|
+
### AGPL License Concerns
|
|
513
410
|
|
|
514
|
-
|
|
411
|
+
**Problem:** Worried about AGPL compliance for server-side processing
|
|
515
412
|
|
|
516
|
-
**
|
|
413
|
+
**Solution:** Consult legal counsel if:
|
|
517
414
|
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
4. File → Properties → Advanced
|
|
522
|
-
5. Should show OutputIntent with ICC profile name
|
|
415
|
+
- You're modifying the plugin's WASM binaries
|
|
416
|
+
- You're offering PDF conversion as a network service
|
|
417
|
+
- You're bundling the plugin in closed-source server software
|
|
523
418
|
|
|
524
|
-
|
|
419
|
+
For most use cases (internal automation, CI/CD, batch processing), server-side execution is acceptable. The plugin uses Ghostscript under AGPL-3.0.
|
|
525
420
|
|
|
526
|
-
|
|
527
|
-
- Check for PDF/X-3:2003 standard confirmation
|
|
421
|
+
## Validating Output
|
|
528
422
|
|
|
529
|
-
|
|
423
|
+
Verify generated PDFs meet print standards:
|
|
530
424
|
|
|
531
|
-
```
|
|
532
|
-
|
|
533
|
-
pdfinfo output.pdf | grep "PDF version"
|
|
425
|
+
```typescript
|
|
426
|
+
import { execSync } from 'child_process';
|
|
534
427
|
|
|
535
|
-
|
|
536
|
-
|
|
428
|
+
// Check PDF version
|
|
429
|
+
const version = execSync(
|
|
430
|
+
'pdfinfo output-print-ready.pdf | grep "PDF version"',
|
|
431
|
+
).toString();
|
|
432
|
+
console.log(version); // Should show PDF 1.3 (PDF/X-3:2003)
|
|
537
433
|
|
|
538
|
-
|
|
539
|
-
|
|
434
|
+
// Validate structure
|
|
435
|
+
execSync('qpdf --check output-print-ready.pdf');
|
|
436
|
+
console.log('PDF structure is valid');
|
|
540
437
|
```
|
|
541
438
|
|
|
439
|
+
Or use Adobe Acrobat Pro:
|
|
440
|
+
|
|
441
|
+
1. Open PDF → File → Properties → Description
|
|
442
|
+
2. Should show "PDF/X-3:2003"
|
|
443
|
+
3. Check Advanced tab for OutputIntent with ICC profile
|
|
444
|
+
|
|
445
|
+
|
|
446
|
+
|
|
542
447
|
---
|
|
543
448
|
|
|
544
449
|
## More Resources
|
|
545
450
|
|
|
546
|
-
- **[
|
|
451
|
+
- **[Node.js Documentation Index](https://img.ly/docs/cesdk/node.md)** - Browse all Node.js documentation
|
|
547
452
|
- **[Complete Documentation](./llms-full.txt.md)** - Full documentation in one file (for LLMs)
|
|
548
|
-
- **[Web Documentation](./
|
|
549
|
-
- **[Support](mailto:support@img.ly)** - Contact IMG.LY support
|
|
453
|
+
- **[Web Documentation](./node.md)** - Interactive documentation with examples
|
|
454
|
+
- **[Support](mailto:support@img.ly)** - Contact IMG.LY support
|