Hello everyone, I am trying to automate a task through a website, but I have no idea how to modify an Ai file, since all I need is to identify a text box and change its content to create the task, since On the desk if possible I don't know if I will be dreaming very loud.
Try to open a file in notepad but only the metadata is understood 😞
Notepad wont help as that part ofcode is in Hexadeciamal, you need Illustrator. You may need to explain your workflow andwhy you don't have illustrator installed on where you wish to edit. W amy be abel to come up wth a creative solution for you. Do you have Acrobat DC you can use the pdf format.
what I want to do is create a web system, where I upload an ai file and modify its content (explicitly only text boxes) and export it in ai again
Technically at this moment, officially, you can only do this legally when it's 'inside' your own company and the people who are using your web service are not every customer in the world.
That said, you certainly can rig up an autonomous computer and have a PHP or Node or ASP website on it, listening for calls at a url of some kind. With those server-side technologies it is possible to open up an Illustrator and run a JSX script in it, export and download the file back to the user. However, Illustrator is but a desktop application that is not really conducive to reliable cloud processing. Even in a simple case of text boxes, maybe you will one day allow users to provide own templates with a simple text box - but what happens when a font is not found? Illustrator does not have a good way of doing a lot of what we are used to in the UI, differently to accommodate cloud-service type needs.
In the example of a non-found font, a script which may be meant to process incoming requests 1000 times per hour will be hung up because of this dialog box and you will have to do who-knows-what to deal with such things. The simplest way would be to strictly control your assets and such, but even then unpredictable desktop Illustrator errors may occur. Sometimes my Illustrator gets laggy and needs a good restart, and I choose to shut it down by the time I get really annoyed - maybe it's just my computer. But what you will need to consider is how many pitfalls the typical desktop experience encompasses and then estimate the difference between that and the quality of the kind of web service you desire.
And, having said all of the above, I will say it's totally possible and could be an enjoyable project as you begin to see magical remote-controlled results happening. It may be slow and prone to issues but if successful you will get all the rich Illustrator features over the web! I'd watch it if your system got really really successful because that's when they start coming after you with the legal stuff.
Thank you very much for your answer, imagine that the solution would be to use a jsx and the illustrator, but I needed to know if it was possible to do it directly with some web language, to which you are absolutely right, thank you very much for giving an answer.
I did an experiment several years ago running a JSX in desktop InDesign on a Mac.
PHP -> shell command -> run osascript -> run JSX in InDesign -> get result of JSX (written file location) -> return file resource in response.
In my test html page on another computer I went to the website being served from my mac and used a form text input to specify a custom string. After a second, a PDF was downloaded containing my custom string as placed by the JSX script. Not gonna lie, it was pretty neat. I hope to work some day with some clients who want this on their intranet for internal use, because it can be great as a business feature for various places - provided they accept the responsibility of manually checking their autonomous work stations periodically. Of course, if using InDesign or looking to accomplish the same tasks that can be accomplished in InDesign, I'd suggest using ID Server - which I'd also like to work with some day.
Of course it’s possible. Heck, you can run an HTTP server in a CEP panel if you really want (but if you don’t appreciate how dangerous this could be then you absolutely shouldn’t be doing it):
The practical questions are 1. is it cost-effective, and 2. does it violate Adobe’s licensing terms?
Regarding licensing restrictions, start here:
As for cost-effective, speaking from my own past experience building an intranet-hosted AI workflow server†: 1. probably not, and 2. see licensing restrictions.
As far as an implementation goes, you can either whip up something quick-n-dirty in a week to run on an old desktop machine on a nearby desk, or spend months developing a robust, fault-tolerant, load-balancing system to host on a shiny rack in your server room. The first (which is doable with modest web and AI scripting skills) will regularly fall over, requiring regular manual nursing (hence the nearby desk). The second (which demands experienced web and automation developers) can provide its users with a reliable web service, once you’ve identified all the different problems that AI will throw up (modal dialogs, scripting bugs, internal AI errors that occur with prolonged use) and written code to detect and recover from those failures automatically. Both, IME, are a pain.
So unless you’re developing it for in-house use in a large graphics studio where 1. there’s a high-volume of work, and 2. the automated work is too time-consuming for operators just to run scripts on their own desktops (which is the simple and obvious solution), it really isn’t an effective use of anyone’s time. (The automation system I built as a followup to that intranet-based workflow server ran as a standalone desktop app on individual users’ machines, driving their copy of AI directly. It was a much more satisfactory solution.)
That said, there is big money to be made selling and/or running customer-facing artwork automation servers (independent of whether or not they actually meet users’ needs). Kallik and Chili Publish are typical B2B products being sold to clients that wish to automate their own artwork production. (Kallik uses its own PDF composition engine; Chili runs atop InDesign Server.) And Moonpig is a classic example of variable artwork production (greetings cards, etc) being sold as a B2C product. (I don’t what Moonpig use but assume it’s custom-built PDF-based system.) But you’re not going to break into that field running atop AI because the standard licensing terms do not allow it; not unless you’re big and rich enough to negotiate a one-off licensing deal with Adobe enterprise. (And if you are that big and rich you’ll just license ID Server or, more likely, roll your own so you own your IP outright and aren’t dependent on a third-party vendor or their twitchy desktop apps.)
So, again, if you want specific advice then please describe what type of artwork you’re looking to produce and for what audience. Otherwise, my general advice is: don’t bother. It might sound good in theory but it’s a waste of time in practice; and whatever it is you’re trying to do there are better ways to achieve it.
† Linux VM running an HTTP-based job-queue service farming out work to several OS X VMs running AI. As a technology it was quite impressive. As an ROI, not so much.
thanks for the detailed explanation.
For what purpose? Are you wanting to produce business cards over your company intranet, or are you trying to be the next Moonpig? If you want detailed advice you’ll have to tell us more about the work itself. Otherwise, some general pointers:
As Vasily says, 1. the AI license does not allow exposing AI as a public web service, and 2. running a desktop app like AI on a headless server is a pig to make reliable. Adobe will advise you to use InDesign Server which is designed for this sort of use, but whether that fits your needs and budget is for you to determine.
Alternatively, if your layout needs are very simple and limited to a small number of fixed templates, you might build a custom solution on top of an existing free/paid PDF or SVG generator library. That’s a common (if inflexible) approach for generating standard documents such as PDF invoices. Or, if you require more complex layouts but aren’t tied to AI specifically, you might build a custom solution on top of a Linux-friendly automatable app such as Scribus or Inkscape.