Biểu tượng ứng dụng Windows của tôi nên bao gồm kích thước biểu tượng nào?


236

Tôi có một ứng dụng Windows sẽ chạy trong Windows XP và mới hơn (ví dụ: Vista / 7). Theo Nguyên tắc giao diện người dùng Vista , các kích thước tiêu chuẩn là 16x16, 32x32, 48x48, 256x256 (kích thước tiêu chuẩn XP không bao gồm biểu tượng 256x256). Ngoài những kích thước đó, tôi còn có 96x96 và 128x128 (và có thể tạo thêm).

Tôi nên bao gồm những kích thước biểu tượng nào? Shell sẽ thực sự sử dụng các kích cỡ "không chuẩn" hay đơn giản là tôi sẽ làm hỏng ứng dụng của mình?


3
Trang web này là một tài liệu tham khảo tuyệt vời cho kích thước biểu tượng cho nhiều nền tảng: iconhandbook.co.uk/reference/chart
Mark Hatton

Câu trả lời:


303

Tôi đã dành một chút thời gian để kiểm tra chi tiết. Tôi đã tạo một biểu tượng có hình ảnh có kích thước 16, 24, 32, 40, 48, 64, 96, 128 và 256. Sau đó, tôi đã kiểm tra hình ảnh nào được hiển thị. Tất cả những điều này đã được thực hiện với 96dpi bình thường. Nếu sử dụng DPI lớn hơn, kích thước lớn hơn có thể được sử dụng (chỉ kiểm tra điều này một chút trong Windows 7). Kết quả:

Windows XP:

  • Lượt xem Explorer:
    • Chi tiết / Danh sách: 16
    • Biểu tượng: 32
    • Gạch / hình thu nhỏ: 48
  • Nhấp chuột phải-> Thuộc tính / chọn biểu tượng mới: 32
  • Khu vực khởi động nhanh: 16
  • Máy tính để bàn: 32

Windows 7:

  • Lượt xem Explorer:
    • Chi tiết / Danh sách / Ký hiệu nhỏ: 16
    • Tất cả các tùy chọn khác: 256 (thay đổi kích thước, nếu cần)
  • Nhấp chuột phải-> Thuộc tính / chọn biểu tượng mới: 32
  • Đã ghim vào thanh tác vụ: 32
    • Menu chuột phải: 16
  • Máy tính để bàn:
    • Ký hiệu nhỏ: 32
    • Ký hiệu trung bình: 48
    • Ký hiệu lớn: 256 (thay đổi kích thước, nếu cần)
    • Thu phóng bằng Ctrl + Bánh xe chuột: 16, 32, 48, 256

Thời gian chạy Windows: ( từ đây )

  • Gạch chính: 150x150, 310x150 (phiên bản rộng)
  • Logo nhỏ: 30x30
  • Huy hiệu (cho màn hình khóa): 24x24, đơn sắc
  • Màn hình giật gân: 620x300
  • Cửa hàng: 50x50

Vì vậy, kết quả: Windows XP sử dụng các biểu tượng kích thước 16, 32, 48, trong khi Windows 7 (và có lẽ cũng là Vista) cũng sử dụng các biểu tượng kích thước 256. Tất cả các kích thước biểu tượng trung gian khác đều bị bỏ qua (chúng có thể được sử dụng ở một số khu vực mà tôi không kiểm tra).


Tôi cũng đã kiểm tra trong Windows 7 điều gì xảy ra nếu thiếu kích thước biểu tượng:

Các kích thước còn thiếu được tạo ra (rõ ràng). Với các kích thước 16, 32 và 48, nếu thiếu một cái, việc thu nhỏ lại được ưu tiên. Vì vậy, nếu chúng ta có các biểu tượng với kích thước 16 và 48, biểu tượng 32 được tạo từ biểu tượng 48. Biểu tượng 256 chỉ được sử dụng cho những thứ này nếu không có kích thước nào khác! Vì vậy, nếu các biểu tượng có kích thước 16 và 256, các kích thước khác được nâng cấp từ biểu tượng 16!

Ngoài ra, nếu không có biểu tượng 256, biểu tượng 48 (có thể được tạo) sẽ được sử dụng, nhưng không được thay đổi kích thước nữa. Vì vậy, chúng tôi có một khu vực trống (có thể lớn) với biểu tượng 48 ở giữa.

Lưu ý rằng kích thước biểu tượng máy tính để bàn mặc định trong XP là 32x32, trong khi ở Windows 7 là 48x48. Do đó, đối với Windows 7, việc có biểu tượng 48 là tương đối quan trọng. Mặt khác, nó được nâng cấp từ một biểu tượng nhỏ hơn, trông có vẻ khá xấu xí.


Chỉ là một lưu ý về khả năng tương thích của Windows XP: Nếu bạn sử dụng lại biểu tượng làm biểu tượng cửa sổ, thì lưu ý rằng điều này có thể làm sập ứng dụng của bạn nếu bạn sử dụng biểu tượng 256 đã nén. Giải pháp là không nén biểu tượng hoặc tạo phiên bản thứ hai mà không có biểu tượng (đã nén) 256. Xem ở đây để biết thêm.


