Jump to content
TonyB

Affinity Designer feature roadmap

Recommended Posts

And, with regards to documenting their file format, which (as I understand) they were compelled to do to avoid monopoly rulings, they have been careful to document the structure, but avoid the describing the data and possible values (which makes it pretty much useless).  Text engine data, in point... and anything that uses a "descriptor" as a data blob, for which they give no details at all.

 


SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB

Share this post


Link to post
Share on other sites

I was a user of FH. Pity its drawing model was not brought into AI, but how exactly was the whole acquisition of the multiple companies they have purchased and the killing off of certain aspects of them a monopolistic thing?


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites
1 minute ago, MikeW said:

I was a user of FH. Pity its drawing model was not brought into AI, but how exactly was the whole acquisition of the multiple companies they have purchased and the killing off of certain aspects of them a monopolistic thing?

Freehand was a great app!

 

Share this post


Link to post
Share on other sites

 

2 minutes ago, AffinityAppMan said:

Adobe can only be monopolistic if we let them.  The solution is not to support their products, and the scam of the forced monthly subscriptions, by not using their software.

Adobe became monopolistic because a lot of people made their products the main products to use by buying them. This is not the case anymore ( since we have good alternatives )  and we can change this.  We can make OTHER software be the standard by supporting the developers and educating other about other good Adobe alternatives.  Serif is making this possible and that is good for the industry.  Is amazing how many people still think that Adobe is the only game in town, because they don't know about Affinity Photo or Designer. ( and other software for the matter ).

 

Adobe's (mainly early) marketing was brilliant. They got into the schools early and were pervasive. Which pretty much set up what they can do today. But it isn't monopolistic.


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites

Well, I think you just answered your own question, surely???


SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB

Share this post


Link to post
Share on other sites

More like "Dominant position" instead of "Monopoly". Also, some abuses while having the upper hand and plenty of the Market share.

Best regards!


You'll never know what you can do until you get it up as high as you can go!   

AMD FX 8350 :: Radeon HD 7870 :: Windows 10 ::  http://mithferion.deviantart.com/

Oxygen Icons :: Free Quality Fonts :: Public Domain Pictures :: iOS 11 Design Resources :: iOS App Icon Template :: The Secret of High Quality Art

Share this post


Link to post
Share on other sites

Also, from what I gather, Macromeadia was not really interested on keeping FreeHand as a priority...


You'll never know what you can do until you get it up as high as you can go!   

AMD FX 8350 :: Radeon HD 7870 :: Windows 10 ::  http://mithferion.deviantart.com/

Oxygen Icons :: Free Quality Fonts :: Public Domain Pictures :: iOS 11 Design Resources :: iOS App Icon Template :: The Secret of High Quality Art

Share this post


Link to post
Share on other sites
3 minutes ago, Ben said:

And, with regards to documenting their file format, which (as I understand) they were compelled to do to avoid monopoly rulings, they have been careful to document the structure, but avoid the describing the data and possible values (which makes it pretty much useless).  Text engine data, in point... and anything that uses a "descriptor" as a data blob, for which they give no details at all.

 

 

They evidently satisfied the ignorant court system. But that ruling (those rulings, really), shouldn't have ever been made in the first place.

 

How would Serif like it if the courts demanded y'all document the Affinity file format. To what degree would Serif comply? Answer: with as little information as possible. How is that any different?


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites
1 minute ago, MikeW said:

I was a user of FH. Pity its drawing model was not brought into AI, but how exactly was the whole acquisition of the multiple companies they have purchased and the killing off of certain aspects of them a monopolistic thing?

They bought their only credible competitor in its entirety and killed off all but a handful of their applications, the remaining applications (Flash, dreamweaver and coldfusion) were in markets attractive to Adobe at the time.

 

Calling Adobe monopolistic isn't even really a criticism, it's just what large businesses do.

 

Share this post


Link to post
Share on other sites
2 minutes ago, Ben said:

Well, I think you just answered your own question, surely???

 

No, I didn't.

 

Serif could take the same approach. Sure, these days it would be a tougher hill to climb. But schools are beginning to offer different applications in their courses. As well, some schools are divorcing themselves from specific applications in their design classes (as they ought).


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites

I think this is starting to become somewhat rhetorical.

 

Let's leave it there, shall we.


SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB

Share this post


Link to post
Share on other sites
Just now, AshTeriyaki said:

They bought their only credible competitor in its entirety and killed off all but a handful of their applications, the remaining applications (Flash, dreamweaver and coldfusion) were in markets attractive to Adobe at the time.

 

