Nếu bạn muốn kiểm soát tốt hơn lượng nén JPEG, vì kopischke cho biết bạn sẽ phải sử dụng tiện ích sips
, có thể được sử dụng trong tập lệnh shell. Đây là cách bạn sẽ làm điều đó trong Automator:
Đầu tiên có được các tập tin và các thiết lập nén:
Hãy chắc chắn rằng đầu tiên Get Giá trị của hành động Biến không chấp nhận bất kỳ đầu vào (bên phải -nhấp vào chúng, chọn "Bỏ qua đầu vào") và rằng giá trị thứ hai Nhận giá trị biến số lấy đầu vào từ đầu tiên. Điều này tạo ra một mảng sau đó được truyền vào kịch bản lệnh shell. Mục đầu tiên trong mảng là mức độ nén được cung cấp cho Tập lệnh Tự động hóa. Thứ hai là danh sách các tệp mà tập lệnh sẽ thực hiện lệnh sips
.
Trong các tùy chọn ở trên cùng của hành động Chạy Shell Script, chọn "/ bin/bash" làm Shell và chọn "làm đối số" cho Nhập liệu qua. Sau đó dán mã này:
itemNumber=0
compressionLevel=0
for file in [email protected]
do
if [ "$itemNumber" = "0" ]; then
compressionLevel=$file
else
echo "Processing $file"
filename=$file
sips -s format jpeg -s formatOptions $compressionLevel $file --out ${filename%.*}.jpg
fi
itemNumber=itemNumber+1;
done
osascript -e 'tell app "Automator" to display dialog "Done." buttons {"OK"}'
Nếu bạn bấm vào Kết quả ở phía dưới, nó sẽ cho bạn biết những gì nộp nó hiện đang làm việc trên. Vui chơi!
Cảm ơn câu trả lời chính xác này nhưng rất tiếc tất cả những điều này không thực sự nói gì với tôi. Tôi chưa bao giờ làm việc với AppleScript. Tôi cũng tự hỏi tại sao điều này xảy ra anyways gây ra không có gì trong tự động hóa của tôi yêu cầu một nén. – Melros
@melros: Các hành động của máy tự động được thiết kế để đơn giản, không thể định cấu hình, có nghĩa là bạn chủ yếu là lòng thương xót của các quyết định của nhà phát triển hành động đối với việc triển khai của họ. – kopischke
@Melros: Tôi đã mở rộng câu trả lời của mình bằng mã mẫu. – kopischke