การปรับขนาดภาพให้เป็นขนาดจริงที่ใช้ในโปรแกรมแก้ไขภาพ?


20

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

มีปลั๊กอินที่ทำสิ่งนี้เมื่อบันทึกโพสต์ใหม่หรือไม่? ฉันต้องการเก็บภาพขนาดเต็มที่มีอยู่ (สำหรับการเชื่อมโยงหรือปรับขนาดภายหลัง) แต่เพียงเพิ่มขนาดพิเศษ (และบันทึกใน_wp_attachment_metadataวัตถุ) ดังนั้นโพสต์นี้จึงมีภาพในขนาดที่ถูกต้องและมีการอ้างอิงถึง สิ่งที่แนบมาขนาดเต็ม

แน่นอนโพสต์ที่มีอยู่ทั้งหมดควรได้รับการจัดการครั้งเดียว <img>แท็กอาจจะมีเพียงwidthแค่heightหรือไม่มีของพวกเขานี้ควรจะมีการทำความสะอาดขึ้นเพื่อให้พวกเขาทั้งหมดมีที่ถูกต้องwidth, heightและภาพลักษณ์ของขนาดว่า


คุณโอเคกับการแก้ปัญหาด้านเซิร์ฟเวอร์ที่ปรับขนาดภาพได้ทันทีโดยยึดตามพารามิเตอร์รับที่ส่งผ่านไปยัง URL ภาพที่มีอยู่หรือไม่? Apache / mod_rewrite?
hakre

@hakre: คุณหมายถึงตัวกรองโพสต์บันทึกที่ผ่านการโพสต์และเขียนภาพแต่ละภาพอีกimage.png?w=300&h=400ครั้งหรือimage-300x400.pngซึ่งฉันจะรับผ่าน Mod_Rewrite และปรับขนาด (และแคช) ตามคำร้องขอหรือไม่ นั่นเป็นข้อได้เปรียบมากกว่าการสร้างภาพที่มีการปรับขนาดหนึ่งครั้ง (ในการดำเนินการภายหลังบันทึก) และให้บริการเป็นไฟล์คงที่หรือไม่?
Jan Fabry

@ Jan Fabryใช่นั่นคือสิ่งที่อยู่ในใจของฉัน ข้อได้เปรียบคือว่าคุณสร้างภาพตามคำขอเท่านั้นตราบใดที่ผู้เขียนแก้ไขโพสต์สิ่งนี้จะไม่สร้างไฟล์ตามลำดับ ถัดจากการไม่บล็อกการแก้ไขก็แยกออกจาก wp มากขึ้นดังนั้นคุณสามารถสร้างบริการเซิร์ฟเวอร์บางอย่างการแคช CDN extravaganza หรืออะไรก็ตาม :) --- wp.com ทำสิ่งที่คล้ายกันถ้าฉันเห็นว่าถูกต้อง
hakre

เมื่อรวมกับการแคชวิธีนี้จะส่องแสงจริงๆ ฉันจะสมมติว่ามีปลั๊กอินสำหรับสิ่งนี้ นอกจากนี้คุณยังสามารถเรียกใช้การติดตั้ง Zenphoto ร่วมกับปลั๊กอินเช่น Zenphoto Gallery (ของฉันเอง: lmazy.verrech.net/zenphoto-gallery )
Raphael

@ ราฟาเอล: แน่นอนวันนี้ฉันค้นคว้าปลั๊กอินที่เป็นไปได้และบางคนก็ใช้วิธีนี้ หากคุณมีบางอย่างที่จะเพิ่มในตัวเลือกของฉันโปรดทำมันทั้งหมดสามารถแก้ไขได้
Jan Fabry

คำตอบ:


11

ฉันสร้างสองปลั๊กอินที่ควรแก้ไขความต้องการร่วมกัน พวกเขากำลังอยู่ในช่วงต้นอัลฟาและความคิดเห็นทั้งหมดยินดีต้อนรับ

ปลั๊กอินฐานเป็นOn-Demand Resizer ปลั๊กอินนี้ตรวจสอบการร้องขอสำหรับไฟล์ที่ไม่มีอยู่ใน dir อัพโหลดและสร้างภาพขนาดที่ร้องขอถ้าจำเป็น ตัวอย่างเช่นimage-200x100.jpgจะสร้างและส่งคืนimage.jpgแต่ปรับขนาดเป็น 200 x 100 พิกเซล อิมเมจถูกบันทึกโดยชื่อนั้นในไดเร็กทอรีดังนั้นการร้องขอเพิ่มเติมจะถูกจัดการโดยเซิร์ฟเวอร์โดยตรง

ปลั๊กอินที่สอง, ปรับขนาดแท็ก img , แก้ไข<img>แท็กเพื่อให้srcแอตทริบิวต์มีข้อมูลความกว้างและ / หรือความสูง สิ่งนี้อนุญาตให้ปลั๊กอินตัวแรกให้บริการรูปภาพที่ถูกต้อง พวกเขาช่วยกันทำในสิ่งที่ฉันต้องการและฉันจะต้องสร้างการทำงานครั้งเดียวฟังก์ชั่นการแปลงโพสต์ที่มีอยู่ทั้งหมด แต่ที่ควรจะง่าย (ฉันไม่ต้องการที่จะขอเข้าไปในthe_contentสิ่งที่ควรจะทำงานเพียงครั้งเดียว)

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


1
เสียงเหล่านี้ยอดเยี่ยมจริงๆ! ฉันแทบรอไม่ไหวที่จะลองพวกเขาเมื่อฉันต้องการพวกเขาสำหรับสถานการณ์จริง
MikeSchinkel