Calling Adobe monopolistic isn't even really a criticism, it's just what large businesses do.

 

 

There were then, and are yet today, competitors. They just need marketing savvy and some good ol' fashioned luck.


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites
Just now, Ben said:

I think this is starting to become somewhat rhetorical.

 

Let's leave it there, shall we.

 

Sure. It's the easiest way to not argue logically and historically.

 

You did bring it up...


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites

ok......................................


SerifLabs team - Affinity Developer
  • Software engineer  -  Photographer  -  Guitarist  -  Philosopher
  • iMac 27" Retina 5K (Late 2015), 4.0GHz i7, AMD Radeon R9 M395
  • MacBook (Early 2015), 1.3GHz Core M, Intel HD 5300
  • iPad Pro 10.5", 256GB

Share this post


Link to post
Share on other sites
18 minutes ago, Ben said:

...Here's the snippet that "describes" the text engine data.

Text Engine Data (Photoshop CS3)

Key is 'Txt2' . Data is as follows:

Text Engine Data

Length

Description

4

Length of data to follow

Variable

Raw bytes for text engine

 

That's it!  Might as well have read "good luck, chumps".  And, this in a specification format document that they were forced to write (by the courts?).  So, that worked then.

Haha, yes it's always pretty hard and very time consuming to deal with that cryptic stuff. :)

Once I did such bloody bits and bytes poking for some Adobe file format and it took me weeks to parse and being able to change text inside their binary format. I recall it was a real nightmare, taking care of byte lengths, LE/BE used both in their format and so on... - Just a little code snippet part here, in order to show the hard way of reading Adobe binary files (...the rest is kept as own private intellectual secret of reverse engineering) ...

