Tuesday, May 11, 2021

#1 2021-03-25 02:32:54 pm

Fredrik71
Member
Registered: 2019-10-23
Posts: 707

Swap a specific page in same PDF file

If we like to swap page from the same PDF file we could do something like this.
If you run the script twice it will return to original order.

pageAtIndex{1,2} first page in PDF is 1

Applescript:

use AppleScript version "2.4" -- Yosemite (10.10) or later
use framework "Foundation"
use framework "Quartz"
use scripting additions

set thePath to POSIX path of (choose file)
set theURL to current application's |NSURL|'s fileURLWithPath:thePath

set savePath to POSIX path of (path to desktop) & "newSavedFile.pdf"
set saveFile to current application's |NSURL|'s fileURLWithPath:savePath

my swapPageWith:theURL pageAtIndex:{1, 2} savePath:saveFile

on swapPageWith:theURL pageAtIndex:{a, b} savePath:saveFile
   set pdfDoc to current application's PDFDocument's alloc()'s initWithURL:theURL
   
   set pageCount to pdfDoc's pageCount()
   if (a is greater than pageCount) or (b is greater than pageCount) then return
   try
       if (pdfDoc is not missing value) then
           (pdfDoc's exchangePageAtIndex:(a - 1) withPageAtIndex:(b - 1))
           (pdfDoc's writeToURL:saveFile)
       end if
   end try
end swapPageWith:pageAtIndex:savePath:


if you are the expert, who will you call if its not your imagination.

Offline

 

Board footer

Powered by FluxBB

RSS (new topics) RSS (active topics)