01/10/2018, 17:44

Các anh chị giúp em định hướng cách làm của bài này với ạ

Khi sử dụng các chương trình xem đa phương tiện như film, ảnh, v.v… một yêu cầu rất phổ biến là thay đổi kích thước của ảnh cho đầy màn hình. Do hình ảnh thường có nhiều kích cỡ khác nhau nên khi hiển thị muốn đầy màn hình chúng ta phải thay đổi kích thước này. Tuy nhiên, việc thay đổi kích thước phải đảm bảo không làm sai lệch tỷ lệ của ảnh, nếu không hình ảnh sẽ bị biến dạng rất xấu xí. Hãy viết chương trình tính toán kích thước của ảnh sau khi thay đổi mà vẫn giữ được tỷ lệ.

Nguyễn Đình Anh viết 19:52 ngày 01/10/2018

Mình nghĩ là thế này:
B1: Tính ra chênh lệnh giữa màn hình và hình ảnh ban đầu.
B2: Xem khoảng cách chiều dài hay khoảng cách chiều cao cái nào bé hơn thì tăng cả chiều dài với chiều cao bằng cái đó.

Trương Tấn Phát viết 19:50 ngày 01/10/2018

Khá đơn giản thôi.
Ở trị số nào mà một trong 2 chiều (rộng hoặc dài) bằng với chiều tương đương của màn hình, chiều còn lại không vượt quá chiều màn hình.
Nói nghe rối nhỉ.
Đơn giản: hãy lấy tỉ lệ giữa 2 chiều của màn hình và hình, tỉ lệ nào bé hơn thì nó chính là tỉ lệ để thu phóng ảnh theo yêu cầu.

Trần Hoàn viết 19:56 ngày 01/10/2018

Hoặc một cách đơn giản về mặt lập trình:

  1. Phóng ảnh cho chiều cao bằng chiều cao màn hình
  2. Nếu chiều ngang lớn hơn chiều ngang màn hình, thu ảnh lại để chiều ngang bằng chiều ngang màn hình.
kethanbi viết 19:57 ngày 01/10/2018

“Tuy nhiên, việc thay đổi kích thước phải đảm bảo không làm sai lệch tỷ lệ của ảnh, nếu không hình ảnh sẽ bị biến dạng rất xấu xí” full thì đc chứ làm sao đảm bảo tỉ lệ đc nhỉ. Nhiều màn hình nhiều tỉ lệ khác nhau nhé

Trương Tấn Phát viết 19:57 ngày 01/10/2018

Bởi thế mà chỉ chọn tỉ lệ nhỏ hơn làm tỉ lệ thu phóng cho cả 2 cạnh.

Bài liên quan
0