...
...
std::vector<unsigned char> process(std::vector<unsigned char> &buffer, std::string &searchString, std::string &replacementString, bool lenientLittleEndianHandling)
{
    if (searchString.length() == 0)
        throw std::invalid_argument("Search string must not be empty");

    std::string txtustring = u8"txtu";
    std::vector<unsigned char> TXTU_BYTES(txtustring.begin(), txtustring.end());
    if (TXTU_BYTES.size() != 4)
        throw std::runtime_error("Internal error: Byte-representation of txtu is not 4 bytes!");

    int bufferLen = buffer.size();

    // narrow to wide string to wstring
    std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
    std::wstring search = converter.from_bytes(searchString);
    std::wstring replace = converter.from_bytes(replacementString);


    // searchstr wide to UTF-16be
    std::wstring_convert<std::codecvt_utf16<wchar_t>> conv1;
    std::string searchBE_u16str = conv1.to_bytes(search);
     // searchwide to UTF-16le
    std::wstring_convert<std::codecvt_utf16<wchar_t, 0x10ffff, std::little_endian>> conv2;
    std::string searchLE_u16str = conv2.to_bytes(search);

    std::vector<unsigned char> searchStringBytesBE(searchBE_u16str.begin(), searchBE_u16str.end());
    std::vector<unsigned char> searchStringBytesLE(searchLE_u16str.begin(), searchLE_u16str.end());
    int searchStringBytesLen = searchStringBytesBE.size();

    if (searchStringBytesLen != searchStringBytesLE.size())
      throw std::runtime_error("Internal error: Big-endian and little-endian UTF-16 encodings of the search string are not the same length!");
    if ((searchStringBytesLen & 1) != 0)
      throw std::runtime_error("Internal error: UTF-16 encoding of the search string does not have an even number of bytes!");

    // replacestr wide to UTF-16be
    std::wstring_convert<std::codecvt_utf16<wchar_t>> conv3;
    std::string replaceBE_u16str = conv3.to_bytes(replace);
     // replacestr wide to UTF-16le
    std::wstring_convert<std::codecvt_utf16<wchar_t, 0x10ffff, std::little_endian>> conv4;
    std::string replaceLE_u16str = conv4.to_bytes(replace);

    std::vector<unsigned char> replacementStringBytesBE(replaceBE_u16str.begin(), replaceBE_u16str.end());
    std::vector<unsigned char> replacementStringBytesLE(replaceLE_u16str.begin(), replaceLE_u16str.end());
    int replacementStringBytesLen = replacementStringBytesBE.size();

    if (replacementStringBytesLen != replacementStringBytesLE.size())
      throw std::runtime_error("Internal error: Big-endian and little-endian UTF-16 encodings of the replacement string are not the same length!");
    if ((replacementStringBytesLen & 1) != 0)
      throw std::runtime_error("Internal error: UTF-16 encoding of the replacement string does not have an even number of bytes!");
    
    std::vector<unsigned char> clone_buffer(buffer);

    for (int curIndex = 0; curIndex < (bufferLen - searchStringBytesLen); curIndex++)
    {
      bool originalMatchBE = false;
      if (matchByteSequence(buffer, curIndex, searchStringBytesBE))
        originalMatchBE = true;
      else
        if (!matchByteSequence(buffer, curIndex, searchStringBytesLE))
          continue;

      // Check if shifting forward by one byte if the opposite endian match
      // This is checked because for regular ASCII characters, a big-endian sequence will usually match little-endian at curIndex+1, and the file format uses both endians...
      int matchIndexBE = -1;
      int matchIndexLE = -1;
      if (originalMatchBE)
        matchIndexBE = curIndex;
      else
        matchIndexLE = curIndex;
      
      if ((curIndex + 1) < (bufferLen - searchStringBytesLen))
      {
        // Check the opposite endian
        if (matchByteSequence(buffer, curIndex + 1, originalMatchBE ? searchStringBytesLE : searchStringBytesBE))
        {
          if (originalMatchBE)
            matchIndexLE = curIndex + 1;
          else
            matchIndexBE = curIndex + 1;
        }
      }

...
... some 800 lines of more custom code omitted here
...

 


☛ Affinity Designer 1.6.1 ◆ Affinity Photo 1.6.7 ◆ OSX El Capitan

Share this post


Link to post
Share on other sites

It is monopolistic.... Like Autodesk has behaved, too (purchasing XSI to later on killing it, as they did not want that strong software competing, and a ton more... (or even just the FBX format having the whole stock 3D art market for animation exchange and changing crazily the format constantly, etc))... In my book, purchasing every possible company (a ton of us really disliked what happened with Freehand and also the entire Macromedia) and product out there to make a shadow over your competition, just because you have the money and market position to be able to do it, is monopolistic. Microsoft has been accused of that, a ton of times with a reason (has done that a lot), other times not so much. Competing with your own applications, making them better (not always all the effort put into that) leaving some air for the competition to breath is fair in my book... annihilating any possible competitor when it is possible....sorry, that's a monopoly.

 

 


Affinity Designer and Affinity Photo licenses, Windows 7, i7  860 (2009) 2.8 GHz. 4c/8t, 8 GB RAM, GTX 1050 2 GB, HD 7200 RPM Seagate Barracuda.
Affinity PHOTO 1.7.x ....AMAZING. Getting there for painting. But "ALT" color picking needs LOVE. It's now the only show-stopper for painting. PLEASE give it LOVE ;) .
Or your coding magic.

Share this post


Link to post
Share on other sites

We might discuss about the actual term but I can only be fully agreeing with several posters (btw, just run out of likes today, srry...) here: it is not fair, and is in our hands (amateurs and pros) to change that by simply using more and more tools like Affinity's suite (to be able to achieve all my tasks, I use a collection of alternative software (I expect this to be minimized as Affinity evolves/improves, too), tho. But this is also because I'm talking about disciplines not even fully covered by Adobe Suite itself, neither Affinity)


Affinity Designer and Affinity Photo licenses, Windows 7, i7  860 (2009) 2.8 GHz. 4c/8t, 8 GB RAM, GTX 1050 2 GB, HD 7200 RPM Seagate Barracuda.
Affinity PHOTO 1.7.x ....AMAZING. Getting there for painting. But "ALT" color picking needs LOVE. It's now the only show-stopper for painting. PLEASE give it LOVE ;) .
Or your coding magic.

Share this post


Link to post
Share on other sites

What really is in need here is a common format for all software companies to use. Keeping all layers/text/colors together while importing/exporting paintings/pictures to another software. But that would probably take all companies to play the game. I don't see that happening.

Adobe and Autodesk have been around for a long time and have had time to hone their skills and software. Serif with Affinity is a basically new software. Serif has a lot of irons in the fire. What it has now, works well. With time, they will hone their own software to play with the best. I know money has a lot of the influence on what is going on there. As do all companies. For now, we can support their effort.

Believe me when I say....." I am supporting a lot of developers out there." Ha!

KEEP UP THE GOOD WORK GUYS, I AM PATIENT.....some times :$


Gregg

OS X Version 11.0.3 iMac 27" 3.2 GHz Intel i5 16 GB 1867 MHz DDR3  Wacom Intuos 5

Share this post


Link to post
Share on other sites
2 hours ago, v_kyr said:

Haha, yes it's always pretty hard and very time consuming to deal with that cryptic stuff. :)

Once I did such bloody bits and bytes poking for some Adobe file format and it took me weeks to parse and being able to change text inside their binary format. I recall it was a real nightmare, taking care of byte lengths, LE/BE used both in their format and so on... - Just a little code snippet part here, in order to show the hard way of reading Adobe binary files (...the rest is kept as own private intellectual secret of reverse engineering) ...

 

 

 

they are going Variable Fonts [64 000 axes] now:

 


Core i7 4770 - AMD R9 290x (Driver 18.2.3) - 32GB RAM - Asus z87-Pro - Asus Phoebus - Windows 7 x64 ultimate SP1 (monthly rollup)

Share this post


Link to post
Share on other sites
2 hours ago, Ben said:

 

Sounds like you need to use Adobe, but just want to cut your costs?

 

We have been very clear that we never intend to be a cheap cog in an otherwise Adobe tool chain.  Yes, we offer import/export to PSD, but it is never going to work in a repeated import/export cycle just due to the nature of the way we have to change data from PSD to suit our document model.  PSD is a working document format, as is our afdesign format.  Working document formats are intended for non-destructive lossless saving of your document, but flipping between them is always going to produce artefacts.  Work in one format, then when you are done, you export to a final format, such as JPEG or PDF.

 

Now, if you are using Affinity because it offers a better productive experience, perhaps you should be talking to your clients to move over also?

 

I use Affinity mainly because it makes sense as far as UX and I love the interface. PS is like scrathing my ear with my foot, and the interface is not friendly in my opinion. I did convince my colleagues at the current company I work for to use Affinity, but not sure it will work for all clients :) But maybe I will never leave this company and I will never need PS.

 

