ReVanced / revanced-branding

🎨 Brandings, guidelines, kits and assets of ReVanced
https://revanced.app
GNU General Public License v3.0
83 stars 10 forks source link

Convert project files to conventional format #4

Open oSumAtrIX opened 1 year ago

oSumAtrIX commented 1 year ago

Issue

Currently the project files are saved in an unconventional format .afdesign which can only be opened ny Affinity Designer.

Solution

Convert all project files to a conventional format such as .psd or .ai.

Motivation

A minority owns Affinity Designer, but Affinity Designer can open other formats such as .psd and .ai.

Ushie commented 1 year ago

Why not SVG?

oSumAtrIX commented 1 year ago

3 for example demonstrates why it is not a good idea to use rendered files as source files. See it this way, you compile your code to a binary. While it might be readable and technically usable when decompiled, you can not infer the full source of the binary easily. The same way #3 demonstrates, how the "compiled" SVG file might lose aspects of it's original source.

oSumAtrIX commented 1 year ago

Seems like exporting to .ai is not an option for Affinity Designer. ~~Alternatively, this exists: Export to `.psd` From there the project file can be converted to .ai.~~

kazimmt commented 1 year ago

Seems like exporting to .ai is not an option for Affinity Designer.

Just convert to .eps

oSumAtrIX commented 1 year ago

Is eps "lossless" in terms of editability? Can project files be converted to eps and back to project files without any loss?

kazimmt commented 1 year ago

Is eps "lossless" in terms of editability? Can project files be converted to eps and back to project files without any loss?

YES

kazimmt commented 1 year ago

But gradients will convert to Raster Image That's why i made it manually in my last PR

oSumAtrIX commented 1 year ago

Then it is not lossless.

ArjixWasTaken commented 1 year ago

3 for example demonstrates why it is not a good idea to use rendered files as source files. See it this way, you compile your code to a binary. While it might be readable and technically usable when decompiled, you can not infer the full source of the binary easily. The same way #3 demonstrates, how the "compiled" SVG file might lose aspects of it's original source.

What if you just treat the SVGs as the source files, and use a program to convert all text to shapes/paths? That way you have SVGs with text, but distribute SVGs with compiled text.

I don't have the font used, but it is possible to convert text to SVG using a specific font image

TL;DR: You want to do .ai => .svg or smth, but you fail to realize that you can do .svg => .svg

oSumAtrIX commented 10 months ago

SVG files are not source files. They are rendered assets. They can be lossy in terms of the source that produced them. A project file has to be present for that reason that acts as the source and origin of the assets, which are licensed under GPLv3.

ArjixWasTaken commented 10 months ago

Yes but they are not a raster format, so the loss is not in quality.

oSumAtrIX commented 10 months ago

The loss is in information, not quality.

oSumAtrIX commented 10 months ago

It turns out that there is no practical way to convert the project files to conventional source formats such as .ai or .psd. Technically speaking, a specification of the logo can be published, which can be used to recreate the source files in any format.

ArjixWasTaken commented 10 months ago

The loss is in information, not quality.

One could debate that the loss only happens when using an SVG editor.

Handwritten SVGs don't have that issue.

But I do understand your point.

Ushie commented 10 months ago

What's the issue in using SVGs as source files? there are programs like Inkscape which specialise in this and they are as dependable as any other editor or format

oSumAtrIX commented 10 months ago

The problem isn't about SVGs particularly; the information about the original source is lost when rendered as SVG. As an example, the source font as a form of information delivered by the source is lost when rendering the SVG as paths.

oSumAtrIX commented 10 months ago

Besides, the SVG files are treated as rendered assets like compiled code. Your argument is similar to saying that you can still read compiled code to its fullest since you can disassemble it, but the fact remains that the source is lost.

ArjixWasTaken commented 10 months ago

The problem isn't about SVGs particularly; the information about the original source is lost when rendered as SVG. As an example, the source font as a form of information delivered by the source is lost when rendering the SVG as paths.

SVGs are just plain XML files, when handwritten you can place comments like that.

oSumAtrIX commented 10 months ago

I am aware, as I explained, that the issue isn't the SVG files particularly. You can also simply write your compiled programs bit by bit instead of compiling their source.

ArjixWasTaken commented 10 months ago

I am aware, as I explained, that the issue isn't the SVG files particularly. You can also simply write your compiled programs bit by bit instead of compiling their source.

Ah yeah, asm supports comments

This is golden

oSumAtrIX commented 10 months ago

That being said, the source should be delivered in a traditional and sane format such as explained in the original issue.