12
Chà, ở đây nó nói 64px cũng được yêu cầu, và trên các hướng dẫn biểu tượng chính thức, nó cũng cho biết 20px, 24px và 40px cũng được khuyến nghị. Biểu tượng 40px dường như được sử dụng trong tab alt + và balo, những biểu tượng khác dường như được sử dụng tùy thuộc vào DPI (ví dụ: 20px được sử dụng thay vì 16px trong màn hình DPI cao hơn, nếu không thì giảm xuống từ kích thước 32px lớn hơn, có thể trông thậm chí xấu hơn). Chưa được thử nghiệm.
Camilo Martin

2
Tôi đã làm thêm một số thử nghiệm. Để hiển thị trên máy tính để bàn, khi tôi đặt nó thành 144dpi ("150%") trên Windows 7, đối với biểu tượng nhỏ nhất có thể, nó đã sử dụng biểu tượng 24px (nếu có, nếu không thì tăng 16px). Từ hướng dẫn biểu tượng, có vẻ như có "Chế độ cổ điển" trên Vista cũng sử dụng biểu tượng 64px. Tuy nhiên, Windows 7 không sử dụng nó. Thay vào đó, chỉ có biểu tượng 256px được thay đổi kích thước.
Daniel Rose

Thú vị, cảm ơn cho những phát hiện. Trong mọi trường hợp, tôi không biết có bao nhiêu ứng dụng trong tự nhiên có nhiều hơn 16, 32, 48 và (hy vọng) 256 biểu tượng px. Tôi đoán rất ít. Nhưng có lẽ người dùng sẽ chú ý, bởi vì một biểu tượng giữa phần còn lại rõ nét hơn.
Camilo Martin

@Camilo Lưu ý rằng có thể thay đổi kích thước bằng CTRL + Mousewheel và tất cả các kích thước "ở giữa" đều được tăng / giảm. Tuy nhiên, điều chắc chắn được chú ý là nếu thiếu biểu tượng 48px, vì đó là kích thước được sử dụng trong màn hình nền Windows 7 mặc định.
Daniel Rose

3
Và nó thiếu một nửa thời gian nếu ứng dụng là một tiện ích và phần mềm không phổ biến, hoặc cũ ... Ngay cả một số biểu tượng của Visual Studio (dành cho kiểu tệp) thậm chí không có phiên bản 48px.
Camilo Martin

28

Sau một số thử nghiệm với một biểu tượng với 8, 16, 20, 24, 32, 40, 48, 64, 96, 128 và 256 pixel (256 in PNG) trong Windows 7:

  • Ở độ phân giải 100%: Explorer sử dụng 16, 40, 48 và 256. Windows Photo Viewer sử dụng 96. Paint sử dụng 256.
  • Ở độ phân giải 125%: Explorer sử dụng 20, 40 và 256. Windows Photo Viewer sử dụng 96. Paint sử dụng 256.
  • Ở độ phân giải 150%: Explorer sử dụng 24, 48 và 256. Windows Photo Viewer sử dụng 96. Paint sử dụng 256.
  • Ở độ phân giải 200%: Explorer sử dụng 40, 64, 96 và 256. Windows Photo Viewer sử dụng 128. Paint sử dụng 256.

Vì vậy, 8, 32 không bao giờ được sử dụng (đối với tôi là 32) và 128 chỉ bởi Windows Photo Viewer với màn hình dpi rất cao, tức là không bao giờ sử dụng.

Điều đó có nghĩa là biểu tượng của bạn ít nhất phải cung cấp 16, 48 và 256 cho Windows 7. Để hỗ trợ các màn hình mới hơn với độ phân giải cao, bạn nên cung cấp 16, 20, 24, 40, 48, 64, 96 và 256. Đối với Windows 7, tất cả hình ảnh có thể được nén bằng PNG nhưng để tương thích ngược với Windows XP, không nên nén 16 đến 48.


Xem câu trả lời của tôi ở đây ( stackoverflow.com/questions/12385143/, ) nhưng nếu bạn nén hình ảnh 256x256 trong tệp .ico ... Các hệ thống Windows XP sẽ gặp sự cố khi mở tệp. Bạn sẽ nhận được FileFormatException với HRESULT 0x88982F07.
cplotts

Cũng đáng để đề cập đến những phiên bản DPI cao đó cần được lưu ở chế độ 24bpp, tôi đã cố lưu trữ chúng ở chế độ màu 8 bit và Windows 7 đã sử dụng phiên bản 256px thay vì 20x20px ở 125% DPI.
Bartosz Wójcik

2
Điều này là đơn giản, nhưng đầy đủ. Rất quan trọng để đưa DPI vào xem xét.
caesay

24

Các Microsoft UX biểu tượng hướng dẫn nói:

"Các biểu tượng ứng dụng và các mục Bảng điều khiển: Toàn bộ bao gồm 16x16, 32x32, 48x48 và 256x256 (tỷ lệ mã từ 32 đến 256)."

