Wie passe ich die Textfeldgröße an den Text an?

Ich möchte die Zeichenfläche an ausgewählte Grafiken anpassen (zwei Textfelder) – die Textfelder sind größer als der darin enthaltene Text – wie passe ich sie an (schrumpfe), damit sie meinen Text eng umschließen?

Illustrator-Version - CS5

Antworten (4)

Dies ist jetzt eine integrierte Funktion ab 2014 in Adobe Illustrator CC. Sie finden es unter Typ > Bereichstypoptionen > Automatische Größe.

In CC19 sehe ich diese Option nicht. Hat es sich bewegt? @matt m.

Illustrator hat (ab 5.1) keine praktische Funktion zum Anpassen des Rahmens an den Inhalt wie InDesign. Wählen Sie einfach den Textrahmen aus und ziehen Sie die Griffe nach innen, bis der Rahmen eng am Text anliegt.

Dafür gibt es ein Skript. (Dies ist wahrscheinlich das Skript, auf das Joonas Kommentar anspielt - funktioniert in CS6 einwandfrei).

(Um die Zeichenfläche nach dem Anpassen des Textfelds anzupassen, verwenden Sie das Zeichenflächenwerkzeug und klicken Sie auf das Textfeld.)

Mit freundlicher Genehmigung von Kelso Cartography , die viele großartige Skripte haben (ihre Skripte zum Wechseln von Punkt- und Bereichstext sind ebenfalls sehr zu empfehlen), können Sie das Skript „Text an Inhalt anpassen“ hier herunterladen . Es macht genau das, was es auf der Dose sagt - skaliert (nach oben oder unten) den Textrahmen eines Textbereichs, um ihn an die Höhe der Textzeilen anzupassen.

Hier ist ein 'Vorher' und 'Nachher' dieses Skripts, plus sein Cousin, ebenfalls von Kelso Cartography, Fit Text To Content Width , Ändern der Größe eines Textrahmens, um ungenutzten Platz zu entfernen (Bild mit freundlicher Genehmigung von Vectips ):

Geben Sie hier die Bildbeschreibung ein

Hier sind die Codez für den Fall, dass der Link ausfällt. Alle Kredite an den ursprünglichen Autor. Speichern Sie es einfach als .js-Datei in Ihrem illustrator/presets/[some language code]/scriptsOrdner und starten Sie Illustrator neu:

// FitToTextContent_Depth
// Nathaniel Vaughn KELSO
// Last modified: 2008.March.29
// Created: 2007.July.8 
// at Hyattsville, MD
// Version 2
// (c) nvkelso2008@gmail.com (but remove the 2008 bit)
// DESC: Fits the text frame (rectangular path shapes only!) to fit the text content. 
// DESC: Will either shrink or expand the depth of the text box as appropriate. 
// TODO: Extend to work with text on a line (PATHTEXT)
// TODO: watch for 4 point paths that are not rectangular
// TODO: watch for 4 point paths that are rotated

var includeExtraLines = 0.5;

if(documents.length > 0) {
    doc = activeDocument;
    mySelection = activeDocument.selection;

    // If there are enough to process
    if (mySelection instanceof Array)
    {
        // For each of the selected items
        for(i=0; i<mySelection.length; i++) {
            // That are textFrames
            if (mySelection[i].typename == "TextFrame" && mySelection[i].kind == TextType.AREATEXT ) {
                obj = mySelection[i];

                // We only want to do this on rectangular text areas
                // TODO: Take care of rotation issues from MakePointType script
                if( obj.textPath.pathPoints.length == 4 ) {
                    objTop = obj.top;
                    objLeft = obj.left;

                    // Make the new point type object and locate it
                    // Make sure the new object is in the same Z stacking order as the original
                    copy1 = obj.duplicate(obj, ElementPlacement.PLACEBEFORE);
                    //copy1.move(obj, ElementPlacement.PLACEBEFORE);

                    // now make the text box much bigger, but not absurdly big
                    // TODO: This could be better approximated by itterating thru all the WORDS in the textFrame and 
                    // comparing it to all the WORDS in each of the visible text LINES. Then apply the difference / total words to the scaling
                    if( copy1.height * 10 < 2000 ) {
                        copy1.textPath.height = copy1.height * 10;
                    } else {
                        copy1.textPath.height = 2000;
                    }

                    howManyLines = copy1.lines.length;

                    outlineObject = copy1.duplicate();
                    outlineObject = outlineObject.createOutline();

                    targetHeight = outlineObject.height + includeExtraLines * (outlineObject.height / howManyLines );

                    // Now assign y-axis depth of the point text to the area text box
                    rect = obj.parent.pathItems.rectangle(copy1.textPath.top, copy1.textPath.left, obj.width, targetHeight);
                    copy2 = obj.parent.textFrames.areaText(rect);
                    copy2.selected = true;
                    rect.selected = true;

                    // Always delete these intermediate objects
                    outlineObject.remove();
                    copy1.remove();

                    // Now take care of the end and original objects
                    obj.textRange.duplicate(copy2); 
                    obj.remove();   
                }
            }
        }
    }
}
Wo installiere ich das unter Mac OS X?

Vielleicht möchten Sie den Flächentyp in den Punkttyp umwandeln. Vielleicht kann dir dieses Tutorial helfen.

Während dieser Link die Frage beantworten kann, ist es besser, die wesentlichen Teile der Antwort hier einzufügen und den Link als Referenz bereitzustellen. Nur-Link-Antworten können ungültig werden, wenn sich die verlinkte Seite ändert. - Aus Bewertung