idsulik / php-ass
A PHP library for reading, creating, and manipulating Advanced SubStation Alpha (.ass) subtitle files.
Installs: 7 579
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 1
Open Issues: 0
Requires
- php: ^7.4 || ^8.0
Requires (Dev)
- doctrine/instantiator: ^1.5
- phpunit/phpunit: ^9.0
README
Overview
php-acc
is a PHP library designed for working with Advanced Substation Alpha (ASS) subtitle files. This library allows
you to build, modify, and manage ASS subtitle files programmatically.
Features
- Text Formatting: Easily add and manage various text formatting options such as bold, italic, underline, and strikeout.
- Styling: Apply styles including font, font size, and text color.
- Positioning and Animation: Set precise text positions, animate text with movement, fading, and transitions.
Installation
You can install the library via Composer. Add the following to your composer.json
:
{ "require": { "idsulik/php-acc": "dev-main" } }
Then run:
composer install
Alternatively, you can clone the repository and include the necessary files manually.
Usage
Building Subtitle Text
The EventTextBuilder
class allows you to construct ASS subtitle text with various commands. Here’s an example:
<?php use PhpAss\Builder\EventTextBuilder; $builder = new EventTextBuilder(); $builder ->addPlainText('Normal Text Before') ->addBoldText('Bold ') ->addItalicText('Italic ') ->addUnderlineText('Underline ') ->addStrikeoutText('Strikeout ') ->addFont('Arial') ->addFontSize(24) ->addPrimaryColor('FF0000') ->addSecondaryColor('00FF00') ->addOutlineColor('0000FF') ->addBackColor('FFFF00') ->addOutline(2) ->addShadow(3) ->addAlignment(5) ->addPosition(100.5, 200.75) ->addMove(0, 0, 100, 100, 1, 2) ->addFade(255, 128, 64, 0, 1000, 2000, 3000) ->addTransition(0, 1000, '1.0') ->resetStyle() ->addPlainText('Normal Text After'); echo $builder->build();
Contributing
Contributions are welcome!
License
This project is licensed under the MIT License. See the LICENSE file for more details.