ความสับสนในการแก้ปัญหา iPhone 6 Plus: Xcode หรือเว็บไซต์ของ Apple? เพื่อการพัฒนา


265

เว็บไซต์ของ Apple อ้างว่ามีความละเอียด 1080p: 1920 x 1080

อย่างไรก็ตามหน้าจอเปิดตัวที่ต้องการโดย Xcode (8.0 GM เปิดตัวในวันนี้) คือ 2208 x 1242

ถูกต้องใคร

Xcode


รูปภาพเริ่มต้นสำหรับ iPhone 6+ จะต้องมีขนาด 1242x2208 และ 2208x1242 อย่างน้อยสิ่งนี้ทำให้แอปทำงานอย่างถูกต้องในตัวจำลอง (และนี่เป็นเอกสารใน HIG) ฉันไม่ได้คิดออกว่าเหตุใดจึงแตกต่างจากขนาดหน้าจอจริงที่ควรเป็น 1920x1080
rmaddy

2
ความคลาดเคลื่อนที่แปลกประหลาดมาก
JasonGenX

14
คำอธิบายที่ยอดเยี่ยม: paintcodeapp.com/news/iphone-6-screens-demystified
Andreas Ley

สิ่งนี้อาจเปลี่ยนแปลงในเวอร์ชันที่เสถียรของ Xcode 6.1 ใช่ไหม?
Jayprakash Dubey

3
หากต้องการอัปเดตลิงก์จาก Andreas ให้ดูที่ "Ultimate Guide to iPhone Resolutions" paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions
David James

คำตอบ:


308

iPhone 6+ แสดงผลภายในโดยใช้สินทรัพย์@ 3xที่ความละเอียดเสมือน2208 × 1242 (มี736x414คะแนน) จากนั้นสุ่มตัวอย่างเพื่อแสดงผล เช่นเดียวกับการใช้ความละเอียดที่ปรับขนาดใน Retina MacBook - มันช่วยให้พวกเขาตีหลายรายการสำหรับสินทรัพย์พิกเซลในขณะที่ยังคงมีเช่นข้อความ 12 pt ดูขนาดเท่ากันบนหน้าจอ

ดังนั้นใช่หน้าจอเรียกใช้ต้องมีขนาดนั้น

คณิตศาสตร์:

6, 5 วินาที, 5, 4s และ 4 มีทั้งหมด 326 พิกเซลต่อนิ้วและใช้ @ สินทรัพย์ 2x ติดกับประมาณ 160 จุดต่อนิ้วของอุปกรณ์ก่อนหน้านี้ทั้งหมด

6+ คือ 401 พิกเซลต่อนิ้ว ดังนั้นสมมุติว่าต้องการสินทรัพย์ @ 2.46 เท่าโดยประมาณ Apple ใช้สินทรัพย์ @ 3x และลดขนาดเอาต์พุตสมบูรณ์ลงเหลือประมาณ 84% ของขนาดธรรมชาติ

ในทางปฏิบัติ Apple ได้ตัดสินใจที่จะมีมากขึ้นเช่น 87% เปลี่ยน 1080 เป็น 1242 ไม่ต้องสงสัยเลยว่าจะหาอะไรที่ใกล้เคียงที่สุดที่ 84% ที่ยังคงผลิตขนาดที่สมบูรณ์ทั้งสองทิศทาง - 1242/1080 = 2208/1920 ในขณะที่ถ้าคุณเปลี่ยน 1080 ให้เป็น 1286 คุณจะต้องแสดงผล 2286.22 พิกเซลในแนวตั้งเพื่อปรับขนาดให้ดี


6
คุณคำนวณอย่างไร -> "ความละเอียดเสมือน 2208 × 1242 (มีคะแนน 736x414 คะแนน)" และสิ่งนี้ "ต้องการเนื้อหาที่ประมาณ 2.46x" UIScreen mainScreen] จะมีผลตอบแทนอย่างไรสำหรับ 6+? 568, 568 * 3 (1704) หรือ 1920.
msk

1
อาจจะเพิ่มหมายเหตุให้กับคำตอบเกี่ยวกับภาพเปิดตัวนี้หรือไม่? (ดูคำตอบของ Hannes) มีประโยชน์ที่ต้องจำไว้ว่าแอพที่มีอยู่นั้นได้รับการอัพเกรด (ไม่เช่นนั้นจะรันที่ 320x576 @ 3x - ฉันสับสนไปซักพัก!)
Joseph Humfrey

