วิธีสร้างงานแบ็ตช์, กำหนดหมายเลขรูปภาพ (เขียนข้อความลงบน) ตั้งแต่ 1 ถึง 100 ใน Photoshop?


25

กำลังมองหาการสร้าง 100 ภาพที่จะมีตัวเลขที่เหมาะสมของพวกเขาเขียนบนพวกเขา

เนื่องจากฉันจะเปลี่ยนแปลงเทมเพลตในอนาคตฉันจึงคิดว่าน่าจะดีกว่าที่จะทำให้เป็นแบบอัตโนมัติ

มีวิธีแก้ไขปัญหานี้อย่างง่ายไหม?

คำตอบ:


23

ขึ้นอยู่กับว่าคุณให้คำจำกัดความ "ง่าย" Photoshop มีฟังก์ชั่นข้อมูลแปรผันในตัว แต่มันไม่ได้รับการบันทึกไว้อย่างดีนักและถือว่าเป็นเรื่องที่ไม่เหมาะสมสำหรับการสนทนาที่สุภาพเช่นในงานปาร์ตี้ค็อกเทลหรือโซเชียลคริสตจักร ในทางตรงกันข้ามมันเป็นเวลาหลายปีแล้วที่ฉันใช้มันด้วยตัวเองดังนั้นการสร้างบทช่วยสอนนี้จึงเป็นการทบทวนที่ดี

คุณจะต้องมีเครื่องหมายจุลภาคหรือไฟล์คั่นด้วยแท็บที่มีชื่อสำหรับแต่ละตัวแปร (ฉันจะใช้ "รูปภาพ" และ "ImageNumber") นี่คือสิ่งที่ฉันล้อเลียนสำหรับแบบฝึกหัดนี้ โปรดทราบว่าชื่อไฟล์ภาพไม่มีเส้นทางเท่านั้นเพราะอยู่ในโฟลเดอร์เดียวกับไฟล์ข้อมูล คุณสามารถใช้พา ธ สัมพัทธ์หรือพา ธ สัมบูรณ์สำหรับชื่อไฟล์:

แฟ้มข้อมูล

คุณต้องตั้งค่าแม่แบบของคุณ สมมติว่าคุณต้องการสองเลเยอร์: รูปภาพ (ตัวแปร) และจำนวน (เลเยอร์ข้อความตัวแปร) เลเยอร์รูปภาพจะต้องเป็นเลเยอร์จริงไม่ใช่พื้นหลัง

photoshop templage ฐาน ชั้น

เมื่อคุณตั้งค่าเหล่านี้แล้วให้เลือกเลเยอร์รูปภาพและภายใต้Image > Variables > Defineคุณจะได้รับกล่องโต้ตอบนี้ (ฉันเลือกช่องทำเครื่องหมาย "การเปลี่ยนพิกเซล" เนื่องจากเป็นสิ่งที่เราต้องใช้):

กำหนดตัวแปรรูปภาพ

เปลี่ยนฟิลด์ "ชื่อ" เป็นชื่อตัวแปรที่คุณเลือก ("รูปภาพ") และตั้งค่า "วิธี" เป็นสิ่งที่คุณต้องการ ฉันเลือก "เติม" ซึ่งจะปรับขนาดรูปภาพตามสัดส่วน แต่คุณอาจต้องการอย่างอื่น ข้อมูลเกี่ยวกับแต่ละวิธีจะแสดงในฟิลด์คำอธิบายเมื่อคุณวางเมาส์เหนือชื่อ ปิดกล่องโต้ตอบ

เราเลือกเลเยอร์ข้อความและทำซ้ำกระบวนการตั้งชื่อตัวแปรข้อความ "ImageNumber"

กำหนดตัวแปรข้อความ

ตอนนี้เราต้องกำหนดชุดข้อมูลดังนั้นคลิกที่ปุ่ม "ถัดไป" ในกล่องโต้ตอบและคลิกที่ไอคอนชุดข้อมูลใหม่ (ขวาโดยถังขยะสามารถ) ในกล่องโต้ตอบ

