Copy link to clipboard
Copied
Have an annoying issue hopefully somebody can shed light on. When we activate fonts using font management software, work on a file, close the file and then deactivate those fonts, if we open the file again without turning the fonts back on, the file will load without giving a missing font warning and substitute the fonts to myriad. In a few test, the fonts were still open, and no substitution occured, BUT, random blocks of type were inexplicably empty. When the file gets reopened with fonts reactivated or if Ilustrator is restarted, everything behaves normally.
This was tested on os 10.5.8 on multiple machines using Illust CS4, Suitcase, Universal Type Server and Font Explorer X. Test were made both before and after using Font Nuke to clean font caches to the same effect.
Anybody have any idea how to prevent this behavior? I don't want Illustrator to substitute fonts without warning me that fonts are missing....ever. If it must, can I have it substitute to wingdings or chinese characters or something that will be a bit more obvious than myriad?
Copy link to clipboard
Copied
If you're not getting any Warning, I would go to Preferences and Reset All Warning Dialogs.
Copy link to clipboard
Copied
Yeah, this is very big and money cost problem, happened to me a few times and couldnt find and answer. To try to prevent this I did this two posible options, but is not perfect...
1. There is an option under the page setup uncheked by default named "Highlight substitude fonts" so you have to check this option for every document you have and make, what a nightmare, this must be checked by defalut, please adobe team...!
2. Also yo can try to change the default font following this steps, another nightmare because not always work
To change the default font for Illustrator CS4
Copy link to clipboard
Copied
If I may add some other suggestions besides what Tom & Mario have said:
Check to see if your Illustrator has any auto-activation plugs installed, such as what Suitcase adds.
I'm a firm believer in not using any auto-activation stuff, and driving my own car. One never knows what those things do.
You claimed that you tested this with Suitcase, Universal Type server and Font Explorer. Are these on different work stations or all on one computer? You're asking for trouble if you have more than one font management software installed on one machine; they could be conflicting with each other. That goes for Mac's own Font Book.app. (Either trash this program or .zip it up and trash it's preferences) Use only one!
You can also search your computer and delete any old "adobefnt*.lst" files (with * being a number). These are list files that Adobe uses, but are like preferences that you can safely delete and they will be rebuilt.
Here is a link that you may also find helpful for font troubles:
http://kb2.adobe.com/cps/327/327791.html
and I've found this piece by Kurt Lang invaluable:
Copy link to clipboard
Copied
Russell
Totally agree with you...
Some times when a duplicated font exists (and with a different name) it causes a lot of errors..
Copy link to clipboard
Copied
To answer some questions.
Auto font activation was turned off and plugins removed.
Tests were performed on three machines. No duplicate font managers (aside from font book) were used. Font caches were nuked.
My guess is that this behavior effects everybody.
Russell, will you test it please? Open a font set in your font manager of choice (not font book!). Open an illustrator document that uses some of those fonts. All works good? Great. Now close the illustrator document. Close the font set in your font manager. Do not restart illustrator. Open the document you just had open. What happens? Technically the fonts should be turned off. Did you get an error? Any substitution? Did the fonts open as if they were still active? Any empty type blocks.
If anybody else would like to test this following the above directions I would appreciate it!
Copy link to clipboard
Copied
(Using Extensis' Universal Type Server and Client, CS3 and OS 10.5.8)
I follow your directions, and when I reopen the file (font auto-activation is Off and I have manually closed the fonts in UTS), the fonts are off in Illustrator and I get no error messages. The fonts have been replaced by Myriad Pro Regular, which is what I expected to happen.
(edit)
Ah, I see what you mean about getting no Missing Fonts warning now.
And when I go to Find Font, it does show the fonts as missing.
Copy link to clipboard
Copied
Worse than that, in a couple instances the fonts did not substitute but type blocks for certain fonts were empty. Of course if an operator doesn't notice since Myriad is so very generic (and we open and close jobs and font sets all through the day)... well... Mario is right. Big money and headache.
From a production standpoint, not particularly happy with this behavior. I hope somebody here has a magic bullet.
Copy link to clipboard
Copied
(and we open and close jobs and font sets all through the day)
Why do you need to do this? You can have hundreds of fonts open simultaneously. Seems like what you are possibly saving minimally on the one hand you are losing big time on the other.
Copy link to clipboard
Copied
Good question.
Sometimes our jobs use the same font but by different foundries. In order to ensure the right font gets used we have gotten in the habit of only having the set open for the job we are working on.
Copy link to clipboard
Copied
I can't necessarily help with the initial problem as on my OSX 10.5.8 machine with CS3 I always get a missing font warning when I open an AI file with needed fonts not activated on my machine, both with auto-activation plug-ins enabled or disabled. So I'm not sure why that warning would no longer be appearing in some cases, and whether Illustrator has some preference that controls it.
However, regards auto-activation, Extensis developed a unique technology called FontSense specifically for this reason of duplicates, missing fonts and precision in auto-activation. We have a PDF that explains how this technology works at http://dl.extensis.com/downloads/SC/EN/P/Why-Font-Sense-0809-EN.pdf, but essentially it generates unique ID numbers for every single font you add into our software, that are generated from the metric of the fonts, so that wherever the font goes it will always get the same ID number so long as it's not modified. These numbers ensure that if you try to add exactly the same font into our software twice, we don't create duplicates in our software, but the exact same font file will always generate the same ID wherever our software is in use. If the metrics (Outline, Kerning, Width etc.) are different however, those two fonts will get different FontSense IDs, even if their foundry, name and version information are an exact match. With FontSense we therefore go that one step further to ensure 100% precision when it comes to managing duplicates. What's also great is that you can see all the ID numbers in our software (they're not hidden under the hood), so if you want to have precise 'manual activation'
Our auto-activation plug-ins embed those IDs into the headers of your Illustrator & InDesign documents so that when you reopen them you can be 100% sure that exactly the same version of the font is auto-activated as you were last using, even if you have many named duplicates of the same font, and even if it's two versions of the same font from the same foundry with the same embedded version number information! However, if you do not have the exact FontSense ID of font required, our plug-in has it's own 'Missing Fonts' dialogue to let you know that you are missing certain fonts (just don't let the plugin 'pick the best match'), and to let you choose whether to replace with alternative versions of the same font or not. So possibly that could be a solution to your issue of Illustrator not warning, is if you utilise the font management plug-ins Missing Fonts warning instead?
Copy link to clipboard
Copied
Chris,
Open font set (auto-activation turned off). Open document that uses fonts. Close font set. Close document. Do not restart Illustrator. Open document. What kind of warning are you getting again? Well let it come from here. Better not close font sets unless you restart Illustrator. Now you have been warned.
I know I speak for a large group in the printing industry when I say that we just don't trust auto-activation. If just one job goes south, then it's not worth it. In UTS 1 I have observed auto-activation fail with no warning. Perhaps UTS 2 is better in this regard. I don't know.
For the record, I have no problems with Extensis products. I even liked suitcase and was annoyed that we had to switch over to UTS from server when snow-leopard became mandatory on i-5 macs. I just think that 100% reliable auto-activation is pie in the sky.
Copy link to clipboard
Copied
Try it:
// fonts to replace
var substitutions = [
['Myriad Pro', 'Regular', 'Times', 'Regular'],
];
// turn the substitutions into real fonts
var subsRight = [];
var fontCount = textFonts.length;
var subsCount = substitutions.length;
for (var i = 0; i < fontCount; i++) {
var font = textFonts;
for (var j = 0; j < subsCount; j++) {
if (substitutions
[2] == font.family && substitutions [3] == font.style) { subsRight
= font; }
}
}
function getAllFiles(folder) {
var fileList = [];
function recurse (folder) {
var files = folder.getFiles("*.ai");
for (var i = 0; i < files.length; i++)
fileList.push(files);
var folders = folder.getFiles();
var len = folders.length;
for (var i = 0; i < len; i++) {
if (folders instanceof Folder) {
recurse(folders);
}
}
}
if (folder != null && folder instanceof Folder)
recurse(folder);
return fileList;
}
var sourceFolder = Folder.myDocuments.selectDlg( 'Select the folder with Illustrator files in which you want to replace fonts');
var files = getAllFiles(sourceFolder);
for ( var i = 0; i < files.length; i++ ) {
var file = files;
var doc = app.open(file);
// replace the font
var frames = doc.textFrames;
for ( var j = 0; j < frames.length; j++ ) {
var ranges = frames
.textRanges; for ( var k = 0; k < ranges.length; k++ ) {
var range = ranges
; for (var f = 0; f < subsCount; f++) {
if (range.characterAttributes.textFont.family == substitutions
[0] && range.characterAttributes.textFont.style == substitutions
[1]) { range.characterAttributes.textFont = subsRight
; }
}
}
}
redraw();
}
Copy link to clipboard
Copied
Since no answer was correct and I was having the same trouble and only found this thread, even if the original post is 9 years old, here's the answer for anyone who needs it:
Go to "Type > Resolve missing fonts" and in the dialog, uncheck "Don't show on document open"
Find more inspiration, events, and resources on the new Adobe Community
Explore Now