สิ่งที่ยอดเยี่ยม คุณกำลังพิจารณาที่จะเพิ่มสิ่งเหล่านั้นในที่เก็บปลั๊กอิน worpdress หรือไม่?
hakre

@hakre: ใช่แน่นอน เมื่อฉันทำให้พวกเขาพร้อมสำหรับการตรวจสอบจากเพื่อน :-)
ม.ค. Fabry

4

ฉันได้ค้นหาไดเรกทอรีปลั๊กอินสำหรับ"resize"หรือ"crop"(หลังสำหรับคำถามอื่น ) และตั้งข้อสังเกตผลของฉันในGoogle สเปรดชีตสาธารณะ การค้นหาปลั๊กอินทำให้เกิดความสับสนในตัวเลขผลลัพธ์ (หน้าสุดท้ายของการ"resize"ค้นหาแสดง "แสดง 145-150 จาก 273 ปลั๊กอิน") ดังนั้นฉันอาจพลาดบางอย่าง หมายเหตุกึ่งที่เกี่ยวข้อง: ทุกคนคิดว่าโลกนี้ต้องการปลั๊กอินเสริมสไลด์โชว์ ไม่กี่ดูเหมือนจะรู้ว่าอาจจะเป็นตัวกรองที่ดีกว่าที่จะทำแยกหนักกว่าcontent_save_prethe_content

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

  • ChoiceCuts Image Jugglerพร้อมฟังก์ชั่นการจัดการภาพหลายภาพที่สามารถเข้าถึงได้ผ่าน API (3.0.1)
  • AutoThumbเขียน URL ซ้ำไปยังตัวจัดการที่ใช้phpThumb (2.9.2)
  • Image Symlinksผ่านทางรหัสย่อพิเศษ[img](2.9.2)
  • com_resizeเขียน URL ใหม่ไปยังตัวจัดการที่ใช้ phpThumb รวมถึงรูปภาพภายนอก (2.6)
  • ImageScalerสร้างขนาดใหม่หากจำเป็นและเปลี่ยน URL ในภาพ (2.3)
  • ImageScaler Modded , ImageScalerรุ่นที่แก้ไขเล็กน้อย (2.3.1)

ความคิดส่วนตัว:สี่ข้อแรกเขียน URL ไปยังหน้าแบบไดนามิก (คล้าย/wp-content/plugins/my-plugin/image.php?src=[original src]&w=100&h=50) ด้วยรูปแบบต่าง ๆ ของการแคช ฉันชอบภาพของจริงที่สร้างขึ้นตามที่ต้องการคล้ายกับวิธีที่ ImageScaler ใช้ อย่างไรก็ตามฉันจะแยกส่วนนี้ออก (และรวมข้อเสนอแนะของ hakre ไว้ในความคิดเห็น) และก่อนอื่นให้เขียน URL ทั้งหมดใหม่เป็น/wp-content/uploads/2010/11/image.jpgถึง/wp-content/uploads/2010/11/image-100x50.jpgจากนั้นให้สคริปต์สร้างรูปภาพที่ขาดหายไป คำขอแรกสำหรับภาพนี้สร้างภาพคำขอต่อมาทั้งหมดใช้ภาพที่สร้างขึ้นนี้ นอกจากนี้ยังช่วยให้ฉันสามารถแยกการทำงานข้ามปลั๊กอินที่แตกต่างกัน ฉันจะโพสต์โซลูชันนี้ในคำตอบแยกต่างหาก

ปลั๊กอินเหล่านี้ จำกัด รูปภาพไว้ที่ขนาดสูงสุดที่แน่นอน (สิ่งนี้แตกต่างจากการระบุ$content_widthอย่างไร):

  • JP-redesign-imagesตรวจสอบทั้งรูปภาพที่เชื่อมโยงและภาพที่มีขนาดใหญ่ (เฉพาะในกรณีที่มีขนาดใหญ่เกินไปไม่ใช่เพียงแค่ปรับขนาด) (3.0.1)
  • Hungred Image Fitตรวจสอบภาพที่มีขนาดใหญ่เกินไป (3.0.0)

ปลั๊กอินต่อไปนี้น่าสนใจด้วยเหตุผลอื่น:

นี่คือโพสต์ Community Wiki ดังนั้นจึงสามารถอัปเดตได้หากคุณพบปลั๊กอินใหม่


0

สิ่งที่เกี่ยวกับการใช้ Timthumb และตัวแปรส่งผ่านเพื่อเปลี่ยนขนาด / ขนาดภาพและระดับการซูมโดยอัตโนมัติ วิธีนี้ยังคงรักษาขนาดภาพดั้งเดิมไว้ได้ หากคุณต้องการตัวอย่างลงบรรทัดนี้แจ้งให้เราทราบ


0

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


ฉันรู้ว่าเป็นการดีที่สุดที่จะใช้ขนาดรูปภาพที่กำหนดไว้ล่วงหน้า แต่ลูกค้าของฉันไม่ได้ :-) หากพวกเขาสามารถปรับขนาดรูปภาพในเครื่องมือแก้ไขได้มันเป็นเพียงตรรกะเท่านั้นที่ระบบจะทำตามตัวเลือกนั้น
Jan Fabry

คุณสามารถลบความเป็นไปได้นี้ออกไปและบังคับให้พวกเขาทำงานได้อย่างหมดจด;)
Raphael

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

0

ปลั๊กอินImage Pro ที่เพิ่งเปิดตัวดูเหมือนจะทำสิ่งนี้ทั้งหมด ยังไม่ได้ทดสอบตัวเองการสาธิตดูน่าประทับใจมากหมายเหตุความเข้ากันได้ของเบราว์เซอร์ที่ไม่ดี (Firefox เท่านั้นในขณะนี้)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.