Windows 10 ความละเอียดไอคอนทั้งหมดในการตั้งค่า DPI ทั้งหมด รูปแบบ? ศิลปะพิกเซลเป็นไอคอน? ไอคอนขนาดใหญ่ในไทล์ขนาดกลางของเมนูเริ่ม?

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

เป็นเวลานานแล้วที่ฉันใช้ไฟล์ ico png ที่บรรจุ 256px ico สำหรับโปรเจ็กต์ Visual Studio ของฉัน และมันทำงานได้ดี ทำให้การปรับขนาดทำงานได้ดีบนไอคอนเหล่านั้น และพวกเขาแทบไม่มีพื้นที่ว่างเลย และก่อนหน้านี้ฉันก็ไม่ได้สนใจอะไรมากขนาดนั้น

แต่ตอนนี้ฉันมีไอคอนที่ต้อง "รักษาขอบแข็ง" ไว้ มันคือ "ศิลปะพิกเซล" หากฉันสร้างด้วยเวอร์ชัน 256px จะลดขนาดลงอย่างมาก หรือหากฉันสร้างด้วยการเพิ่มขนาด 16px จะน้อยลงเล็กน้อยแต่ยังไม่ดีพอ ดังนั้นคำถามของฉันคือ:

  1. ฉันต้องสร้างขนาดเท่าใดเพื่อรวมเข้ากับ ico (ฉันไม่สนใจไอคอน pre win7)

  2. หากฉันได้รับรายการนั้น ฉันจะต้องสร้างเวอร์ชัน 1.25x, 1.5x และ 2.0x สำหรับการตั้งค่า dpi สูงหรือไม่

  3. ในที่สุด แอพบางตัวเช่น Firefox มีไอคอนขนาดใหญ่บนเมนูเริ่มภายในบล็อกสี่เหลี่ยมขนาดกลาง แอพของฉันมีอันเล็กกว่าอยู่ตรงกลางเหมือนที่ Visual Studio ทำ ฉันจะวางไอคอนขนาดใหญ่ในเมนูเริ่มสี่เหลี่ยมขนาดกลางได้อย่างไร

ฉันพบมัน: น่าเสียดายที่ VS พูดว่า: VisualElements ไม่ได้รับการสนับสนุนในโครงการ Windows Presentation Foundation (WPF) มีวิธีแก้ไขปัญหานี้หรือไม่?

ฉันมองไปรอบๆ และรวบรวมขนาดที่เป็นไปได้ @1x(96DPI):
16, 20, 24, 30, 32, 40, 48, 50, 64, 128, 150, 256, 512, 768
ส่วนใหญ่ฉันรวบรวมสิ่งเหล่านี้จาก ไอคอนใด ไอคอนแอปพลิเคชัน Windows ของฉันควรมีขนาดเท่าใด

ก็ไม่ได้แย่ขนาดนั้น แต่ถ้าฉันบวก 1.25x, 1.5x, 2.0x เราจะได้:
16, 20, 24, 25, 30, 32, 36, 38, 40, 45, 48, 50, 60, 62, 64, 72, 75, 80, 96, 100, 128, 150, 160, 188, 192, 225, 256, 300, 320, 384, 512, 640, 768, 960, 1024, 1152, 1536< /em> ในกรณีของฉัน มันสร้างไฟล์ ico ขนาด 500,000 ไฟล์ และเนื่องจากดูเหมือนว่า 1,024 จะเป็นความละเอียดสูงสุดที่คุณสามารถใส่ลงในไฟล์ ico ได้ ไอคอนของฉันเป็นแบบพิกเซล ดังนั้นจึงบีบอัดได้ดีกับ png และยังคงอยู่ที่ ~500k

ฉันยังสร้าง ico ด้วยความละเอียดข้างต้นทั้งหมดในรูปแบบ rgba และทุกอันมีขนาดของมัน ดังนั้นคุณจึงสามารถดูว่าหน้าต่างใดโหลดด้วยการตั้งค่า dpi ใด คุณสามารถดาวน์โหลดได้จาก ที่นี่ และใช้ในโครงการ vs เพื่อทดสอบ

ตามที่ฉันเข้าใจทุกอย่างที่มีขนาดต่ำกว่า 256px ไม่สามารถบีบอัด png ได้ใช่ไหม

และฉันต้องมีขนาดทั้งหมดเหล่านี้เพื่อรักษาไอคอนพิกเซลที่สมบูรณ์แบบไว้หรือไม่ png 32 บิต (RGBA) เท่านั้นใช่ไหม ฉันหวังว่าฉันไม่จำเป็นต้องรวมความลึกอื่น ๆ

