Skip to main content

Parse .ass tags.

Project description

AssTagAnalyzer

Tag analyzer for Advanced SubStation Alpha file. This tool allows to parse .ass tag and manipulate them.

Installation and Update

pip install ass-tag-analyzer

Example

from ass_tag_analyzer import parse_line, ass_item_to_text, Format, AssTagFontName, AssValidTagFontName, AssInvalidTagFontName

# Parse an .ass line
line = parse_line(r"{\an7\pos(158,501)\fnArial\bord0.155884}Example")
print(line)

# Convert line to text
print(ass_item_to_text(line))

# Change how to convert float to string
Format.format_float = lambda number: round(number)

# Reconvert line to text. See how the \bord result is different
print(ass_item_to_text(line))

# Search an tag
for ass_item in line:
    if isinstance(ass_item, AssTagFontName):
        if isinstance(ass_item, AssValidTagFontName):
            print(f'An \\fn tag has been found and the value is "{ass_item.name}"')

        elif isinstance(ass_item, AssInvalidTagFontName):
            # You need to get the style that is applied on the line.
            pass

Result

[
    AssTagListOpening(),
    AssValidTagAlignment(is_legacy_tag=False, _AssValidTagAlignment__alignment=<Alignment.TOP_LEFT: 7>),
    AssValidTagPosition(x=158.0, y=501.0),
    AssValidTagFontName(_AssValidTagFontName__name='Arial'),
    AssValidTagBorder(_AssValidTagBorder__size=0.155884),
    AssTagListEnding(),
    AssText(text='Example')
]
{\an7\pos(158,501)\fnArial\bord0.156}Example
{\an7\pos(158,501)\fnArial\bord0}Example
An \fn tag has been found and the value is "Arial"

Dependencies

Acknowledgments

  • ass_tag_parser I used his library to create mine. I got a lot of inspiration from his work.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ass_tag_analyzer-0.0.5.tar.gz (18.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ass_tag_analyzer-0.0.5-py3-none-any.whl (30.3 kB view details)

Uploaded Python 3

File details

Details for the file ass_tag_analyzer-0.0.5.tar.gz.

File metadata

  • Download URL: ass_tag_analyzer-0.0.5.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for ass_tag_analyzer-0.0.5.tar.gz
Algorithm Hash digest
SHA256 d526d3bff70d6db1946b7c349e79b9fde87c7fc69348b438b3e8962989475814
MD5 3d8c6d2407c9b36a20adeef061d89d6b
BLAKE2b-256 044694e82b85be4be8164ae14d53abfef24cec5013927e5578efa9bbdd829992

See more details on using hashes here.

File details

Details for the file ass_tag_analyzer-0.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for ass_tag_analyzer-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 c64535f4f58a767d59d581ef2394e525d3131870c7fc96510d7690bed89a03a8
MD5 09c6cb32be210f4cb686862b7d086b0a
BLAKE2b-256 d3edcdc7578c496431d4bb1891f7dcc4ecb8a641b5c2adf6ef5a7b14013a6687

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page