ปัญหา:
ความท้าทายนี้มาจากปัญหาจริงที่ฉันมี ฉันมีการตั้งค่าจอภาพสองจอในที่ทำงานและฉันต้องการใช้ภาพต่อไปนี้เป็นวอลล์เปเปอร์ของฉัน:
อย่างไรก็ตามจอมอนิเตอร์ของฉันมีเบ็ซแซลค่อนข้างสำคัญและเมื่อฉันตั้งค่าพื้นหลังของฉันมันจะเป็นแบบนี้ที่ซึ่งท่าเรือปรากฏ (แอปพลิเคชัน?) จะแตก:
ฉันสามารถแก้ปัญหานี้ได้ด้วยการสร้างภาพโดยที่จุดศูนย์กลางตัดออกแล้วยืดกลับไปเป็นขนาดดั้งเดิมตามที่แสดงในภาพด้านล่าง:
ความท้าทาย:
เขียนโปรแกรมที่ถ่ายภาพและ "ตรวจสอบ" เพื่อใช้กับการตั้งค่าจอภาพสองจอ (เช่นลบส่วนตรงกลางของภาพที่มีเบแซลอยู่) กฎมีดังนี้:
- ต้องเป็นโปรแกรมเต็มรูปแบบที่ยอมรับรูปภาพไม่ว่าจะเป็นพา ธ (อาร์กิวเมนต์สตริง ฯลฯ ) หรือในรูปแบบของกล่องโต้ตอบตัวเลือกไฟล์
- โปรแกรมจะต้องป้อนข้อมูลเป็นจำนวนเส้นแนวตั้ง (ความกว้างหนึ่งพิกเซล) เพื่อครอบตัดออกจากกึ่งกลางของภาพ
- การปลูกพืชจะต้องมาจากศูนย์กลาง (กว้างไวด์) ของภาพต้นฉบับ
- รูปภาพผลลัพธ์ต้องถูกปรับสัดส่วนกลับเป็นขนาดดั้งเดิมของภาพอินพุตอีกครั้ง (แบ่งครึ่งสามารถเป็นรายบุคคลและจากนั้นตัดแบ่งหรือตัดแบ่งแล้วปรับขนาดแล้วการปรับขนาดเป็นการสร้างภาพ / เอฟเฟกต์ที่ดีขึ้น แต่แทบจะไม่สังเกตเห็นได้ในโลกแห่งความเป็นจริง)
- โดยทั่วไปแล้วภาพพื้นหลังจะทำให้การท้าทายนี้ง่ายขึ้นรูปภาพอินพุตจะมีจำนวนพิกเซลเท่ากันและจำนวนบรรทัดที่จะลบก็จะเท่ากัน
- ความท้าทายนี้เป็นโค้ดกอล์ฟ - โค้ดที่สั้นที่สุดในหน่วยไบต์ชนะ
โชคดี!