หลังจากที่ฉันเขียนตัวเขียน ico จากสเป็ค ฉันก็รู้ว่า png สามารถมี 0 สำหรับความละเอียดได้ เพราะ 1 ไบต์นั้นใช้ได้กับ x หรือ y (แต่ฉันไม่เคยเห็น ico ที่ไม่ใช่สี่เหลี่ยมจัตุรัส บางที Curs อาจไม่ใช่สี่เหลี่ยมจัตุรัส) ในนี้ case น่าจะเป็นไฟล์แรกในไฟล์ที่มีศูนย์สำหรับการแก้ปัญหาที่จะใช้...ไม่แน่ใจแต่ผมคิดว่าไม่ไกลจากความจริงนัก ดูภาพ ปัญหาการปรับขนาดยังคงทำให้ฉันสับสน ถ้าพรุ่งนี้ฉันมีเวลา ฉันจะทดสอบดู ดูเหมือนว่าไอคอนพิกเซลที่สมบูรณ์แบบจะเป็นไปไม่ได้: การมีรูปภาพเดียวที่จะปรับขนาดเป็นขนาดใดก็ตามที่สูงกว่า 256px


person z4k    schedule 22.11.2016    source แหล่งที่มา
comment
เป็นเรื่องดีที่คุณใช้ความพยายามกับคำถามของคุณ แต่โปรดทราบว่าการแก้ไขมากเกินไปมักจะทำให้คำถามกลับมาที่หน้าแรก ซึ่งจะแทนที่คำถามอื่นๆ ซึ่งอาจขัดขวางไม่ให้พวกเขาได้รับความสนใจที่พวกเขาสมควรได้รับ การให้รางวัลเพื่อดึงดูดความสนใจให้กับคำถามของคุณมากขึ้นคือสิ่งที่ถูกต้อง ดังนั้น ใช้แนวทางนั้นในอนาคต   -  person Bhargav Rao    schedule 29.11.2016
comment
ฉันรู้แต่ฉันไม่มีชื่อเสียง ขอโทษด้วย ฉันตอบคำถามแล้ว ขอบคุณสำหรับคำแนะนำ.   -  person z4k    schedule 29.11.2016


คำตอบ (2)


คำตอบ:

PNG เป็นที่ยอมรับภายใต้ไฟล์ ICO ที่มีขนาดต่ำกว่า 256px ได้หรือไม่
Microsoft ระบุว่าขนาดที่ต่ำกว่า 256px ควรเป็น BMP ที่ไม่มี 14 ไบต์แรก
แต่อย่างน้อยในกรณีของ windows 10 คำตอบคือใช่

คุณสามารถเพิ่มรูปภาพที่มีขนาดใหญ่กว่า 1024px ลงใน ICO ได้หรือไม่
ได้ ตราบใดที่เป็น PNG ก็สามารถใหญ่ได้เท่าที่คุณต้องการ
หมายเหตุข้อจำกัด "หนึ่งไอคอนเกิน 255px":
คุณสามารถเพิ่มรูปภาพที่มีขนาดใหญ่กว่า 255px ได้เพียงหนึ่งภาพเท่านั้น (คุณสามารถเพิ่มได้ แต่ windows จะเพิ่มได้เท่านั้น อ่านบล็อกภาพแรกในหัว ICO โดยที่ความละเอียดคือ 0,0) รูปแบบระบุ 1 ไบต์สำหรับแต่ละมิติ ดูตารางที่ 2

ขนาดใดที่ควรรวมสำหรับการตั้งค่า DPI ทั้งหมด
Windows 10 ใช้ขนาดไอคอนต่อไปนี้ (ดูตารางด้านล่าง):
16, 20, 24, 28, 30, 31, 32, 40, 42, 47, 48, 56, 60, 63, 84 และมีขนาดใหญ่กว่า 255px หนึ่งรายการ

โปรดทราบว่าแอป Windows RT ไม่ได้ใช้ไฟล์ ICO แต่ใช้ PNG หรือแบบอักษร ซึ่งมาจากแหล่งที่มาของ Firefox:

<Application xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
    <VisualElements
      ShowNameOnSquare150x150Logo='on'
      Square150x150Logo='browser\VisualElements\VisualElements_150.png'
      Square70x70Logo='browser\VisualElements\VisualElements_70.png'
      ForegroundText='light'
      BackgroundColor='#0996f8'/>
</Application>

