Project

ImagePlayground

Automate image processing, codes, metadata, charts, topology, and visual stories from PowerShell.

Stars 100
Forks 7
Total downloads 712,347
Release ImagePlayground-PowerShellModule.v3.2.7
Language: C# Updated: 2026-08-25

API Reference

Command

New-ImageStory

Namespace ImagePlayground
Inputs
ChartForgeX.Stories.VisualStory
Outputs
ChartForgeX.Stories.VisualStory

Creates a generic source-to-result visual story from resolved scenes and declared outcomes.

Remarks

The cmdlet never executes displayed code. Callers or trusted build tooling capture real outputs first, then pass the resolved source, transcript, and media into the story.

Examples

Authored help example

Show PowerShell source and the chart it produced

PS>


$source = ConvertTo-ImageStorySource -Text $code -Language PowerShell
            $codePanel = New-ImageStoryPanel -Id source -Source $source -Title 'PowerShell'
            $chartPanel = New-ImageStoryPanel -Id chart -MediaPath .\chart.png -AccessibleText 'Weekly builds chart' -Title 'Result'
            $scenes = @(
              New-ImageStoryScene -Id source -Title 'Write the script' -Panels $codePanel
              New-ImageStoryScene -Id result -Title 'See the chart' -Layout Split -Panels @($codePanel, $chartPanel)
            )
            $outcome = New-ImageStoryOutcome -Id chart-created -Label 'The chart is visible' -PanelId chart
            New-ImageStory -Title 'Chart in five lines' -Scenes $scenes -Outcomes $outcome -FilePath .\chart-story.gif
        

Produces a portable animated story whose final scene contains the promised chart.

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.

Syntax

New-ImageStory [-AnimationScale <Int32>] [-BundleFormats <Svg>] [-BundlePath <String>] [-CapturedAtUtc <DateTimeOffset>] [-Description <String>] [-EndHoldSeconds <Double>] -FilePath <String> [-FramesPerSecond <Int32>] [-Height <Int32>] [-MaximumFrames <Int32>] [-NoLoop] -Outcomes <ImageStoryOutcomeSpec[]> [-PassThru] -Scenes <ImageStorySceneSpec[]> [-Show] [-Theme <VisualStoryTheme>] -Title <String> [-TransitionSeconds <Double>] [-Width <Int32>] [<CommonParameters>]
#
Parameter set: Parts

Parameters

AnimationScale Int32 optionalposition: namedpipeline: False
Raster density multiplier for GIF and APNG output.
BundleFormats String[] optionalposition: namedpipeline: Falsevalues: 6
Formats emitted into BundlePath. The completed PNG is always included.
Possible values: Svg, Html, Png, Gif, Apng, Transcript
BundlePath String optionalposition: namedpipeline: False
Optional directory that receives a portable PowerForge-compatible story bundle and manifest.
CapturedAtUtc DateTimeOffset optionalposition: namedpipeline: False
Optional capture time recorded in the portable bundle. Omit it for deterministic bundle manifests.
Description String optionalposition: namedpipeline: False
Accessible story description.
EndHoldSeconds Double optionalposition: namedpipeline: False
Completed-scene hold time for GIF and APNG output.
FilePath String requiredposition: namedpipeline: False
Output path. Supports SVG, HTML, PNG, GIF, APNG, and TXT.
FramesPerSecond Int32 optionalposition: namedpipeline: False
Frame rate for GIF and APNG output.
Height Int32 optionalposition: namedpipeline: False
Logical output height.
MaximumFrames Int32 optionalposition: namedpipeline: False
Maximum animated frame budget.
NoLoop SwitchParameter optionalposition: namedpipeline: False
Produce a single-play GIF or APNG.
Outcomes ImageStoryOutcomeSpec[] requiredposition: namedpipeline: False
Outcomes that the completed scene must reveal.
PassThru SwitchParameter optionalposition: namedpipeline: False
Write the resolved native story to the pipeline.
Scenes ImageStorySceneSpec[] requiredposition: namedpipeline: False
Resolved scenes in display order.
Show SwitchParameter optionalposition: namedpipeline: False
Open the generated story after creation.
Theme VisualStoryTheme optionalposition: namedpipeline: False
Optional visual-story theme.
Title String requiredposition: namedpipeline: False
Story title.
TransitionSeconds Double optionalposition: namedpipeline: False
Cross-fade duration between scenes.
Width Int32 optionalposition: namedpipeline: False
Logical output width.

Outputs

ChartForgeX.Stories.VisualStory

New-ImageStory [-AnimationScale <Int32>] [-BundleFormats <Svg>] [-BundlePath <String>] [-CapturedAtUtc <DateTimeOffset>] [-EndHoldSeconds <Double>] -FilePath <String> [-FramesPerSecond <Int32>] [-MaximumFrames <Int32>] [-NoLoop] [-PassThru] [-Show] -Story <VisualStory> [-TransitionSeconds <Double>] [<CommonParameters>]
#
Parameter set: Story

Parameters

AnimationScale Int32 optionalposition: namedpipeline: False
Raster density multiplier for GIF and APNG output.
BundleFormats String[] optionalposition: namedpipeline: Falsevalues: 6
Formats emitted into BundlePath. The completed PNG is always included.
Possible values: Svg, Html, Png, Gif, Apng, Transcript
BundlePath String optionalposition: namedpipeline: False
Optional directory that receives a portable PowerForge-compatible story bundle and manifest.
CapturedAtUtc DateTimeOffset optionalposition: namedpipeline: False
Optional capture time recorded in the portable bundle. Omit it for deterministic bundle manifests.
EndHoldSeconds Double optionalposition: namedpipeline: False
Completed-scene hold time for GIF and APNG output.
FilePath String requiredposition: namedpipeline: False
Output path. Supports SVG, HTML, PNG, GIF, APNG, and TXT.
FramesPerSecond Int32 optionalposition: namedpipeline: False
Frame rate for GIF and APNG output.
MaximumFrames Int32 optionalposition: namedpipeline: False
Maximum animated frame budget.
NoLoop SwitchParameter optionalposition: namedpipeline: False
Produce a single-play GIF or APNG.
PassThru SwitchParameter optionalposition: namedpipeline: False
Write the resolved native story to the pipeline.
Show SwitchParameter optionalposition: namedpipeline: False
Open the generated story after creation.
Story VisualStory requiredposition: namedpipeline: True (ByValue)
Native resolved ChartForgeX visual story.
TransitionSeconds Double optionalposition: namedpipeline: False
Cross-fade duration between scenes.

Outputs

ChartForgeX.Stories.VisualStory