fidelize/flowchart-to-png

There is no license information available for the latest version (1.1.0) of this package.

Convert from flowchart json encoded to png

Installs: 7 061

Dependents: 0

Suggesters: 0

Security: 0

Stars: 1

Watchers: 12

Forks: 3

Type:project

1.1.0 2017-04-17 11:39 UTC

This package is auto-updated.

Last update: 2024-03-29 03:31:53 UTC


README

Setup

Add the library to your composer.json file in your project:

{
  "require": {
      "fidelize/flowchart-to-png": "1.0.0"
  }
}

Use composer to install the library:

$ php composer.phar install

Composer will install flowchart-to-png inside your vendor folder. Then you can add the following to your .php files to use the library with Autoloading.

require_once(__DIR__ . '/vendor/autoload.php');

Usage

$json = '{
  "nodes": [
    {
      "id": "flowchartStart",
      "type": "start",
      "text": "Start",
      "left": "20px",
      "top": "180px",
      "countSource": null
    },
    {
      "id": "flowchartEnd",
      "type": "end",
      "text": "End",
      "left": "940px",
      "top": "180px",
      "countSource": null
    },
    {
      "id": "flowchartWindow1489779664638",
      "type": "action",
      "text": "Approve",
      "left": "680px",
      "top": "260px",
      "action": "Approve",
      "extraParams": "",
      "countSource": "1"
    },
    {
      "id": "flowchartWindow1489779672763",
      "type": "action",
      "text": "Reject",
      "left": "620px",
      "top": "40px",
      "action": "Reject",
      "extraParams": "",
      "countSource": "1"
    }
  ],
  "edges": [
    {
      "source": "flowchartStart",
      "target": "flowchartWindow1489779664638",
      "data": {
        "label": "",
        "positionSource": "RightMiddle",
        "positionTarget": "LeftMiddle"
      }
    },
    {
      "source": "flowchartStart",
      "target": "flowchartWindow1489779672763",
      "data": {
        "label": "",
        "positionSource": "RightMiddle",
        "positionTarget": "LeftMiddle"
      }
    },
    {
      "source": "flowchartWindow1489779672763",
      "target": "flowchartEnd",
      "data": {
        "label": "Success",
        "return": "success",
        "positionSource": "RightMiddle",
        "positionTarget": "LeftMiddle"
      }
    },
    {
      "source": "flowchartWindow1489779664638",
      "target": "flowchartEnd",
      "data": {
        "label": "Success",
        "return": "success",
        "positionSource": "RightMiddle",
        "positionTarget": "LeftMiddle"
      }
    }
  ]
}';


$flowChartImage = new FlowChartImage();
$flowChartImage->setContent($json);
$flowChartImage->generate()->toPng($path);

Change Node Color

$image->setSelectedAction('flowchartWindow1489779664638');
$image->setSelectedColor([255, 0, 0]);