Đối với tôi điều này ngụ ý (nhưng không nói rõ, thật không may) rằng bạn nên cung cấp 4 kích thước đó.

Các chi tiết bổ sung liên quan đến các định dạng màu mà bạn cũng có thể thấy hữu ích:

  • "Các tệp biểu tượng cũng yêu cầu phiên bản bảng màu 8 bit và 4 bit, để hỗ trợ cài đặt mặc định trong máy tính để bàn từ xa."

  • "Chỉ nên bao gồm một bản sao 32 bit của hình ảnh pixel 256x256 và chỉ nên nén hình ảnh pixel 256x256 [dưới dạng PNG] để giảm kích thước tệp."



12

Trong trường hợp Windows 10, điều này không chính xác, thực tế không có câu trả lời nào về stackoverflow, tôi đã phát hiện ra điều này khi tôi cố gắng sử dụng pixel art làm biểu tượng và nó đã được điều chỉnh lại khi không cần thiết (thật dễ dàng để xem trong trường hợp này là nguyên nhân của việc nội suy và làm mịn các cửa sổ) ngay cả tôi cũng đã sử dụng các kích thước từ bài đăng này.

Vì vậy, tôi đã tạo một ứng dụng và thực hiện công việc trên tất cả các cài đặt DPI, xem tại đây:
Windows 10 tất cả các độ phân giải biểu tượng trên tất cả các cài đặt DPI
Bạn cũng có thể sử dụng ứng dụng của tôi để tạo biểu tượng, cũng như nội suy lân cận gần nhất với chức năng làm mịn, không được thực hiện với bất kỳ biên tập viên xấu nào tôi đã thấy.

Nếu bạn chỉ muốn các độ phân giải:
16, 20, 24, 28, 30, 31, 32, 40, 42, 47, 48, 56, 60, 63, 84, 256
và bạn nên sử dụng tất cả các biểu tượng PNG và bất cứ thứ gì bạn đặt vào bên cạnh những thứ này nó sẽ không được hiển thị. Xem bài viết của tôi tại sao.


7

Không phải 96x96, sử dụng 64x64 thay thế. Tôi thường sử dụng:

  • 16 - nút trạng thái / thanh tiêu đề
  • 32 - biểu tượng máy tính để bàn
  • 48 - xem thư mục
  • 64/128 - Kích thước bổ sung

256 hoạt động tốt trên XP, tuy nhiên, trình biên dịch tài nguyên cũ đôi khi phàn nàn về lỗi "hết bộ nhớ".


Tôi đã thấy bạn đã xử lý Java trước đây. Làm thế nào tôi có thể thực hiện hành vi như vậy với Java? Vấn đề là biểu tượng hiển thị trong thanh tác vụ hệ thống lớn hơn nhiều so với biểu tượng trong thanh tiêu đề và chúng không thể được định cỡ lại đúng cách bởi hệ thống. Việc tôi có thể làm nhiều nhất là stage.getIcons (). Add (image); nhưng nó sẽ không cho phép tôi chỉ định kích thước và vị trí của nó, ví dụ như thanh tác vụ, chế độ xem thư mục hoặc bất kỳ kích thước nào khác. Tôi đang sử dụng JavaFX 8
homerun

1
@someFolk java biên dịch thành các tệp "lớp" hoặc tệp "jar" (là tệp zip của tệp lớp + tệp kê khai). Nói cách khác, nó không biên dịch thành PE (windows thực thi). Tuy nhiên, có những công cụ xây dựng trình bao bọc cho bạn - về cơ bản là các chương trình nhỏ chứa jar dưới dạng tài nguyên (được trích xuất và chạy khi chương trình được chạy). Câu trả lời ở đây đề cập đến một vài trong số đó Điều này có nghĩa là vấn đề của bạn phụ thuộc vào chương trình bạn sử dụng. Tuy nhiên, có các công cụ để chỉnh sửa tài nguyên (ví dụ: Resource Hacker )
Christian

2

Từ khuyến nghị MSDN của Microsoft :

Biểu tượng ứng dụng và các mục Bảng điều khiển : Toàn bộ bao gồm 16x16, 32x32, 48x48 và 256x256 (tỷ lệ mã từ 32 đến 256). Định dạng tệp .ico là bắt buộc. Đối với Chế độ cổ điển, toàn bộ là 16x16, 24x24, 32x32, 48x48 và 64x64.

Vì vậy, chúng tôi đã có kích thước tiêu chuẩn được đề nghị của:

  • 16 x 16,
  • 24 x 24,
  • 32 x 32,
  • 48 x 48,
  • 64 x 64,
  • 256 x 256.

Nếu chúng tôi muốn hỗ trợ cài đặt DPI cao, danh sách đầy đủ cũng sẽ bao gồm các kích thước sau:

  • 20 x 20,
  • 30 x 30,
  • 36 x 36,
  • 40 x 40,
  • 60 x 60,
  • 72 x 72,
  • 80 x 80,
  • 96 x 96,
  • 128 x 128,
  • 320 x 320,
  • 384 x 384,
  • 512 x 512.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.