กล่องโต้ตอบชุดข้อมูล

ชุดข้อมูลคือชุดของค่าที่ใช้กับเอกสารเอาต์พุตเฉพาะไม่ใช่ชุดของค่าที่สมบูรณ์ในไฟล์ที่คั่นด้วยจุลภาคดังนั้นตอนนี้เราจึงกำหนดรูปภาพเริ่มต้นสำหรับเทมเพลตของเราโดยคลิก "เลือกไฟล์ ... " ด้วย ตัวแปรรูปภาพที่เลือก ฉันเลือกภาพดอกเบญจมาศ ตรวจสอบให้แน่ใจว่าไม่ได้เลือก "อย่าเปลี่ยน"

เลือกค่าของภาพแล้ว

ตอนนี้เราต้องนำเข้าชุดข้อมูลจากไฟล์ที่คั่นด้วยเครื่องหมายจุลภาคโดยใช้กล่องโต้ตอบ "นำเข้า"

ช่องโต้ตอบการนำเข้า

หมดแล้วหรือยัง -- ยังมีอีก. คลิกตกลงเพื่อปิดกล่องโต้ตอบตัวแปร

ขั้นตอนสุดท้ายคือการเลือกFile > Export > Data Sets as Files...และเลือกสถานที่เพื่อบันทึกผลลัพธ์พร้อมกับตัวเลือกการตั้งชื่อที่คุณเลือก

กล่องโต้ตอบการส่งออก

เมื่อคุณคลิกตกลงไฟล์ psd ทั้งชุดจะถูกส่งออกไปยังตำแหน่งที่คุณเลือก


ฉันได้ทำตามตกลงนี้ถึงจุดหนึ่ง แต่ตอนนี้ฉันติดอยู่ เมื่อฉันมาเพื่อส่งออกไฟล์ของฉันฉันต้องการให้แต่ละคนมีค่าหนึ่งในตัวแปรที่เกี่ยวข้อง ดูเหมือนว่าจะให้ฉันใช้ตัวเลือกที่ จำกัด กับหมายเลขตามลำดับซึ่งไม่ดีสำหรับสิ่งที่ฉันต้องทำ คำแนะนำใด ๆ ที่จะได้รับการชื่นชมทั้งการใช้ CS5 หรืออื่น ๆ

Fantastic! คุณได้ช่วยฉันชั่วโมงทำงานขอบคุณอลัน
MorganR

6

ใช่เป็นไปได้โดยอัตโนมัติ เปิดชุดเครื่องมือสคริปต์ Extend เขียน

#target Photoshop
alert("Hello "+app.activeDocument.name+"!")

บันทึกสคริปต์และเรียกใช้ตอนนี้มันควรจะเห็นกล่องแจ้งเตือนโดยที่ PS เปิดและมีเอกสาร มันเป็นเพียงจาวาสคริปต์ที่คุณสามารถหาคู่มืออ้างอิง:

นี่คือวิธีที่คุณเปลี่ยนข้อความในเลเยอร์ข้อความและบันทึก (เพิ่มบิตบันทึกเพราะมันค่อนข้างยุ่งยาก):

#target Photoshop

var textlayer = app.activeDocument.layers.getByName('Text');
textlayer.textItem.contents = 'foo';

var exportOptionsSaveForWeb = new ExportOptionsSaveForWeb();
exportOptionsSaveForWeb.format = SaveDocumentType.PNG;

var saveFile = new File("file:///c:/temp/test.png");
app.activeDocument.exportDocument(saveFile, ExportType.SAVEFORWEB, exportOptionsSaveForWeb);

ดังนั้นฉันจะไม่ทำงานทั้งหมดให้คุณคุณยังต้องใส่วนรอบรหัสโพสต์


กรุณาคัดลอกและวางคำถามที่มีอยู่ในปัจจุบัน
Ryan

4

นี่เป็นวิธีการแก้ปัญหาที่อธิบายไว้ในการสร้างรูปภาพโดยอัตโนมัติด้วยการเพิ่มจำนวนที่เพิ่มขึ้นในการวนซ้ำแต่ละครั้ง