2
@msk [UIScreen mainScreen].bounds.size.heightส่งคืน 736 ในตัวจำลอง iPhone 6+ เมื่ออยู่ในแนวตั้ง นี่คือค่า 2208 หารด้วยสเกล 3 ความกว้างคือ 414
rmaddy

1
มันไม่ได้มีขนาดเท่ากันอย่างแน่นอนด้วย @ 3x ด้วยความละเอียด 1242 * 2208 แต่มันลดลง 6%
Binarian

4
ช่างเป็นสิ่งที่น่ากลัวมาก! การสูญเสียประสิทธิภาพทั้งระบบและหน่วยความจำและความคมชัดเพียงเพื่อทำให้การปรับขนาด API บางระดับง่ายขึ้นเล็กน้อย! ดีผมคิดว่ามันทั้งหมดจะทำให้รู้สึกเมื่อพวกเขาปล่อย iPhone 7 บวกกับ 5.5" แสดงผล 461 PPI.
จีบ

114

คำตอบก็คือแอปรุ่นเก่าทำงานในโหมดซูม 2208 x 1242 แต่เมื่อแอพสร้างขึ้นสำหรับโทรศัพท์รุ่นใหม่ความละเอียดที่มีคือSuper Retina HD 5.8 (iPhone X) 1125 x 2436 (458ppi) , Retina HD 5.5 ( iPhone 6, 7, 8 Plus ) 1242 x 2208และRetina HD 4.7 ( iPhone 6 ) 750 x 1334 สิ่งนี้ทำให้เกิดความสับสนที่กล่าวถึงในคำถาม ในการสร้างแอปที่ใช้ขนาดเต็มหน้าจอของโทรศัพท์ใหม่ให้เพิ่ม LaunchImages ในขนาด: 1125 x 2436, 1242 x 2208, 2208 x 1242 และ 750 x 1334

อัปเดตสำหรับ iPhones ใหม่ 11, 11 Pro, 11 Pro Max

ขนาดสำหรับiPhone 11 Pro Maxพร้อมการขยาย@ 3 x , พิกัดพื้นที่: 414 x 896จุดและ1242 x 2688พิกเซล, 458 ppi, ขนาดทางกายภาพของอุปกรณ์คือ 3.06 x 6.22 หรือ 77.8 x 158.0 มม. จอแสดงผล Super Retina XDR 6.5 "

ขนาดสำหรับiPhone 11 Pro ที่มีการปรับขนาด@ 3 xพิกัดพื้นที่375 x 812จุดและ1125 x 2436พิกเซล, 458 ppi, ขนาดทางกายภาพของอุปกรณ์คือ 2.81 x 5.67 หรือ 71.4 x 144.0 มม. จอแสดงผล Super Retina XDR 5.8 "

ขนาดสำหรับiPhone 11 ที่มีการปรับขนาด@ 2xพิกัดพื้นที่: 414 x 896จุดและ828 x 1792พิกเซล, 326 ppi, ขนาดทางกายภาพของอุปกรณ์คือ 2.98 x 5.94 หรือ 75.7 x 150.9 มม. 6.1 "Liquid Retina HD display

