PHP code example of graze / unicontroller-client

1. Go to this page and download the library: Download graze/unicontroller-client library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

graze / unicontroller-client example snippets

 php
# instantiate a client
$client = Graze\UnicontrollerClient\UnicontrollerClient::factory();

# connect to a printer
$dsn = '172.16.1.1:9100';
$client->connect($dsn);

# send the 'ReadDesign' command to the printer
$designName = 'current.Design';
$designCurrent = $client->ReadDesign($designName, 0, 0);

# client returns the 'ReadDesign' entity, as defined in the Unicontroller specification
if (!$designCurrent->getReadOk()) {
    echo sprintf('failed to read design, does %s exist?', $designName);
    exit;
}

# modify some text
$ttfItem = $designCurrent->getTtfArray()[0];
$ttfItem->setData('this is some example text');

# add an image
$imageData = file_get_contents('/path/to/image.bmp');

$pictureItem = new Graze\UnicontrollerClient\Entity\Entity\EntityPictureItem();
$pictureItem->setAnchorPoint(0);
$pictureItem->setXPos(9500);
$pictureItem->setYPos(400);
$pictureItem->setWidth(0);
$pictureItem->setHeight(0);
$pictureItem->setOrion(0);
$pictureItem->setDescription('image1');
$pictureItem->setMaintain(1);
$pictureItem->setPrinterReferenceName('image.bmp');
$pictureItem->setUsePixelSize(1);
$pictureItem->setPictureData($imageData);
$pictureItem->setStoreInternally(0);
$pictureItem->setPhantomField(0);

$designCurrent->setPictureArray([$pictureItem]);

# push the design to the printer
$entity->setName('new.Design');
$entity->setSaveDesign(1);
$designNew = $client->serialise($designCurrent);
$resp = $client->send('Design', $designNew, 1);

if (!$resp->success()) {
    echo 'something went wrong';
}