Caption setting:Why paragraph style, not object style?

Explorer ,
Apr 21, 2021 Apr 21, 2021

Copy link to clipboard

Copied

Caption setting:

Why paragraph style, not object style?

Its "displacement" is not very easy to use, I generally still need object style to control the caption.

If you can use object styles directly, it's easy? Because object styles can call paragraph styles, there are more settings.

I hope Adobe will pay attention to this problem.

TOPICS
Bug, Feature request, How to, Performance

Views

153

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Apr 21, 2021 Apr 21, 2021

Copy link to clipboard

Copied

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Apr 22, 2021 Apr 22, 2021

Copy link to clipboard

Copied

Not the answer you're looking for - but here's something you can do to change all.

 

In the Caption Setup - set the offset to something like .001234

 

Then use Find/Change and search for Object with the specified offset and apply the object style.

 

 

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Apr 22, 2021 Apr 22, 2021

Copy link to clipboard

Copied

I want to automatically apply the style when generating the caption.

Save one step.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Apr 22, 2021 Apr 22, 2021

Copy link to clipboard

Copied

I understand - but it's not possible - until it's released this is a workaround. 

 

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Apr 22, 2021 Apr 22, 2021

Copy link to clipboard

Copied

Hi 喜狼_edny,

setting the object style when using InDesign's caption feature is a long-standing feature request.

Vote for this, I just did:

 

Object Styles for Generated Captions
Kate Basart, November 09, 2017

"It would be really helpful when generating captions to be able to assign an object style in addition to a paragraph style. (Even better if there were multiple caption styles to choose from...)"

 

https://indesign.uservoice.com/forums/601021-adobe-indesign-feature-requests/suggestions/32199370-ob...

 

Regards,
Uwe Laubender

( ACP )

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Apr 22, 2021 Apr 22, 2021

Copy link to clipboard

Copied

LATEST

Hi Uwe, I wonder if it could be scripted? The caption text frame should have an index of 0 when it is created, so here I’m invoking the Generate Live Caption menu item, getting the caption text frame, and applying syles. Haven’t tested much so there could be complications:

 

 


var p=app.activeWindow.activePage;
var f = File.openDialog("Place");

//make styles
var ps = makeParaStyle(app.activeDocument, "Caption");
ps.properties = {basedOn:"[No Paragraph Style]", appliedFont:"Myriad Pro	Regular", pointSize:8, leftIndent:0};

var cos = makeObjStyle(app.activeDocument, "Caption Frame");
cos.properties = {basedOn:"[None]", appliedParagraphStyle:ps, strokeColor:"[None]", strokeWeight:"0"};

var placedImage = p.place(f);
placedImage[0].parent.select();
var makeCap =  app.menuActions.itemByName("Generate Live Caption")
makeCap.invoke();

//the last added text frame has an index of 0
var cap = getCaptionFrame(p.textFrames);
cap.texts[0].appliedParagraphStyle = ps;
cap.appliedObjectStyle = cos;


/**
* Gets the last text frame added 
* @Param a list of text frames 
* @Return text frame 
* 
*/
function getCaptionFrame(fl){
    var tf;
    for (var i = 0; i < fl.length; i++){
        if (fl[i].index == 0) {
            tf = fl[i]; 
        } 
    } 
    return tf 
}


/**
* Makes a new named ObjectStyle 
* @Param the document to add the style to 
* @Param style name 
* @Returns the new object style 
*/

function makeObjStyle(d, n){
    var os;
    try {
        d.objectStyles.add({name:n});
    }catch(e) {
        os = d.objectStyles.itemByName(n);
    } 
    return d.objectStyles.itemByName(n);
}

/**
* Makes a new named Paragraph Style 
* @Param the document to add the style to 
* @Param style name 
* @Returns the new paragraph style 
*/

function makeParaStyle(d, n){
    var ps;
    try {
        d.paragraphStyles.add({name:n});
    }catch(e) {
        ps = d.paragraphStyles.itemByName(n);
    } 
    return d.paragraphStyles.itemByName(n);
}


 

 

 

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Apr 22, 2021 Apr 22, 2021

Copy link to clipboard

Copied

I asked for this years ago, when they first introduced captions. Baffled why they didn't create the feature this way in the first place!

But @Eugene Tyson 's idea is excellent, actually. You can save an object search query to apply object styles to all captions in this way with just a couple of clicks!

Ariel

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines