web-dev-qa-db-ja.com

Apple Automator "New PDF from Images"、同じファイル名を維持

移行のために最初にPDFに転送する26kの古いレガシーPICTイメージがある可能性があります。Apple Automatorと「DispenseItemsIncrementally」を使用していますループします。ただし、「New PDF fromImages」に元のファイル名を記憶させることはできないようです。アドバイスを提供できる人は誰でも:)

参考までに、ImageMagickを使用して最終的なJPEG形式に直接変換することはできないため、PDFに変換しています。私のPICTは非常に昔に作成されたため、いくつか convert: improper image headerエラー。詳細については、 このチケット を参照してください。

したがって、私はPICTをPDFに変換し、次にそれをPDF JPEGに変換します:)

残っているのは「出力ファイル名」の名前だけで、元のファイル名を識別できません。

こちらの画面をご覧ください:

5
mech

解決策は、Automatorの変数を使用してファイル名を保存し、後で名前を変更することです。

次のアクションafterDispense Items Incrementallyアクションを追加します。

  • 変数の値を設定ファイルという名前の新しい変数を使用します。これにより、後で使用できるようにファイルが追跡されます。
  • シェルスクリプトの実行Shell/bin/bash(これがデフォルトである必要があります)およびinput引数としてに渡します。テキストを次のように置き換えます。

    name=`basename "$1"`
    echo ${name%.*}
    
    • これにより、拡張子やパスなしでファイル名のみが抽出されます。
  • 変数の値を設定ファイル名という名前の新しい変数を使用します。
  • 変数の値を取得、変数をファイルに設定します。

次に、既に持っているように変換を実行します。その後(ただしループの前)に、次のアクションを追加します。

  • ファインダーアイテムの名前を変更。最初のドロップダウンをName Single Itemに設定し、2番目のドロップダウンをBasename Onlyに設定してから、filename変数をテキストボックスにドラッグアンドドロップします。変数が表示されない場合は、[表示]→[変数]をクリックすると、変数パネルが下から表示されます。
5
robmathers

2つ(またはそれ以上)のPDFを組み合わせてファイル名をキャプチャし、ファイル名の前に「Order of Service-」という単語を追加して、プレビューで開く必要がありました。これにより、両面ドキュメントとして印刷して、今月のフォルダに保存することができます。両面印刷ジョブを選択できるように、Automatorで画像の印刷機能を使用する方法がわかりませんでした。 Move Finder Itemsを使用して保存機能を自動化することもできますが、新しい月のフォルダーの場所を選択するには、毎月オートマタータスクを変更する必要があります。

必要な場所に保存させたほうがいいようです。 @robmathersが提供したものと組み合わせて私が行った手順は次のとおりです。

  1. 「ファイルとフォルダ」を受信するAutomatorサービスセットを作成しました
    ファインダ

  2. Finderアイテムを作成日で降順に並べ替える

  3. 変数の値をPDFNameという新しい変数に設定します

  4. コードを使用してシェルスクリプトを実行します。

    名前= basename "$1" echo $ {name%。*}

  5. 変数の値をFileNameという新しい変数に設定します

  6. PDFNameに設定された変数の値を取得します

  7. 結合PDF追加に設定されたページ

  8. Finderアイテムの名前を変更します。最初のドロップダウンを[単一アイテムに名前を付ける]に設定し、2番目のドロップダウンを[ベース名のみ]に設定してから、ファイル名変数をテキストボックスにドラッグアンドドロップします。変数が表示されない場合は、[表示]→[変数]をクリックすると、変数パネルが下から表示されます。

  9. プレビューでページを開く

失敗するため、同じファイルでこれを複数回実行できないことを発見しました。同じファイルで複数回実行するには、なんらかの方法で変数をクリアする必要があると思いますが、それを行うための明確な方法がわかりませんでした。それについて何かアイデアがあれば、私に知らせてください。

1
Britonius