แล้ว Firefox มีไอคอนขนาดใหญ่บนเมนูเริ่มในไทล์สื่อได้อย่างไร
รวมไฟล์ด้านบนนี้ไว้ในไดเร็กทอรี exe ก่อนที่จะเพิ่มทางลัดไปยังเมนูเริ่ม บทความนี้จะอธิบายวิธีการ แอปของฉันมีตัวอย่าง
ผลลัพธ์

หากคุณสร้างไอคอนสำหรับ Windows 10 คุณควรใช้เครื่องมือและ Photoshop ของฉัน (หรืออะไรทำนองนั้น) จะดีกว่าสิ่งอื่นใด ฉันลองใช้โปรแกรมแก้ไขแล้วและมันก็แย่มาก

win10iconTools โดยฉัน

คุณสามารถสร้างไฟล์ ICO (ตามคำแนะนำของ MS หรือไม่ก็ได้) หรือสร้างไอคอนที่มีความละเอียดพิมพ์อยู่ ซึ่งอย่างหลังคือสิ่งที่ฉันใช้สร้างตาราง
รองรับโหมดการปรับขนาดหลายโหมด รวมถึงเพื่อนบ้านที่ใกล้ที่สุด หากคุณต้องการ คุณสามารถใช้มันบน Windows เวอร์ชันอื่นได้ โดยใช้งานได้กับ .net2 ทดสอบหน้าต่างอื่น ส่งผลการทดสอบมาให้ฉัน และฉันขยายตารางเพื่อประโยชน์ของมนุษยชาติ

