• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

Batch add header text based on file name

New Here ,
Dec 02, 2022 Dec 02, 2022

Copy link to clipboard

Copied

I have a large number of files. Is it possible to automate adding a header to the upper right side of the page based on their file names? Thanks!

TOPICS
Create PDFs , Edit and convert PDFs , JavaScript , Print and prepress , Standards and accessibility

Views

2.7K

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

correct answers 1 Correct answer

Community Expert , Dec 31, 2022 Dec 31, 2022

Hi,

You can create an action wizard with the script below or use the one attached into the pdf file.

this.addWatermarkFromText({
	cText: this.documentFileName, // The text to use as the watermark
	nTextAlign: app.constants.align.left, // (optional) The text alignment to use for cText within the watermark
	cFont: font.HelvB, // (optional) The font to be used for this watermark
	nFontSize: 10, // (optional) The point size of the font to use for the watermark
	aColor: color.black, // (optional) The
...

Votes

Translate

Translate
Adobe Employee ,
Dec 31, 2022 Dec 31, 2022

Copy link to clipboard

Copied

Hi xcd.a,

 

Thank you for reaching out.

 

Please try the Action Wizard tool in Acrobat to add the header to the file. For more information on Acrobat Header, please refer to the following help page: https://helpx.adobe.com/acrobat/using/action-wizard-acrobat-pro.html.

Check if that works for you.

 

Thanks,

Meenakshi

Votes

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
Community Expert ,
Dec 31, 2022 Dec 31, 2022

Copy link to clipboard

Copied

Hi,

You can create an action wizard with the script below or use the one attached into the pdf file.

this.addWatermarkFromText({
	cText: this.documentFileName, // The text to use as the watermark
	nTextAlign: app.constants.align.left, // (optional) The text alignment to use for cText within the watermark
	cFont: font.HelvB, // (optional) The font to be used for this watermark
	nFontSize: 10, // (optional) The point size of the font to use for the watermark
	aColor: color.black, // (optional) The color to use for the watermark
	nStart: 0, // (optional) The 0-based index of the first page
	nEnd: this.numPages-1, // (optional) The last page
	bOnTop: true, // (optional) A Boolean value specifying the z-ordering of the watermark
	bOnScreen: true, // (optional) A Boolean value to indicate whether the watermark should be displayed when viewing the document on screen
	bOnPrint: true, // (optional) A Boolean value to indicate whether the watermark should be displayed when printing the document
	nHorizAlign: app.constants.align.left, // Al(optional) A number indicating how the watermark should be aligned horizontally
	nVertAlign: app.constants.align.top, // (optional) A number indicating how the watermark should be aligned vertically
	nHorizValue: 15, // (optional) A number used to shift the horizontal position of the watermark on the page
	nVertValue: -15, // (optional) A number used to shift the vertical position of the watermark on the page
	bPercentage: false, // (optional) A Boolean value used to indicate whether nHorizValue and nVertValue represent a percentage of the page size or an explicit number of points
	nScale: 1.0, // (optional) The scale to be used for the watermark
	bFixedPrint: false, // (optional) A Boolean value that indicates that the watermark should be added as a FixedPrint Watermark annotation
	nRotation: 0, // (optional) The number of degrees to rotate the watermark counterclockwise
	nOpacity: 1 // (optional) The opacity to be used for the watermark
});
this.saveAs(this.path);

Then you run it and you add files or folder before starting.

Capture d’écran 2022-12-31 à 14.18.18.png

@+

Votes

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
New Here ,
Feb 13, 2024 Feb 13, 2024

Copy link to clipboard

Copied

This worked for me. Although, the text was very thin and small. I changed the font to 14 points and bold, then revised the script by deleting "left" and replacing it with "center". Right was too far right and outside the printing area. FYI

Votes

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
Community Beginner ,
Apr 20, 2024 Apr 20, 2024

Copy link to clipboard

Copied

@bebarth 

Thank you for your script. It works perfect. Could you please help me by changing the font. I want to use the font "Segoe UI". I was not able to do it.

Additionally, do you know how it is possible, to read only a part of the file name and add this text to the watermark?

All my file names look like this (numbers and text of course differs from this example below): 

01 Text1.pdf

02 Text2.pdf

03 Text3.pdf

XY Text4.pdf

XYZ Text5.pdf

........

Would it be possible to write only the numbers/text which is in front of the space or after the text after the space? If the space is a problem, I could use the "-" sign as well, in case this helps. The final result should look like this:

01

02

03

XY

XYZ

or the text after the space

Text1

Text2

Text3

Text4

Text4


Thank you for any help. 

Best Regards, Ischni

 

Votes

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
Community Expert ,
Apr 20, 2024 Apr 20, 2024

Copy link to clipboard

Copied

Hi,
To use Segoe UI font, you must write:

...
cFont: SegoeUI,
...

 For the text, you can split the file name without the .pdf extension in a table with:

var bothTexts=this.documentFileName.substr(0,this.documentFileName.length-4).split(" ");

then you will use the first element of the table bothTexts[0] if you want to use the number or the second one bothTexts[1] if you prefer the text.

...
cText: bothTexts[0], // or bothTexts[1]
...

@+

Votes

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
Community Beginner ,
Apr 20, 2024 Apr 20, 2024

Copy link to clipboard

Copied

Thank you for your quick answer. Both does not work for me. Would you mind to insert it into the code which you have posted above on Dec 31, 2022? Many Thanks.

Votes

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
Community Expert ,
Apr 20, 2024 Apr 20, 2024

Copy link to clipboard

Copied

Yes, of course!

Votes

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
Community Beginner ,
Apr 22, 2024 Apr 22, 2024

Copy link to clipboard

Copied

I have solved it:

function splitFileName() {
    var fileName = this.documentFileName.replace('.pdf', '');
    var words = fileName.split(' '); 
    var topText = words[0];
    var bottomText = words.slice(1).join(' ');
    return [topText, bottomText];
}
 
function addWatermarks() {
    var words = splitFileName.call(this);
    var topText = words[0]; 
    var bottomText = words[1];
 
    this.addWatermarkFromText({
        cText: topText,
        nTextAlign: app.constants.align.center,
        cFont: "Segoe UI",
        nFontSize: 10,
        aColor: color.black,
        nHorizAlign: app.constants.align.right,
        nVertAlign: app.constants.align.top,
nHorizValue: -50,
        nVertValue: -30,
        bOnTop: true,
        bOnScreen: true,
        bOnPrint: true,
        nRotation: 0
    });
 
    this.addWatermarkFromText({
        cText: bottomText, 
        nTextAlign: app.constants.align.center,
        cFont: "Segoe UI",
        nFontSize: 10,
        aColor: color.black,
        nHorizAlign: app.constants.align.right,
        nVertAlign: app.constants.align.top,
nHorizValue: -50,
        nVertValue: -50,
        bOnTop: true,
        bOnScreen: true,
        bOnPrint: true,
        nRotation: 0
    });
}
 
addWatermarks.call(this);

 

Votes

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
New Here ,
Apr 24, 2024 Apr 24, 2024

Copy link to clipboard

Copied

Hi, Can you elaborate on how to apply this to multiple open files?

Votes

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
Community Expert ,
Apr 24, 2024 Apr 24, 2024

Copy link to clipboard

Copied

LATEST

It's explained above, you create an action wizard and you add files...

@+

Votes

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