ใช่มันค่อนข้างคล้ายกัน แต่แทนที่จะเป็นคำถามแม่มดในปัจจุบันคือmany -> manyของฉันone -> manyและมีวิธีแก้ปัญหาที่แตกต่างและรวดเร็วกว่า

นี่มันไป:

  1. เปิดภาพเพิ่มTypeเลเยอร์ด้วยสไตล์ทั้งหมดที่ฉันต้องการ
  2. จากนั้นฉันก็ไปที่

    Image > Variables > Define
  3. ตั้งLayer:ชื่อเลเยอร์ข้อความของฉันตั้งช่องทำเครื่องหมายText Replacementและให้Text Replacementตัวแปรบางอย่างName:(ฉันได้ตั้งชื่อมันnumber) และกดตกลง

  4. เปิดตัวแก้ไขสเปรดชีตเช่น Excel, Numbers, Google Docs ฯลฯ …และป้อนสิ่งต่อไปในคอลัมน์แรก:

    1. ในแถวแรกฉันได้เขียนชื่อตัวแปรของฉัน (สำหรับฉัน - number)
    2. ในด้านล่าง (แถวที่ 2) 1ฉันได้ป้อน บางครั้งสำหรับขั้นตอนที่ 3 ในการทำงานคุณต้องป้อน2ในแถวที่ 3
    3. ตอนนี้ใช้การเติมข้อความอัตโนมัติแบบมาตรฐานคว้าที่มุมล่างขวาของเซลล์ด้วย 1 (หรือ 2) ในนั้นแล้วลากลง วิธีนี้เซลล์ทั้งหมดด้านล่างควรถูกเติมด้วยหมายเลขต่อเนื่อง (ฉันสร้างลำดับขึ้นได้ถึง 99)
    4. CSVตกลงทั้งหมดที่คุณต้องทำตอนนี้คือการส่งออกสเปรดชีตของคุณจะ
  5. ตอนนี้คุณควรไปที่

      Image > Variables > Data Sets

    เลือกImport…ดูข้อมูลของCSVไฟล์และคลิกตกลง นอกจากนี้คุณยังสามารถตรวจสอบPreviewปุ่มเพื่อดูว่ารูปภาพของคุณจะมีลักษณะอย่างไรกับชุดข้อมูล (จำนวน) อีกครั้งคลิกตกลงเพื่อบันทึกชุดข้อมูล

  6. ในที่สุดเพื่อรับไฟล์ทั้งหมดที่มีสิ่งต่าง ๆ ไปที่

    File > Export > Data Sets as Files

    เลือกโฟลเดอร์ปลายทางและตรวจสอบให้แน่ใจว่าคุณได้All Data Setsเลือกตัวเลือกไว้เนื่องจากจะเป็นการสร้างไฟล์สำหรับชุดข้อมูลแต่ละชุดซึ่งเป็นสิ่งที่เราต้องการ ในหน้าต่างเดียวกันคุณยังสามารถเลือกตัวเลือกการตั้งชื่อสำหรับไฟล์ที่ส่งออก และคลิกตกลง :)

  7. สิ่งนี้จะสร้างpsdไฟล์ดังนั้นคุณจะต้องแปลงไฟล์ให้เป็นอะไรที่ง่ายกว่า ซึ่งสามารถทำได้ด้วย

    File > Scripts > Image Processor

    สคริปต์นี้จะช่วยให้คุณสามารถแปลงจำนวนมากของpsdภาพลงJPEGด้วยการคลิกปุ่ม

คุณอาจสนใจสอนต่อไปเกี่ยวกับ Photoshop Variables: http://layersmagazine.com/photoshop-variables.html


ขอบคุณสำหรับส่วนนี้: "สคริปต์นี้จะทำให้คุณสามารถแปลงรูปภาพ psd เป็น JPEG ได้มากมายด้วยการคลิกเพียงปุ่มเดียว" graphicdesign.stackexchange.com/a/4874/45239บวกประโยคของคุณนั่นเป็นความช่วยเหลือที่ยิ่งใหญ่
Ryan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.