สำหรับภาพพิกเซลในไอคอนนั้นเป็นไปไม่ได้ที่จะสมบูรณ์แบบ :( เว้นแต่เราจะสามารถเปลี่ยนอัลกอริธึมการปรับขนาดใน windows 10 ได้ ดังนั้นช่วงกว้าง 84-256 จึงได้รับการปรับขนาดเป็น "0" (ดูด้านบน) ดังนั้นจึงไม่มี จุดจริงเพิ่มบางสิ่งที่ใหญ่กว่านั้น 256 ตามที่ฉันเห็นตอนนี้คุณควรสร้างรูปภาพ 256px สำหรับ "0" (ดูสาเหตุในตาราง)

หาก Windows ได้รับไอคอนทั้งหมด 16 ถึง 255 + 1 ที่ใหญ่กว่า 255 (0 ในตาราง) เลือกขนาดเหล่านี้: (ไม่มีตารางมาร์กดาวน์ที่นี่ มันกว้างมาก ตารางก็อยู่ในแอป readme ด้วย)

|                                           |                 Windows 10                | 
|                                           |   96DPI  |  120DPI  |  144DPI  |  168DPI  | 
| icon                                      |disp.|load|disp.|load|disp.|load|disp.|load| 
|-------------------------------------------|-----|----|-----|----|-----|----|-----|----| 
| alt-tab                                   | 24  | 32 | 30  | 32 | 36  | 32 | 42  | 32 | 
| desktop large                             | 96  | 0  | 120 | 0  | 144 | 0  | 168 | 0  | 
| desktop medium                            | 48  | 48 | 60  | 60 | 72  | 72 | 84  | 84 | 
| desktop small                             | 32  | 32 | 40  | 40 | 48  | 48 | 56  | 56 | 
| explorer content, inc0                    | 32  | 32 | 40  | 40 | 48  | 48 | 56  | 56 | 
| explorer extra large                      | 256 | 0  | 256 | 0  | 256 | 0  | 256 | 0  | 
| explorer large                            | 96  | 0  | 120 | 0  | 144 | 0  | 168 | 0  | 
| explorer medium                           | 48  | 48 | 60  | 60 | 72  | 72 | 84  | 84 | 
| explorer small:inc4,list:inc3,details:inc2| 16  | 16 | 20  | 20 | 24  | 24 | 28  | 28 | 
| explorer tiles, inc1                      | 48  | 48 | 60  | 60 | 72  | 72 | 84  | 84 | 
| startmenu medium                          | 32  | 32 | 40  | 40 | 48  | 48 | 56  | 63 | 
| startmenu programs                        | 24  | 24 | 30  | 30 | 36  | 36 | 42  | 42 | 
| startmenu search                          | 32  | 60 | 40  | 60 | 48  | 60 | 56  | 0  | 
| startmenu tile small                      | 24  | 24 | 30  | 31 | 36  | 39 | 42  | 47 | 
| taskbar normal                            | 24  | 32 | 30  | 40 | 36  | 48 | 42  | 56 | 
| taskbar small                             | 16  | 16 | 20  | 20 | 24  | 24 | 28  | 28 | 
| window icon                               | 16  | 16 | 20  | 16 | 24  | 16 | 28  | 16 | 
| desktop inc0                              | 16  | 16 | 20  | 20 | 24  | 24 | 28  | 28 | 
| desktop inc1                              | 18  | 32 | 23  | 40 | 27  | 48 | 32  | 56 | 
| desktop inc2                              | 20  | 30 | 25  | 40 | 30  | 48 | 35  | 56 | 
| desktop inc3                              | 22  | 32 | 28  | 40 | 33  | 48 | 39  | 56 | 
| desktop inc4                              | 24  | 32 | 30  | 40 | 36  | 48 | 42  | 56 | 
| desktop inc5                              | 27  | 32 | 34  | 40 | 41  | 48 | 47  | 56 | 
| desktop inc6                              | 30  | 32 | 38  | 40 | 45  | 48 | 53  | 56 | 
| desktop inc7                              | 33  | 48 | 41  | 60 | 50  | 72 | 58  | 84 | 
| desktop inc8                              | 37  | 48 | 46  | 60 | 56  | 72 | 65  | 84 | 
| desktop inc9                              | 41  | 48 | 51  | 60 | 62  | 72 | 72  | 84 | 
| desktop inc10                             | 46  | 48 | 58  | 60 | 69  | 72 | 82  | 84 | 
| desktop inc11                             | 51  | 0  | 64  | 0  | 77  | 0  | 89  | 0  | 
| desktop inc12                             | 57  | 0  | 71  | 0  | 86  | 0  | 100 | 0  | 
| desktop inc13                             | 63  | 0  | 79  | 0  | 95  | 0  | 110 | 0  | 
| desktop inc14                             | 70  | 0  | 88  | 0  | 105 | 0  | 123 | 0  | 
| desktop inc15                             | 78  | 0  | 98  | 0  | 117 | 0  | 137 | 0  | 
| desktop inc16                             | 87  | 0  | 109 | 0  | 131 | 0  | 152 | 0  | 
| desktop inc17                             | 97  | 0  | 121 | 0  | 146 | 0  | 170 | 0  | 
| desktop inc18                             | 108 | 0  | 135 | 0  | 162 | 0  | 189 | 0  | 
| desktop inc19                             | 120 | 0  | 150 | 0  | 180 | 0  | 210 | 0  | 
| desktop inc20                             | 133 | 0  | 166 | 0  | 200 | 0  | 233 | 0  | 
| desktop inc21                             | 148 | 0  | 185 | 0  | 222 | 0  | 256 | 0  | 
| desktop inc22                             | 164 | 0  | 205 | 0  | 246 | 0  | 256 | 0  | 
| desktop inc23                             | 182 | 0  | 228 | 0  | 256 | 0  | 256 | 0  | 
| desktop inc24                             | 202 | 0  | 253 | 0  | 256 | 0  | 256 | 0  | 
| desktop inc25                             | 224 | 0  | 256 | 0  | 256 | 0  | 256 | 0  | 
| desktop inc26                             | 249 | 0  | 256 | 0  | 256 | 0  | 256 | 0  | 
| explorer inc5                             | 18  | 32 | 23  |    |     |    |     |    | 
| explorer inc6                             | 20  | 32 | 25  |    |     |    |     |    | 
| explorer inc7                             | 22  | 32 | 28  |    |     |    |     |    | 
| explorer inc8                             | 23  | 32 | 29  |    |     |    |     |    | 
| explorer inc9                             | 25  | 32 | 31  |    |     |    |     |    | 
| explorer inc10                            | 27  | 32 | 34  |    |     |    |     |    | 
| explorer inc11                            | 29  | 32 | 36  |    |     |    |     |    | 
| explorer inc12                            | 31  | 32 | 39  |    |     |    |     |    | 
| explorer inc13                            | 33  | 48 | 41  |    |     |    |     |    | 
| explorer inc14                            | 35  | 48 | 44  |    |     |    |     |    | 
| explorer inc15                            | 38  | 48 | 48  |    |     |    |     |    | 
| explorer inc16                            | 41  | 48 | 51  |    |     |    |     |    | 
| explorer inc17                            | 44  | 48 | 55  |    |     |    |     |    | 
| explorer inc18                            | 47  | 48 | 59  |    |     |    |     |    | 
| explorer inc19                            | 50  | 0  | 63  |    |     |    |     |    | 
| explorer inc20                            | 54  | 0  | 68  |    |     |    |     |    | 
| explorer inc44                            | 239 | 0  | 256 | 0  |     |    |     |    | 
| explorer inc45                            | 256 | 0  | 256 | 0  |     |    |     |    | 

มีการซูมเพิ่มขึ้น 27 ระดับบนเดสก์ท็อป
และ 45 ระดับการซูมบน explorer (รวมถึงค่าเริ่มต้นจากเมนูที่ "ระดับล่างสุด")

ข้อกำหนดรูปแบบไอคอน:

|**block**  |**offset** |**offset** |**length** |**description**                |
|-----------|-----------|-----------|-----------|-------------------------------|
|main header|   0       |           |   2       |Reserved=0                     |
|           |   2       |           |   2       |Image type: 1(.ICO) 2(.CUR)    |
|           |   4       |           |   2       |Number of images in container  |
|image head1|   6       |   0       |   1       |Pixel width                    |
|           |   7       |   1       |   1       |Pixel height                   |
|           |   8       |   2       |   1       |Color palette size or 0        |
|           |   9       |   3       |   1       |Reserved=0                     |
|           |   A       |   4       |   2       |Color planes=0 or 1            |
|           |   C       |   6       |   2       |Bits per Pixel                 |
|           |   E       |   8       |   4       |Image raw size                 |
|           |   12      |   C       |   4       |Offset of imageblock from BOF  |
|image head2|   16      |   0       |   1       |Pixel width                    |
|   ...     |   ...     |   ...     |   ...     |...                            |
|imageblock1|   ...     |   ...     |   ...     |all image data goes here:      |
|           |   ...     |   ...     |   ...     |   pngs included in whole      |
|           |   ...     |   ...     |   ...     |   bmps missing first 14 bytes |
person z4k    schedule 28.11.2016
comment
ลิงก์ไปยังเครื่องมือของคุณใช้งานไม่ได้ ทำไมไม่เพิ่มมันลงใน GitHub แล้วแชร์ล่ะ? ขอบคุณ! - person kdaveid; 17.04.2017
comment
คุณไม่ได้อธิบายวิธีการใช้เครื่องมือของคุณทุกที่ - person NateS; 01.06.2020
comment
ขออภัย คุณหมายถึง 64 ใช่ไหม? โพสต์ของคุณมี 84 ซึ่งไม่ได้กล่าวถึงในที่อื่น แต่ไม่ได้กล่าวถึง 64 ซึ่งดูเหมือนว่าจะเป็นหนึ่งในขนาดเริ่มต้น - person user4551; 25.08.2020

ไอคอนที่คุณเห็นใน Windows 10 จะรวมอยู่ในแบบอักษรของไอคอนชื่อ Segoe MDL2 Assets และแอป UWP ในตัวทั้งหมด เช่น Groove Music กำลังใช้แบบอักษรนี้สำหรับไอคอน แอพบางตัวใน Windows store ก็ใช้งานเช่นกัน

person RaminMT    schedule 22.11.2016
comment
Firefox (ไม่ใช่แอปสากล) มีไอคอนขนาดใหญ่ในเมนูเริ่มและมีสีต่างๆ - person z4k; 23.11.2016
comment
ที่รัก ฉันไม่ได้พูดอะไรเกี่ยวกับเรื่องนั้นเลย ฉันรู้ว่ามันไม่ใช่ แอพ Windows ไม่มี API ใด ๆ สำหรับไทล์ แต่สามารถกำหนดไอคอนสำหรับทางลัดบนเดสก์ท็อปและแถบงานได้ ดังนั้น Windows จึงใช้สำหรับไทล์เมนูเริ่ม - person RaminMT; 23.11.2016
comment
ฉันยังตรวจสอบไทล์สื่อ Firefox สองครั้งบนเมนู Start ไอคอนมีขนาดเล็กกว่าไทล์เล็ก (อาจจะสำหรับฉัน)! - person RaminMT; 23.11.2016
comment
ดูรูปในกระทู้ครับ ช่วยบอกวิธีด้วย - person z4k; 23.11.2016
comment
เห็นความแตกต่างของสีบนภาพของฉันหรือไม่? ฉันดูเหมือนว่าไอคอน Firefox จะมีพื้นหลังเช่นกัน - person z4k; 23.11.2016
comment
ดูส่วนที่ฉันเพิ่มเกี่ยวกับ firefox เนื่องจากดูเหมือนว่า VS จะไม่ทำกับโครงการ WPF :( - person z4k; 23.11.2016