PHPackages                             zafarjonovich/application-filler - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Image &amp; Media](/categories/media)
4. /
5. zafarjonovich/application-filler

ActivePackage[Image &amp; Media](/categories/media)

zafarjonovich/application-filler
================================

Image application filler

0.0.0.5(1y ago)24.8k↓57.1%PHPPHP &gt;=5.6

Since Sep 25Pushed 1y ago1 watchersCompare

[ Source](https://github.com/zafarjonovich/application-filler)[ Packagist](https://packagist.org/packages/zafarjonovich/application-filler)[ RSS](/packages/zafarjonovich-application-filler/feed)WikiDiscussions master Synced today

READMEChangelog (5)Dependencies (1)Versions (6)Used By (0)

Application filler
==================

[](#application-filler)

Assalomu aleykum, this package helps to you fill applications wia php

For example
-----------

[](#for-example)

You have application likely this

[![Application form](https://camo.githubusercontent.com/c594bfec1da579b7a08e21f771eefe7b2269cd68895a8e951e297e6f44a68762/68747470733a2f2f73657276696e672e70686f746f732e70686f746f626f782e636f6d2f3734393830303634633733363234623061643363323966393338623461633738616262336635323335663232623564333061383639326331306630333966663633613432346430632e6a7067)](https://camo.githubusercontent.com/c594bfec1da579b7a08e21f771eefe7b2269cd68895a8e951e297e6f44a68762/68747470733a2f2f73657276696e672e70686f746f732e70686f746f626f782e636f6d2f3734393830303634633733363234623061643363323966393338623461633738616262336635323335663232623564333061383639326331306630333966663633613432346430632e6a7067)

You must fill it programmatically

- Always the coordinate head is at the top left and the coordinates are measured in pixels
- Each text is grouped together and the group consists of rows that can be written
- Each group can be given different fonts, and it merges into a font object. The font object covers the absolute location of the font and the size of the text
- Each row consists of lines, and the lines consist of starting and ending points
- Each point is equal to the number of vertical and horizontal pixels counted from the origin

I suggest the following [site](https://yangcha.github.io/iview/iview.html) to calculate the coordinates

```
require_once 'vendor/autoload.php';

use zafarjonovich\ApplicationFiller\element\Font;
use zafarjonovich\ApplicationFiller\element\Group;
use zafarjonovich\ApplicationFiller\element\Groups;
use zafarjonovich\ApplicationFiller\element\Line;
use zafarjonovich\ApplicationFiller\element\Lines;
use zafarjonovich\ApplicationFiller\element\Point;
use zafarjonovich\ApplicationFiller\element\Text;
use zafarjonovich\ApplicationFiller\ApplicationFiller;

try {
    $groups = new Groups();

    $groups->add(
        new Group(
            new Text('x',new Font('ubuntu.ttf',18)),
            (new Lines())
                ->add(
                    new Line(new Point(493,127),new Point(510,127))
                )
        )
    );

    $groups->add(
        new Group(
            new Text('English, Russian, Uzbek',new Font('ubuntu.ttf',16)),
            (new Lines())
                ->add(
                    new Line(new Point(280,196),new Point(640,196))
                )
        )
    );

    $groups->add(
        new Group(
            new Text('x',new Font('ubuntu.ttf',18)),
            (new Lines())
                ->add(
                    new Line(new Point(548,265),new Point(650,265))
                )
        )
    );

    $groups->add(
        new Group(
            new Text('x',new Font('ubuntu.ttf',18)),
            (new Lines())
                ->add(
                    new Line(new Point(548,265),new Point(650,265))
                )
        )
    );

    $groups->add(
        new Group(
            new Text('x',new Font('ubuntu.ttf',18)),
            (new Lines())
                ->add(
                    new Line(new Point(548,335),new Point(650,335))
                )
        )
    );

    $groups->add(
        new Group(
            new Text('x',new Font('ubuntu.ttf',18)),
            (new Lines())
                ->add(
                    new Line(new Point(490,402),new Point(510,402))
                )
        )
    );

    $largeText = "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.";

    $groups->add(
        new Group(
            new Text($largeText,new Font('ubuntu.ttf',12)),
            (new Lines())
                ->add(
                    new Line(new Point(120,558),new Point(650,558))
                )
                ->add(
                    new Line(new Point(120,608),new Point(650,608))
                )
                ->add(
                    new Line(new Point(120,665),new Point(650,665))
                )
                ->add(
                    new Line(new Point(120,715),new Point(650,715))
                )
                ->add(
                    new Line(new Point(120,770),new Point(650,770))
                )
                ->add(
                    new Line(new Point(120,820),new Point(650,820))
                )
        )
    );

    $filler = new ApplicationFiller('application-form.jpg',$groups);

    $filler->draw();

    $filler->image->save('temp.jpg');

} catch (Exception $exception) {
    echo $exception->getMessage();
}
```

Result:

[![Result application form](https://camo.githubusercontent.com/b3265b5583b4f8eb614b26027e3d5bf02c350592d1e9c29e230fe530b708edcf/68747470733a2f2f73657276696e672e70686f746f732e70686f746f626f782e636f6d2f3238333039363732383462393934313235396431363563306131633130633332663135663236366633626439323634313038353838343234663235646132353133636464636132382e6a7067)](https://camo.githubusercontent.com/b3265b5583b4f8eb614b26027e3d5bf02c350592d1e9c29e230fe530b708edcf/68747470733a2f2f73657276696e672e70686f746f732e70686f746f626f782e636f6d2f3238333039363732383462393934313235396431363563306131633130633332663135663236366633626439323634313038353838343234663235646132353133636464636132382e6a7067)

You can change the text alignment

```
$text = new Text("Hello world !",new Font('ubuntu.ttf',12));
$text->setAlignment(Text::ALIGNMENT_MODE_CENTER);

$groups->add(
    new Group(
        $text,
        (new Lines())
            ->add(
                new Line(new Point(490,402),new Point(510,402))
            )
    )
);
```

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance33

Infrequent updates — may be unmaintained

Popularity25

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~266 days

Total

5

Last Release

677d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/47502872?v=4)[Asadbek](/maintainers/Zafarjonovich)[@zafarjonovich](https://github.com/zafarjonovich)

---

Top Contributors

[![zafarjonovich](https://avatars.githubusercontent.com/u/47502872?v=4)](https://github.com/zafarjonovich "zafarjonovich (6 commits)")

### Embed Badge

![Health badge](/badges/zafarjonovich-application-filler/health.svg)

```
[![Health](https://phpackages.com/badges/zafarjonovich-application-filler/health.svg)](https://phpackages.com/packages/zafarjonovich-application-filler)
```

###  Alternatives

[league/glide

Wonderfully easy on-demand image manipulation library with an HTTP based API.

2.6k53.3M146](/packages/league-glide)[intervention/image-laravel

Laravel Integration of Intervention Image

1588.9M183](/packages/intervention-image-laravel)[unopim/unopim

UnoPim Laravel PIM

10.5k2.4k](/packages/unopim-unopim)[bkwld/croppa

Image thumbnail creation through specially formatted URLs for Laravel

506516.3k29](/packages/bkwld-croppa)[laravel-at/laravel-image-sanitize

A small but handy package to prevent malicious code execution coming into your application through uploaded image files.

33866.8k](/packages/laravel-at-laravel-image-sanitize)[october/rain

October Rain Library

1601.7M83](/packages/october-rain)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