I don't care much about cost, I would have happily paid a lot more for Affinity :) 

Share this post


Link to post
Share on other sites

it will not work like 100% interchangeable between Affinity and Adobe [PSDs], i guess its similar like working/opening MS Office documents in Libre Office...

 

im transfering my all work from Adobe to Affinity Photo right now and im too paranoid to use PSDs, so im exporting png layer by layer and if project is more simple then im re-doing it completely again in affinity its bit time consuming but not that much...

 

If font is present, then im make it again in affinity and tweak it to look close as possible to original PSD [tracking, line height...] but Crisp, Strong, Sharp and Smooth modes are missing :(  thats why that OpenType variable fonts would be great to have, i could have tweak it even closer to original file from Adobe

 

 

 


Core i7 4770 - AMD R9 290x (Driver 18.2.3) - 32GB RAM - Asus z87-Pro - Asus Phoebus - Windows 7 x64 ultimate SP1 (monthly rollup)

Share this post


Link to post
Share on other sites
13 hours ago, GRScott said:

What really is in need here is a common format for all software companies to use. Keeping all layers/text/colors together while importing/exporting paintings/pictures to another software. But that would probably take all companies to play the game. I don't see that happening.

 

we can call it OpenRaster, now someone has to resurrect it from never ending draft :D


Core i7 4770 - AMD R9 290x (Driver 18.2.3) - 32GB RAM - Asus z87-Pro - Asus Phoebus - Windows 7 x64 ultimate SP1 (monthly rollup)

Share this post


Link to post
Share on other sites

Hey just looked at the roadmap, and was wondering how long until the warp tool is implemented? I could really do with it right now:4_joy:

Brilliant work so far, keep it up!

Share this post


Link to post
Share on other sites
3 hours ago, MikeW said:

... but how exactly was the whole acquisition of the multiple companies they have purchased and the killing off of certain aspects of them a monopolistic thing?

It is not necessarily illegal to become a monopoly but at least according to U.S. law it is illegal to extend or maintain it by creating artificial barriers with the intent to restrain fair competition in the same or related markets. There are a lot of grey areas in the law, but such things as buying out your direct competitors, particularly if you effectively kill off their major products, is generally considered a violation unless certain conditions are met.


Affinity Photo 1.6.7 & Affinity Designer 1.6.1; macOS High Sierra 10.13.6 iMac (27-inch, Late 2012); 2.9GHz i5 CPU; NVIDIA GeForce GTX 660M; 8GB RAM
Affinity Photo 1.6.9.81 & Affinity Designer 1.6..2.24 for iPad; 6th Generation iPad 32 GB; Apple Pencil; iOS 12.0

Share this post


Link to post
Share on other sites

There were plenty of competitors then as now, R C-R.

 

What they did/do isn't seen by the courts as a monopoly. At least not so as to go after them then or now for that specifically. Businesses buy startups and competitors frequently for specific targeted acquisitions and bin the rest every day.

 

 


My computer is a nothing-special Toshiba laptop with unremarkable specs running Windows 10 64-bit.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×