ขนาดสำหรับiPhone X🅂สูงสุดพร้อมการขยาย@ 3x (ชื่อ Apple: Super Retina HD 6.5 display " ) พิกัดพื้นที่: 414 x 896จุดและ1242 x 2688พิกเซล 458 ppi ขนาดทางกายภาพของอุปกรณ์คือ 3.05 x 6.20 หรือ 77.4 x 157.5 มิลลิเมตร

let screen = UIScreen.main
print("Screen bounds: \(screen.bounds), Screen resolution: \(screen.nativeBounds), scale: \(screen.scale)")
//iPhone X🅂 Max Screen bounds: (0.0, 0.0, 414.0, 896.0), Screen resolution: (0.0, 0.0, 1242.0, 2688.0), scale: 3.0

ขนาดสำหรับiPhone X🅁ที่มีการปรับ@ 2x (ชื่อของ Apple: จอแสดงผล Super Retina HD 6.1 " ), พื้นที่ประสานงาน: 414 x 896จุดและ828 x 1792พิกเซล, 326 ppi, ขนาดทางกายภาพของอุปกรณ์คือ 2.98 x 5.94 หรือ 75.7 x 150.9 มม. .

let screen = UIScreen.main
print("Screen bounds: \(screen.bounds), Screen resolution: \(screen.nativeBounds), scale: \(screen.scale)")
//iPhone X🅁 Screen bounds: (0.0, 0.0, 414.0, 896.0), Screen resolution: (0.0, 0.0, 828.0, 1792.0), scale: 2.0

ขนาดสำหรับiPhone X🅂และiPhone Xพร้อมมาตราส่วน@ 3x (ชื่อ Apple: จอแสดงผล Super Retina HD 5.8 " ) พิกัดพื้นที่: 375 x 812จุดและ1125 x 2436พิกเซล, 458 ppi ขนาดอุปกรณ์ทางกายภาพเท่ากับ 2.79 x 5.65 หรือ 70.9 x 143.6 มม.

let screen = UIScreen.main
print("Screen bounds: \(screen.bounds), Screen resolution: \(screen.nativeBounds), scale: \(screen.scale)")
//iPhone X🅂 and X Screen bounds: (0.0, 0.0, 375.0, 812.0), Screen resolution: (0.0, 0.0, 1125.0, 2436.0), scale: 3.0

ป้อนคำอธิบายรูปภาพที่นี่

ขนาดสำหรับiPhone 6, 6S, 7 และ 8 ที่มี@ 3x scaling (ชื่อ Apple: Retina HD 5.5 ), พิกัดพื้นที่: 414 x 736จุดและ1242 x 2208พิกเซล, 401 ppi, ขนาดหน้าจอ 2.7 x 4.8 นิ้วหรือ68 x 122 มม . เมื่อทำงานในโหมด Zoomed คือไม่มี LaunchImages ใหม่หรือเลือกในการตั้งค่าบน iPhone 6 Plus ขนาดดั้งเดิมคือ 2.88 และหน้าจอคือ 320 x 568 จุดซึ่งเป็นขนาดดั้งเดิมของ iPhone 5:

Screen bounds: {{0, 0}, {414, 736}}, Screen resolution: <UIScreen: 0x7f97fad330b0; bounds = {{0, 0}, {414, 736}};
mode = <UIScreenMode: 0x7f97fae1ce00; size = 1242.000000 x 2208.000000>>, scale: 3.000000, nativeScale: 3.000000

ขนาดสำหรับiPhone 6และiPhone 6S ที่มีการวัด @ 2x (ชื่อ Apple: Retina HD 4.7 ) พิกัดพื้นที่: 375 x 667จุดและ750 x 1334พิกเซล, 326 ppi ขนาดหน้าจอ 2.3 x 4.1 นิ้วหรือ58 x 104 มม . เมื่อทำงานในโหมด Zoomed คือไม่มี LaunchImages ใหม่หน้าจอคือ 320 x 568 จุดซึ่งเป็นขนาดดั้งเดิมของ iPhone 5:

Screen bounds: {{0, 0}, {375, 667}}, Screen resolution: <UIScreen: 0x7fa01b5182d0; bounds = {{0, 0}, {375, 667}};
mode = <UIScreenMode: 0x7fa01b711760; size = 750.000000 x 1334.000000>>, scale: 2.000000, nativeScale: 2.000000

และiPhone 5สำหรับการเปรียบเทียบคือ 640 x 1136, iPhone 4 640 x 960


นี่คือรหัสที่ฉันใช้ในการตรวจสอบนี้ (โปรดทราบว่า nativeScale ทำงานบน iOS 8 เท่านั้น):

UIScreen *mainScreen = [UIScreen mainScreen];
NSLog(@"Screen bounds: %@, Screen resolution: %@, scale: %f, nativeScale: %f",
          NSStringFromCGRect(mainScreen.bounds), mainScreen.coordinateSpace, mainScreen.scale, mainScreen.nativeScale);

หมายเหตุ: อัปโหลด LaunchImages มิฉะนั้นแอปจะทำงานในโหมดซูมและไม่แสดงขนาดที่ถูกต้องหรือขนาดหน้าจอ ในโหมดซูมnativeScaleและscaleจะไม่เหมือนกัน บนอุปกรณ์จริงสเกลสามารถเป็น 2.608 บน iPhone 6 Plus แม้ว่ามันจะไม่ได้ทำงานในโหมดซูม แต่มันจะแสดงสเกลของ 3.0 เมื่อทำงานบนเครื่องจำลอง

เปรียบเทียบ iPhone 6 และ 6 Plus


3
ฉันเดาว่าคุณไม่ได้เพิ่มเวอร์ชันภาพเปิดตัวใหม่ นั่นอาจเป็นสาเหตุที่แอพทำงานใน "โหมดความเข้ากันได้" และขอบเขตหน้าจอนั้นเก่า 320x576 บนอุปกรณ์ทั้งสอง
Daniel Rinser

3
ทันทีที่คุณเพิ่มขนาดรูปภาพเรียกใช้ใหม่คุณจะได้รับขนาดหน้าจอที่ถูกต้อง (ตรรกะ): 375x667 สำหรับ iPhone 6 และ 414x736 สำหรับ 6+
Daniel Rinser

1
@DanielRinser ขอบคุณสำหรับสิ่งนั้น ฉันจะลองดู
Sverrisson

@DanielRinser ขอบคุณสำหรับการป้อนข้อมูลของคุณในภาพเริ่มต้น ฉันได้อัปเดตคำตอบตามที่คุณป้อน
Sverrisson

และสิ่งที่เกี่ยวกับสินทรัพย์สำหรับ iPhone 4 ควรตั้งชื่อพวกเขาอย่างไรและจะวางลงในแคตตาล็อกสินทรัพย์ได้อย่างไรหากไม่มีช่องสำหรับพวกเขา แค็ตตาล็อกสินทรัพย์มี 3 ช่องสำหรับภาพ iPhone: 1x, 2x และ 3x หากเรามี 2x และ 3x สำหรับสินทรัพย์ iPhone 6 และ 6+ เราจะใส่สินทรัพย์ iPhone 4 ใน 1x หรือไม่ ฉันไม่คิดอย่างนั้น
เป็ด

96

ความละเอียดจริง / ทางกายภาพ iPhone 6 Plus คือ 1920x1080 แต่ใน Xcode คุณสร้างอินเทอร์เฟซของคุณสำหรับความละเอียด 2208x1242 (736x414 คะแนน) และบนอุปกรณ์จะถูกลดขนาดลงเป็น 1920x1080 พิกเซลโดยอัตโนมัติ

การอ้างอิงความละเอียด iPhone อย่างรวดเร็ว:

Device          Points    Pixels     Scale  Physical Pixels   PPI   Ratio   Size
iPhone XS Max   896x414   2688x1242  3x     2688x1242         458   19.5:9  6.5"
iPhone XR       896x414   1792x828   2x     1792x828          326   19.5:9  6.1"
iPhone X        812x375   2436x1125  3x     2436x1125         458   19.5:9  5.8"
iPhone 6 Plus   736x414   2208x1242  3x     1920x1080         401   16:9    5.5"
iPhone 6        667x375   1334x750   2x     1334x750          326   16:9    4.7"
iPhone 5        568x320   1136x640   2x     1136x640          326   16:9    4.0"
iPhone 4        480x320   960x640    2x     960x640           326   3:2     3.5"
iPhone 3GS      480x320   480x320    1x     480x320           163   3:2     3.5"

ความละเอียดของ iPhone


3
คำตอบที่สวยงามและเรียบง่าย ขอบคุณ Leszek
SJ Lim

46

คุณควรหยุดใช้อิมเมจเปิดตัวใน iOS 8 และใช้สตอรี่บอร์ดหรือ nib / xib

  • ในXcode 6เปิดFileเมนูและเลือกNewFile...iOS⟶ ⟶User InterfaceLaunch Screen

  • จากนั้นเปิดการตั้งค่าสำหรับโครงการของคุณโดยคลิกที่มัน

  • ในGeneralแท็บในส่วนที่เรียกว่าApp Icons and Launch Imagesตั้งค่าLaunch Screen Fileเป็นไฟล์ที่คุณเพิ่งสร้างขึ้น (สิ่งนี้จะตั้งค่าUILaunchStoryboardNameในinfo.plist)

โปรดทราบว่าเวลาที่ถูกจำลองจะแสดงหน้าจอสีดำดังนั้นคุณจำเป็นต้องทดสอบบนอุปกรณ์จริง

การเพิ่มไฟล์ xib ของหน้าจอเรียกใช้ลงในโครงการของคุณ:

การเพิ่มไฟล์ xib ของหน้าจอเรียกใช้ใหม่

การกำหนดค่าโครงการของคุณให้ใช้ไฟล์ xib ของหน้าจอเรียกใช้แทนแค็ตตาล็อกสินทรัพย์:

กำหนดค่าโครงการให้ใช้ Launch Screen xob


1
คำแนะนำเกือบสมบูรณ์แบบ แต่ควรเป็นไฟล์ -> ใหม่ -> ไฟล์ ... ฯลฯ ใช้เวลาสักครู่เพื่อค้นหาไฟล์ที่สอง :) ขอบคุณสำหรับความช่วยเหลือ!
จะ

คุณทำให้สิ่งเหล่านี้ดูดีได้อย่างไร เมื่อฉันพยายามที่จะวางภาพมันได้รับรางวัลมาก
badweasel

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

คุณยังคงต้องจัดเตรียมไฟล์ภาพหากคุณสนับสนุนอะไรก่อน iOS 8 เนื่องจากการเปิดตัว xibs นั้นไม่สามารถทำงานร่วมกันได้
Mark Bridges

24

บนอุปกรณ์ทางกายภาพขอบเขตหน้าจอหลักของ iPhone 6 พลัสเป็น2208x1242และ nativeBounds เป็น1920x1080 มีการปรับขนาดฮาร์ดแวร์ที่เกี่ยวข้องเพื่อปรับขนาดเป็นจอแสดงผลทางกายภาพ

ในการจำลองขอบเขตหน้าจอหลักของ iPhone 6 Plus และขอบเขตดั้งเดิมมีทั้ง 2208x1242

กล่าวอีกนัยหนึ่ง ... วิดีโอ, OpenGL และสิ่งอื่น ๆCALayersที่เกี่ยวข้องกับพิกเซลนั้นจะจัดการกับเฟรมบัฟเฟอร์จริงขนาด1920x1080บนอุปกรณ์ (หรือ2208x1242บนซิม) สิ่งต่าง ๆ ที่เกี่ยวข้องกับคะแนนUIKitจะได้รับการจัดการกับขอบเขต 2208x1242 (x3) และปรับขนาดตามความเหมาะสมบนอุปกรณ์

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

iOS 8 เพิ่ม API เพื่อUIScreen( nativeScaleและnativeBounds) เพื่อให้นักพัฒนาที่กำหนดความละเอียดของที่สอดคล้องกับCADisplayUIScreen


13

สำหรับคนอย่างฉันที่สงสัยว่าแอปรุ่นเก่าได้รับการปฏิบัติอย่างไรฉันได้ทำการทดสอบและคำนวณในเรื่องนี้เล็กน้อย

ต้องขอบคุณ @ hannes-sverrisson hint ทำให้ฉันเริ่มสมมติว่าแอปรุ่นเก่าได้รับการดูแลด้วยมุมมอง 320x568 ใน iPhone 6 และ iPhone 6 plus

การทดสอบทำด้วยพื้นหลังสีดำเรียบง่ายbg@2x.pngพร้อมเส้นขอบสีขาว พื้นหลังมีขนาด 640x1136 พิกเซลและเป็นสีดำโดยมีขอบสีขาวด้านในเท่ากับ 1 พิกเซล

ด้านล่างนี้เป็นภาพหน้าจอของเครื่องมือจำลอง:

บนหน้าจอ iPhone 6 เราจะเห็นระยะขอบ 1 พิกเซลที่ด้านบนและด้านล่างของขอบสีขาวและขอบ 2 พิกเซลบนหน้าจอ iPhone 6 plus สิ่งนี้ทำให้เรามีพื้นที่ใช้งาน 1242x2204 บน iPhone 6 plus แทน 1242x2208 และ 750x1332 บน iPhone 6 แทนที่จะเป็น 750x1334

เราสามารถสรุปได้ว่าพิกเซลที่ตายแล้วเหล่านั้นมีความหมายต่อสัดส่วนของ iPhone 5:

iPhone 5               640 / 1136 = 0.5634
iPhone 6 (used)        750 / 1332 = 0.5631
iPhone 6 (real)        750 / 1334 = 0.5622
iPhone 6 plus (used)  1242 / 2204 = 0.5635
iPhone 6 plus (real)  1242 / 2208 = 0.5625

ประการที่สองสิ่งสำคัญคือต้องรู้ว่า @ 2x ทรัพยากรจะถูกปรับขนาดไม่เพียง แต่ใน iPhone 6 plus (ซึ่งคาดว่าจะเป็นสินทรัพย์ @ 3x) แต่ใน iPhone 6 อาจเป็นเพราะการปรับขนาดทรัพยากรจะทำให้รูปแบบที่ไม่คาดคิดเกิดขึ้น เพื่อขยายมุมมอง

อย่างไรก็ตามการปรับขนาดนั้นไม่เท่ากับความกว้างและความสูง ฉันลองด้วยทรัพยากร 264x264 @ 2x จากผลลัพธ์ที่ได้ฉันต้องสมมติว่าการปรับสเกลเป็นสัดส่วนโดยตรงกับอัตราส่วนพิกเซล / คะแนน

Device         Width scale             Computed width   Screenshot width
iPhone 5        640 /  640 = 1.0                        264 px
iPhone 6        750 /  640 = 1.171875  309.375          309 px
iPhone 6 plus  1242 /  640 = 1.940625  512.325          512 px

Device         Height scale            Computed height  Screenshot height
iPhone 5       1136 / 1136 = 1.0                        264 px
iPhone 6       1332 / 1136 = 1.172535  309.549          310 px
iPhone 6 plus  2204 / 1136 = 1.940141  512.197          512 px

เป็นเรื่องสำคัญที่จะต้องทราบว่าการปรับขนาดของ iPhone 6 นั้นไม่เหมือนกันในด้านความกว้างและความสูง (309x310) สิ่งนี้มีแนวโน้มที่จะยืนยันทฤษฎีข้างต้นว่าการปรับขนาดไม่ใช่สัดส่วนในความกว้างและความสูง แต่ใช้อัตราส่วนพิกเซล / คะแนน

ฉันหวังว่านี่จะช่วยได้.


12

ลองใช้อินโฟกราฟิกนี้: http://www.paintcodeapp.com/news/iphone-6-screens-demystified

มันอธิบายความแตกต่างระหว่าง iPhone เก่า iPhone 6 และ iPhone 6 Plus คุณสามารถดูการเปรียบเทียบขนาดหน้าจอเป็นจุดพิกเซลที่แสดงผลและพิกเซลทางกายภาพ คุณจะพบคำตอบสำหรับคำถามของคุณที่นั่น:

iPhone 6 Plus - พร้อมจอแสดงผล Retina HD ตัวประกอบสเกลคือ 3 และภาพจะถูกปรับลดขนาดจาก 2208 × 1242 พิกเซลที่แสดงเป็น 1920 × 1080 พิกเซล

อัตราส่วนการลดอัตราการสุ่มคือ 1920/2208 = 1080/1242 = 20/23 ซึ่งหมายความว่าทุก 23 พิกเซลจากการเรนเดอร์ดั้งเดิมจะต้องถูกแมปกับ 20 ฟิสิคัลพิกเซล กล่าวคือภาพจะถูกลดขนาดลงเหลือประมาณ 87% ของขนาดดั้งเดิม

ปรับปรุง:

มีอินโฟกราฟิกรุ่นปรับปรุงที่กล่าวถึงข้างต้น มันมีข้อมูลรายละเอียดเพิ่มเติมเกี่ยวกับความแตกต่างของความละเอียดหน้าจอและครอบคลุมรุ่น iPhone ทั้งหมดจนถึงรวมถึงอุปกรณ์ 4 นิ้ว

http://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions


ดังนั้นแม้จะปิด anti-aliasing แล้วก็ยังไม่มี anti-aliasing ที่ไม่จำเป็นที่เกิดขึ้นในการลดขนาดหรือไม่
แซม

หากอินโฟกราฟิกส์นั้นรวมหน้าจอขนาด 4 นิ้วมันจะยอดเยี่ยมมาก
Rajesh

@Rajesh ฉันได้อัปเดตคำตอบของฉันตรวจสอบตอนนี้สำหรับข้อมูลเกี่ยวกับอุปกรณ์ 4 นิ้ว
Darrarski

4

แม้ว่าโดยทั่วไปแล้วฉันจะไม่ชอบน้ำเสียงของบล็อก Daring Fireball ของ John Gruber แต่iPhone Display Conjecture ขนาดใหญ่ของเขาก็คุ้มค่าที่จะอ่าน

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

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

ฉันผิดหวังเล็กน้อยที่พวกเขาไม่ได้ทำการแมปความละเอียดภายในกับความละเอียดหน้าจอจริง 1: 1 สำหรับรุ่นที่ใหญ่กว่า


เราคิดในจุด แต่น่าเสียดายที่เราต้องสร้างภาพเป็นพิกเซลบน Photoshop ... 😃
Duck

2
พิกเซลมีความสำคัญกับพวกเราหลายคนด้วยเหตุผลหลายประการ ในขณะที่ Apple ทำการรักษาความคิดของตัวเองในหัวข้อนี้พวกเขา begrudgingly เพิ่ม [UIScreen nativeBounds] ใน iOS8 ด้วยเหตุผลที่ดีมาก
ctpenrose

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